Mysql数据库迁移AWS RDS错误

因原数据库使用了 Mysql Trigger, 在导入原 SQL 时建立 Trigger 需要 root 权限,在 AWS 中是不支持的。

解决方法:

  1. 登录 AWS 后台 选择参数组 建立新的参数组。
  2. 搜索 log_bin_trust_function_creators 参数, 将值设置为1。
  3. 回到数据库选项卡,勾选数据库点击修改。
  4. 在数据库选项中, 将
  5. 最后一步操作选择立即应用。
  6. 重启RDS,再次尝试导入,成功。

WordPress搬家迁移前后台空白问题

今天将Wordpress从VPS搬家到空间,遇到了前后台空白问题,网上检索出来的大部分答案解决不了问题,最后通过删除wp-config.php进行重新安装解决问题。

迁移Wordpress后要注意调整PHP的版本号以对旧环境Wordpress迁移文件适配。

需要设置主机的伪静态来解析旧环境Wordpress的链接规则

IOS按需自动连接VPN 保持长链接

随着个人信息保护意识的增强,大多数人为了确保在外部未知网络下的信息安全,会使用VPN这类信息管道,对信息安全有苛刻要求的用户会采用自建服务器的方式,使用系统VPN功能进行通信,对于iOS/Mac等系统来说,基础的功能不能满足高阶用户,下面我们会使用一种更加智能的方式来建立长连接VPN。

本文适用于IPsec连接方式

将解决问题:

1.iOS VPN 在切换Wi-Fi/流量时会自动断线 并且长时间连接状况下极其不稳定。

2.VPN智能开闭:iOS/Mac在未知网络环境下自动连接VPN 在已知环境下断开VPN。

 

使用配置文件方案来解决如上问题

将以下XML编码保存为 Vpn.mobileconfig文件 填写服务器信息 上传至Web服务器,使用iOS/Mac进行访问链接 即可安装该配置文件。

<?xml version=”1.0″ encoding=”UTF-8″?>
<!DOCTYPE plist PUBLIC “-//Apple//DTD PLIST 1.0//EN” “http://www.apple.com/DTDs/PropertyList-1.0.dtd”>
<plist version=”1.0″>
<dict>
<key>PayloadContent</key>
<array>

<dict>
<key>UserDefinedName</key>
<string>Security Channal</string>
<key>PayloadDisplayName</key>
<string>Security Channal</string>
<key>PayloadIdentifier</key>
<string>com.channel.vpn.wifi</string>
<key>PayloadUUID</key>
<string>85284094-A9F5-47D7-A1CD-6F831B2FFAC0</string>
<key>VPNType</key>
<string>IPSec</string>
<key>IPSec</key>
<dict>
<key>RemoteAddress</key>
<string>服务器地址</string>
<key>AuthenticationMethod</key>
<string>SharedSecret</string>
<key>XAuthName</key>
<string>用户名</string>
<key>XAuthPassword</key>
<string>密码</string>
<key>XAuthEnabled</key>
<integer>1</integer>
<key>LocalIdentifierType</key>
<string>KeyID</string>
<key>SharedSecret</key>
<string>公共密匙</string>
</dict>
<key>OnDemandEnabled</key>
<integer>1</integer>
<key>OnDemandRules</key>
<array>
<dict>
<key>InterfaceTypeMatch</key>
<string>WiFi</string>
<key>SSIDMatch</key>
<array>
<!– 连接至以下Wi-Fi时 断开VPN(已知安全环境) –>
<string>WiFi名称1</string>
<string>WiFi名称2</string>
</array>
<key>Action</key>
<string>Disconnect</string>
</dict>
<dict>
<key>Action</key>
<string>Connect</string>
</dict>

<!– 各情景的断开/连接配置 分别为 手机流量 以太网 WI-FI 默认配置–>
<!–
<dict>
<key>Action</key>
<string>Disconnect</string>
<key>InterfaceTypeMatch</key>
<string>Cellular</string>
</dict>

<dict>
<key>Action</key>
<string>Connect</string>
<key>InterfaceTypeMatch</key>
<string>Ethernet</string>
</dict>

<dict>
<key>Action</key>
<string>Connect</string>
<key>InterfaceTypeMatch</key>
<string>WiFi</string>
</dict>

<dict>
<key>Action</key>
<string>Ignore</string>
</dict> –>
</array>
<key>OverridePrimary</key>
<true/>
<key>IPv4</key>
<dict>
<key>OverridePrimary</key>
<integer>1</integer>
</dict>
<key>PayloadType</key>
<string>com.apple.vpn.managed</string>
<key>PayloadVersion</key>
<integer>1</integer>
</dict>

</array>
<key>PayloadDisplayName</key>
<string>VPN</string>
<key>PayloadIdentifier</key>
<string>TW.BAB78424-28FB-4654-915D-93D0CB87CC7B</string>
<key>PayloadRemovalDisallowed</key>
<false/>
<key>PayloadType</key>
<string>Configuration</string>
<key>PayloadUUID</key>
<string>A9F4B095-4336-4ECD-A2B2-3D52D778E743</string>
<key>PayloadVersion</key>
<integer>1</integer>
</dict>
</plist>

 

 

