由于软件更新、完善,安装不需要如此复杂的方法。
已更新「Debian8零基础安装ShadowsocksR服务端教程」,建议参照该教程部署服务端。
shadowsocks 是一个轻量级隧道 socks5 代理,可加密网络通道。
项目主页:https://github.com/clowwindy/shadowsocks
官方wiki:https://github.com/clowwindy/shadowsocks/wiki/Shadowsocks
博主说明:
此教程为官方wiki补充,并附带M2Crypto、gevent 安装的详细说明,以便于零基础用户配置 shadowsocks 服务端。
此处以bandwagonhost的廉价VPS举例…
系统 CentOS6.5 x86,内建Python版本2.6.6(可使用 python -V 命令查看)
准备工作:安装所需组件
yum install wget tar gcc gcc-c++ openssl openssl-devel pcre-devel python-devel libevent -y
一、升级python
1、按以下步骤执行
cd /root
wget http://www.python.org/ftp/python/2.7.6/Python-2.7.6.tgz
tar zxvf Python-2.7.6.tgz
cd Python-2.7.6
./configure
make & make install
2、设置python2.7.6为默认版本,此处python2.6.6为系统内建版本,不知道当前版本的可以使用 python -V 命令查看
mv /usr/bin/python /usr/bin/python2.6.6
ln -s /usr/local/bin/python2.7 /usr/bin/python
修改完毕后可以 python -V 查看一下是否成功
3、由于yum依赖内建python,所以需要修改一下yum依赖
vi /usr/bin/yum
说明:按 i 进入编辑模式,将第一行#!/usr/bin/python 改为 #!/usr/bin/python2.6.6,后者为内建python版本,然后按esc退出编辑模式,按shift+: ,输入wq保存文件即可~
二、安装pip
1、安装setuptools(pip需要这个),依次执行
cd /root
wget http://pypi.python.org/packages/2.7/s/setuptools/setuptools-0.6c11-py2.7.egg --no-check-certificate
sh setuptools-0.6c11-py2.7.egg
如果提示 zipimport.ZipImportError: can't decompress data; zlib not available ,说明需要安装zlib库
cd /root/Python-2.7.6/Modules/zlib
./configure
make & make install
重新编译一下python
cd /root/Python-2.7.6
make & make install
安装setuptools
cd /root
sh setuptools-0.6c11-py2.7.egg
2、安装pip
cd /root
wget http://pypi.python.org/packages/source/p/pip/pip-1.5.4.tar.gz --no-check-certificate
tar zxvf pip-1.5.4.tar.gz
cd pip-1.5.4
python setup.py install
三、安装shadowsocks
由于安装了pip所以很简单了,一行命令的事
pip install shadowsocks
此时不推荐运行shadowsocks
四、安装M2Crypto
shadowsocks支持以下加密方式:
aes-128-cfb、aes-192-cfb、aes-256-cfb、bf-cfb、camellia-128-cfb、camellia-192-cfb、camellia-256-cfb、cast5-cfb、des-cfb、idea-cfb、rc2-cfb、rc4、seed-cfb、table
默认加密方法 table 速度很快,但很不安全,推荐使用 "aes-256-cfb" 或者 "bf-cfb",使用加密必须安装M2Crypto。
1、安装swig
yum里swig版本太旧,如果使用yum安装基本上都是被坑的,如果系统集成大多也会有同样的问题
首先查看swig版本,如果是1.x版的先卸载掉
swig -version
执行以下命令
cd /root
wget http://jaist.dl.sourceforge.net/project/swig/swig/swig-3.0.0/swig-3.0.0.tar.gz
tar zxvf swig-3.0.0.tar.gz
cd swig-3.0.0
./configure
make & make install
安装完成后可以查看一下版本
swig -version
2、安装M2Crypto
cd /root
wget https://pypi.python.org/packages/source/M/M2Crypto/M2Crypto-0.22.3.tar.gz --no-check-certificate
tar zxvf M2Crypto-0.22.3.tar.gz
cd M2Crypto-0.22.3
python setup.py build
python setup.py install
五、安装Gevent
安装Gevent可以获得更好的性能,不管效果怎样,还是装个吧…
1、安装easy_install并安装greenlet
cd /root
wget -q http://peak.telecommunity.com/dist/ez_setup.py
python ez_setup.py
easy_install greenlet
2、安装Gevent(小内存VPS上可能无法通过)
cd /root
wget http://pypi.python.org/packages/source/g/gevent/gevent-0.13.8.tar.gz
tar zxvf gevent-0.13.8.tar.gz
cd gevent-0.13.8
python setup.py build
python setup.py install
六、运行shadowsocks
1、任意目录下建立一个名为“config.json”的文件,并编辑文本
touch config.json
vi config.json
2、设置shadowsocks服务端,按i进入编辑,将以下内容输入到文本中,编辑完成后按Esc退出编辑,然后Shift+:,输入wq保存
{
"server":"my_server_ip",
"server_port":1024,
"local_port":1989,
"password":"lolicon",
"timeout":600,
"method":"aes-256-cfb"
}
各字段的含义:
server 服务器 IP (IPv4/IPv6),注意这也将是服务端监听的 IP 地址
server_port 服务器端口
local_port 本地端端口
password 用来加密的密码
timeout 超时时间(秒)
method 加密方法,可选择 "bf-cfb", "aes-256-cfb", "des-cfb", "rc4", 等等。默认是一种不安全的加密,推荐用 "aes-256-cfb"
3、在config.json文件所在目录执行
ssserver (前台运行)
nohup ssserver > log & (后台一直运行)
4、如果成功运行,但是无法连接,可能是iptables设置问题,可以选择添加当前端口到白名单或关闭iptables解决
请将“1024”改为你所设置的服务器端口
iptables -I INPUT -p tcp -m tcp --dport 1024 -j ACCEPT
service iptables save (建议)
或者关闭iptables(不建议)
/etc/rc.d/init.d/iptables stop
5、客户端设置网上一搜一大把,就不赘述了…
Windows客户端:https://github.com/clowwindy/shadowsocks-csharp
Android客户端:https://play.google.com/store/apps/details?id=com.github.shadowsocks
-----------------------------------------------------
转载随意,修改随意,但请注明来源链接
文章评论
还是在Debian下装SS简单无脑暴力啊。。。
教程非常详尽啊
比较详细了,回头实践下看看效果……
iptables -I INPUT -p tcp -m tcp –dport 1024 -j ACCEPT
要改为
iptables -I INPUT -p tcp -m tcp --dport 1024 -j ACCEPT
wget https://pypi.python.org/packages/source/M/M2Crypto/M2Crypto-0.22.3.tar.gz –no-check-certificate
改为
wget https://pypi.python.org/packages/source/M/M2Crypto/M2Crypto-0.22.3.tar.gz -–no-check-certificate
非常详细 只是若干小错误 少打了- 或者英文的"写成了中文“
感谢分享!照着操作成功了
iptables -I INPUT -p tcp -m tcp –dport 1024 -j ACCEPT
要改为
iptables -I INPUT -p tcp -m tcp –-dport 1024 -j ACCEPT
是 --dport
你的插件貌似会自动把两个-删除一个。。无语
小白表示真看不懂啊,步骤太多了。网上不是有号称一键安装的吗?
@小白 那是别人写的脚本,我这是补充一下官方教程
看完感觉还是Ubuntu/Debian上装SSserver和Supervisor让它保持后台运行容易...
第一次选的CentOS5不知为什么supervisord一直无法加载配置文件...
@Hardrain 有时间的话我把这部分补上~ :-)
执行到安装M2Crypto的时候出现了error: command 'swig' failed with exit status 1
running build
running build_py
running build_ext
building 'M2Crypto.__m2crypto' extension
swigging SWIG/_m2crypto.i to SWIG/_m2crypto_wrap.c
swig -python -I/usr/local/include/python2.7 -I/usr/include -I/usr/include/openssl -includeall -modern -o SWIG/_m2crypto_wrap.c SWIG/_m2crypto.i
/usr/include/openssl/opensslconf.h:31: Error: CPP #error ""This openssl-devel package does not work your architecture?"". Use the -cpperraswarn option to continue swig processing.
error: command 'swig' failed with exit status 1
这个要怎么解决呢?
呃,最后通过这个,改安装了M2Crypto-0.21.1解决了,http://webcache.googleusercontent.com/search?q=cache:PkBOtR88Pq0J:opensiglud.blogspot.com/2013/07/centos-6m2crypto.html+&cd=1&hl=zh-CN&ct=clnk&gl=cn
想问一下,shadowsocks服务端可以限制每个IP的连接数量吗?
1024~lolicon~233~无法直视~
百度下 账号大王
每日赠送2枚 shadowsocks注册码!
永久免费。
首先感谢 轻飏和jhui,解决了问题
我的问题个jhui一样,如下
执行到安装M2Crypto的时候出现了error
This openssl-devel package does not work your architecture?””. Use the -cpperraswarn option to continue swig processing.
靠以下方法解决:
在CentOS 6下安装M2Crypto
为了让shadowsocks能够支持更多的加密方式,必须要安装M2Crypto,不得不说,这个东西很麻烦
首先,需要安装依赖包
yum install gcc libgcc swig openssl openssl-devel python-devel
然后开始安装M2Crypto,这个东西也绝对不可以用pip装,基本上都是被坑的节奏
wget https://pypi.python.org/packages/source/M/M2Crypto/M2Crypto-0.21.1.tar.gz --no-check-certificate
tar zxvf M2Crypto-0.21.1.tar.gz
cd M2Crypto-0.21.1
如果这个时候直接安装
python setup.py build
基本上就会报告那个”This openssl-devel package does not work your architecture?“了
其实它有提供fedora系统的专用安装包的,运行一下
./fedora_setup.sh build
./fedora_setup.sh install
就可以了
安装gevent又出现问题,如下
gevent-0.13.8]# python setup.py build
running build
running build_py
running build_ext
building 'gevent.core' extension
gcc -pthread -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -I/usr/local/include/python2.7 -c gevent/core.c -o build/temp.linux-x86_64-2.7/gevent/core.o
In file included from gevent/core.c:253:0:
gevent/libevent.h:9:19: fatal error: event.h: No such file or directory
#include "event.h"
^
compilation terminated.
error: command 'gcc' failed with exit status 1
然后,是这样解决的
大多数问题其实是出在easy_install 上的,
遇到此类问题,最好能去下个源包,比如这个:http://pypi.python.org/packages/source/g/gevent/gevent-0.13.1.tar.gz#md5=5c1b03d9ce39fee4cfe5ea8befb1d4c4
解压后,要先运行下其中的
Java代码 收藏代码
python fetch_libevent.py
然后:
Java代码 收藏代码
python setup.py build
python setup.py install
还是装了不同的版本,该方法在博主的版本上也不行,不知道不同的版本为啥差异这么大
http://www.centoscn.com/image-text/install/2015/0510/5399.html
1、查看系统
[root@localhost ~]# cat /etc/issue
CentOS release 6.6 (Final)
[root@localhost ~]# uname -a
Linux localhost.localdomain 2.6.32-042stab106.6 #1 SMP Mon Apr 20 14:48:47 MSK 2015 x86_64 x86_64 x86_64 GNU/Linux
2、安装ShadowSocks
# yum install python-setuptools && easy_install pip
# pip install shadowsocks
3、创建配置文件/etc/shadowsocks.json
[root@localhost /]# touch /etc/shadowsocks.json
[root@localhost /]# vi /etc/shadowsocks.json
{
"server":"138.128.208.158",
"server_port":443,
"local_address": "127.0.0.1",
"local_port":1080,
"password":"MyPass",
"timeout":600,
"method":"rc4-md5"
}
备注:加密方式官方默认使用aes-256-cfb,推荐使用rc4-md5,因为 RC4比AES速度快好几倍。
您好,叨教小编能够让我转载这篇文章内容吗?我会备注原文来由链接的和作者.
来晚了啊 看不到了 看不到了