Azure搭建shadowsocks用作科学上网

    我在CSDN中写的一篇博客,题名为“Azure搭建openvpn(番羽土啬必备)”,没有想到第二天就被删了~于是这里用“科学上网”这个词,多么和谐啊!

    此前写的那篇openvpn,是在公司搭建的,公司的网络是外网,因此能够work。在宿舍的时候,发现openvpn的客户端不能连接上。原来强大的GWF已经将openvpn给封了。于是又经过两天的调研,决定用shadowsocks,终于测试成功!

    本文主要是参博客:http://shadowsocks.blogspot.com/2015/01/shadowsocks.html,不过这边博客仍需要番羽土啬才能看到。中间也有一些不同的地方,因此我在此做些记录。

    1、首先,在Azure上搭建一台虚拟机。具体见这个博客:Azure搭建Openvpn,不同的是,操作系统映像选择OpenLogic 6.5(选择其他的可能会出现问题。CentOS 6.5也可以,他们的内核相同)

    2、添加防火墙端口。这一步很重要。Azure服务器默认是只开放22端口用于SSH。这里最好添加两种协议UDP和TCP,端口设为1-65525的任何一个,但是不能与已有的端口冲突。建议采用默认的端口。我自定义了一个端口,总体设置如下:

    3、下载putty,http://www.putty.org/,输入如下信息。点击ok。

    

    4、输入虚拟机的用户名密码。目前azure的linux系统的用户名只能是azureuser

    

    5、注意此时你并没有管理员权限。我实验了一下,直接以root用户登录也不行。后面用su - root也不行。

    6、接下来按如下命令操作。若要求你输入密码,则输入azureuser的登录密码。若有y/N,则输入y。前面一定要添加sudo,否则可能没有权限,导致操作失败。

sudo yum install epel-release
sudo yum update
sudo yum install python-setuptools m2crypto supervisor
sudo easy_install pip
sudo pip install shadowsocks

    7、上面将该装的软件安装完毕。之后会用到vi工具。vi工具若不熟悉的,可以自行临时补一下。这里稍微讲一下这里会用到的基本操作。


    vi番外篇(linux高手直接跳过)

    vi工具就相当于windows下的记事本,但是没有图形化界面。一切都是靠命令操作。这里用到两种模式:命令模式和插入模式。

vi 文件名

上面的命令就是打开或新建一个文件,进入的是命令模式。在命令模式下能够跳转、保存、退出等操作。

按i,进入插入模式。这时下边会有一个INSERT字符。在insert模式下,能够编辑文档。

按esc键能够从插入模式进入命令模式,这时下边的INSERT字符不见。


    8、创建服务端的配置文件。

vi /etc/shadowsocks.json

    执行上述命令,新建文档shadowsocks.json,并存在/etc文件夹下。并进入命令模式。

    按i键进入插入模式。

    复制以下能容,然后在putty鼠标右键,复制的内容就粘贴到了shadowsocks.json文件中。

{
    "server":"0.0.0.0",
    "server_port":1520,
    "local_port":1080,
    "password":"yourpassword",
    "timeout":600,
    "method":"aes-256-cfb"
}

    其中修改服务器端口(注意创建虚拟机的时候,你开的azure端点),你的密码。端口与防火墙开放的端口一致(感谢jungle的指出

    按ESC退入命令模式,若直接执行命令":wq",可能会报错,因为你没有管理员权限。需要执行以下命令:

:w !sudo tee %

这时文件已经保存。然后执行以下命令:q退出。

 :q

    9、修改文件。

vi /etc/supervisord.conf

    这个是原来就存在的文件。将光标调到末尾,按照8的方法,将以下内容复制到文件末尾的空白区域,注意最后一行要留出空行。保存退出。

[program:shadowsocks]
command=ssserver -c /etc/shadowsocks.json
autostart=true
autorestart=true
user=root
log_stderr=true
logfile=/var/log/shadowsocks.log

    10、修改开机启动文件。

vi /etc/rc.local

    按照8的方法将下面的内容拷贝到空白处。保存退出。

service supervisord start

    11、重启服务器即可。

sudo reboot

    12、客户端配置。

    windows/mac OS X的链接地址:http://sourceforge.net/projects/shadowsocksgui/files/dist/。win7用户下载Shadowsocks-win-xxx.zip,win 8用户下载Shadowsocks-win-dotnet4.0-xxx.zip。解压直接就能够运行。

    Mac用户下载ShadowsocksX-xxx.dmg。

    windows和mac我实验成功,亲测可行。Android和ios未测。

    IOS下载链接:https://itunes.apple.com/cn/app/shadowsocks/id665729974?mt=8

    Android链接:https://play.google.com/store/apps/details?id=com.github.shadowsocks

                https://github.com/shadowsocks/shadowsocks-android/releases

    14、客户端说明:

    windows下的客户端截图如下,在托盘区有个纸飞机,右键会弹出以下窗口:

    Enable System Proxy是是否运用代理的开关。
    mode是代理模式,PAC表示智能选择代理,需要代理的域名列表在PAC文件列表中。Global表示所有的网站都运用代理。推荐用PAC。

    servers下有几个选项,可以选择用哪个代理服务器。点击Edit Servsers,会弹出一个框。

    在弹出的框中输入服务器域名(就是你的虚拟机链接)、端口、密码(端口和密码在第8步定义了),然后点击OK

    PAC是指那些需要代理的域名列表。可以选择是用本地的PAC文件还是用线上的PAC文件。你也可以自行编辑。若使用本地的PAC文件,可以每隔一段时间更新一下这个文件(点击update Local PAC from GFWList)。

    start on boot是否开机启动。

    其他基本上很少用到。暂不做介绍。

    Mac系统的客户端如下,大体类似,就不再赘述。

    15、验证成果。输入谷歌https://www.google.com/,如下,成功!

10 条评论

    发表评论

    电子邮件地址不会被公开。 必填项已用 * 标注