地图炮

  • 首页
  • 文章分类
    • 生活随笔
    • ACGMN
    • 科技数码
    • 操作记录
    • 资源分享
    • 天下杂侃
  • 文章归档
  • RSS
  • 读者留言
Kira|(<ゝω・)☆
一个逗逼的自言自语
  1. 首页
  2. 操作记录
  3. 正文

CentOS6零基础配置shadowsocks服务端完整教程

2014-04-20 25149点热度 0人点赞 0条评论
注意事项

由于软件更新、完善,安装不需要如此复杂的方法。
已更新「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

 

-----------------------------------------------------

转载随意,修改随意,但请注明来源链接

本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可
标签: CentOS Shadowsocks
最后更新:2017-03-21

轻飏

博客上发表的原创内容除特别注明,可在注明来源前提下转载,无需通知本人。

点赞
< 上一篇
下一篇 >

文章评论

  • Nin

    还是在Debian下装SS简单无脑暴力啊。。。

    2014-05-04
    回复
  • 大猫

    教程非常详尽啊

    2014-08-14
    回复
  • choco

    比较详细了,回头实践下看看效果……

    2014-09-10
    回复
  • 蓝色的风吹过

    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
    非常详细 只是若干小错误 少打了- 或者英文的"写成了中文“
    感谢分享!照着操作成功了

    2014-09-10
    回复
  • 蓝色的风吹过

    iptables -I INPUT -p tcp -m tcp –dport 1024 -j ACCEPT
    要改为
    iptables -I INPUT -p tcp -m tcp –-dport 1024 -j ACCEPT

    是 --dport

    2014-09-10
    回复
  • 蓝色的风吹过

    你的插件貌似会自动把两个-删除一个。。无语

    2014-09-10
    回复
  • 小白

    小白表示真看不懂啊,步骤太多了。网上不是有号称一键安装的吗?

    2014-10-15
    回复
    • 轻飏

      @小白 那是别人写的脚本,我这是补充一下官方教程

      2014-10-31
      回复
  • Hardrain

    看完感觉还是Ubuntu/Debian上装SSserver和Supervisor让它保持后台运行容易...
    第一次选的CentOS5不知为什么supervisord一直无法加载配置文件...

    2014-11-11
    回复
    • 轻飏

      @Hardrain 有时间的话我把这部分补上~ :-)

      2014-11-13
      回复
  • jhui

    执行到安装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
    这个要怎么解决呢?

    2014-11-29
    回复
  • jhui

    呃,最后通过这个,改安装了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

    2014-11-29
    回复
  • CharlAnders

    想问一下,shadowsocks服务端可以限制每个IP的连接数量吗?

    2015-02-15
    回复
  • 匿名

    1024~lolicon~233~无法直视~

    2015-02-20
    回复
  • 在意

    百度下 账号大王
    每日赠送2枚 shadowsocks注册码!
    永久免费。

    2015-06-26
    回复
  • 老张

    首先感谢 轻飏和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

    就可以了

    2015-10-13
    回复
  • 老张

    安装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
    还是装了不同的版本,该方法在博主的版本上也不行,不知道不同的版本为啥差异这么大

    2015-10-13
    回复
  • dspsharc

    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速度快好几倍。

    2015-12-03
    回复
  • w88127

    您好,叨教小编能够让我转载这篇文章内容吗?我会备注原文来由链接的和作者.

    2016-09-18
    回复
  • w88171

    来晚了啊 看不到了 看不到了

    2016-10-08
    回复
  • razz evil exclaim smile redface biggrin eek confused idea lol mad twisted rolleyes wink cool arrow neutral cry mrgreen drooling persevering
    回复 Hardrain 取消回复

    这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理。

    轻飏

    博客上发表的原创内容除特别注明,可在注明来源前提下转载,无需通知本人。

    SEARCH
    最新 热点 随机
    最新 热点 随机
    使用宝塔面板(BT-Panel)创建Rustdesk API+中转服务器并添加HTTPS WESCOM 32寸 4K显示器(C32VU)使用感受与校色文件分享 解决群晖百度网盘官方NAS客户端无法登录问题 解决RZ616通过Windows自带热点共享(Hotspot)无法共享WIFI6问题 Windows11正式版启用Copilot功能操作说明 解决Oneinstack安装无法命令行登录MySQL/MariaDB问题
    「闲鱼」上遇到的糟心事,警惕鸽子党 PuTTY Connection Manager下载与解决启动报错说明 显示器支架到了 新房准备装修,说说家庭局域网怎么布线 刚刚设计的光速汽车和永动机_(:з」∠)_ 蜗牛星际NAS安装黑群晖V6.2.1+洗白+免U盘引导启动
    最近评论
    grq 发布于 3 个月前(04月02日) 这款似乎官方标称300cd
    迷途小书童 发布于 8 个月前(10月16日) 最近也遇到了这个困扰,微软把Intel无线网卡热点带宽限制到了20MHz,极大影响了VR串流体验(其...
    newbie 发布于 10 个月前(09月09日) tabletpro3.0出来了 还多出来几个功能强大的插件 有更新汉化的想法吗 学习了几天也没搞明白...
    newbie 发布于 10 个月前(09月09日) 大佬 tabletpro3.0出来了 有更新汉化的想法吗 学习了几天也没搞明白 有心无力
    嘿嘿 发布于 11 个月前(08月07日) 不管用啊
    标签聚合
    Microsoft Chrome Android Windows twitter 平板电脑 浏览器拓展 VPS

    COPYRIGHT © 2024 地图炮. ALL RIGHTS RESERVED.

    Theme Kratos Made By Seaton Jiang