参考:

https://thomas-witt.com/auto-connect-your-ios-device-to-a-vpn-when-joining-an-unknown-wifi-d1df8100c4ba

https://nerd.one/vpn-on-demand-configuration-profiles-for-ios-and-macos-explained/

简谈Javascript跨域问题

 

1.关于JS异步通讯

Javascript在进行前后端通讯时我们通常采用AJAX方式异步调用数据,后端输出JSON以提供数据,在我们开发环境下,与后端交互,或从网络站点抓取数据时会出现跨域问题。在后端支持的情况下,我们可以使用jsonp来调用数据。

2.关于Json

Json是我们最常见的与前端交互的异步传输格式,在后端设置了HTTP头Access-Control-Allow-Origin的情况下(CORS)我们可以通过AJAX成功调用数据。

3.关于Jsonp

Jsonp是天然支持跨域的,它的原理是通过Get方式将获取到的数据以脚本的方式来执行,在这种情况下后端是必须要输出一个callback标签头以供Jsonp处理数据,如果没有后端的支持异或是我们调用网络网站的数据,Jsonp是不能成功抓取数据的。

4.解决方案

处理跨域问题我们可以采用Nginx反向代理的形式,将异域的调用地址挂载于服务器上实现同域访问。

Eg:

www.example.com/api/select?id=221 我们将该地址反向代理为 /api 路径实现同源访问

具体步骤:

打开nginx配置文档 设置

location ^~/api/
{ 
rewrite ^/api/(.*)$ /$1 break;
proxy_pass http://api.123.com/; 
}

通过此步我们将api.123.com挂载到了服务器,访问地址为 /api

Nginx反向代理来解决JS跨域问题 在开发环境或生产环节都适用 并且是完全无侵入的 。

5.关于Vue

在Vue-cli脚手架下开发,我们还有更为简便的方法,即使用proxyTable,我们可以将它理解为一个地址映射表,和nginx反向代理实现的结果相同。

具体步骤:

proxyTable: {
  '/api': {
    target: 'http://www.123.com',
    changeOrigin: true,
    pathRewrite: {
      '^/api': '/api'
    }
  }
}

调用部分只用写成 /api 就可以代表 www.123.com/api

近况。

细数博客有一年多没更新了,近两年来也在慢慢脱离互联网安全这个圈子转向程序开发及自己的项目建设。两年下来,很多做互联网安全的同路人也在逐渐走散。互联网安全、白帽、黑帽的灰色地带法律难以鉴别致使越来越多从业者失去信心,大公司、正规军是目前作为网络安全爱好者必须有的后盾,否则风险是无力承担的。基于以上情况及现实中很多朋友的实例教训,Wooyun的倒闭,我选择退出这个走在法律边缘,没有积极环境的行业。

近两年在海外留学,同时运营自己的项目,从互联网安全研究转向全栈开发,Docker、区域链条及今年大火的DL研究,产业就是这样的,一日兴盛一日为寇,适时转变方向不失为好的选择。

近两年服务器从AWS转移到Conoha.jp->Digitalocean->Linode,Conoha的服务器素质是最满意的,不过遭受了一次压力测试导致封号,被迫转移到两年前用过的DO,直观感受是服务器质量比以前差多了(网络及读写).Linode一直作为VPS行业领军公司,日本机房评测与Cohona齐平。

有兴趣联系我的朋友可以留言,我看到会回复的。

–小麦/Skycloud/Kevin/Cloudsec

AWS免费套餐

今天刷新邮箱发现GitHub Developer Pack发来一封邮件,提醒AWS加入了education pack全家桶套餐。之前一直听说AWS的集群服务器很强,点进注册,一路确认,最后到了控制面板.
屏幕快照 2015-11-06 下午10.39.00

看到这面板功能,满足了我对云计算的所有需求,幻想。有Container Docker容器服务器,RDS数据库服务,WAF防火墙,Hadoop框架,CDN分发,Elastic Beanstalk容器服务,简直屌炸天啊。刚好满足最近想用Docker练手的想法。最关键的事情是,这还免费12个月,免费12个月,免费12个月。

屏幕快照 2015-11-06 下午10.38.06

良心推荐。

Aria2下载机及Mycloud互联

1.Raspberry刷固件

http://www.raspicn.com/thread-149-1-1.html

2.安装http服务器(应本来已经安装较多软件,此处我选择小巧的Lighttpd)

apt-get update

apt-get install lighttpd

打开浏览器 输入Raspberry ip地址 首页可得到Lighttpd 网页目录

3.wget 或者clone https://github.com/ziahamza/webui-aria2

至此aira2及web ui安装完毕

4.安装smbclient

arp -a 指令查看mycloud ip

mount //192.168.9.106/Public /media/disk1/aira2/mycloud -o username=,password=

挂载成功

5.设置自启动

建立挂载目录 chmod给权限

打开etc目录 编辑rc.local 或者rc.d目录下r c.local

exit0前添加 mount //192.168.9.106/Public /media/disk1/aira2/mycloud -o username=,password=

6.编辑/home/pi/.aria2/aria2.conf

dir位置设置默认下载位置