讲真的,一般情况下,我自用的酸酸机器,我为了图方便都是用的秋水一键包,真的很少去手动装酸酸服务端,除了很久之前为了写那个ssmanager面板的安装教程装过一次以外,我好像还真没怎么手动装过酸酸服务端。。。
本人以前主要研究各种面板程序,而这些面板基本上都是SSR后端,所以对于自用酸酸的各种姿势,我还是了解的不够多,以后多折腾一下这方面了,面板都玩的差不多了,也没啥兴趣了。。。
今天先手动装一波SS-libev,外加配置下中转,正好自己不是很了解这些,做个记录~
准备两台机器,这里我们就称两台机器名为“被中转服务器”和“中转服务器”,系统选择CentOS7X64。
我们先在“被中转服务器”上安装SS-libev。
cd /root yum install epel-release -y yum install gcc gettext autoconf libtool automake make pcre-devel asciidoc xmlto c-ares-devel libev-devel libsodium-devel mbedtls-devel -y wget https://github.com/shadowsocks/shadowsocks-libev/releases/download/v3.1.2/shadowsocks-libev-3.1.2.tar.gz tar xf shadowsocks-libev-3.1.2.tar.gz cd shadowsocks-libev-3.1.2 ./configure make make install
SS服务端的话,有多钟启动方法,这里我把两种启动方法都列出来:
1、通过命令行的方法,直接加参数运行:
ss-server -s 0.0.0.0 -p 21313 -k lala.im-TEST -m chacha20-ietf-poly1305 -u
注:-p是SS连接端口,-k是SS连接密码,-m是SS加密方式,-u是开启UDP转发。连接这台服务器的话,本地客户端的IP地址就是这台机器的公网IP。
2、通过加载配置文件来运行:
我们可以先在root目录下生成一个ssconfig.json:
cd /root vi ssconfig.json
在这个文件内填入如下配置信息:
{ "server":["0.0.0.0"], "server_port":21313, "local_address":"127.0.0.1", "local_port":1080, "password":"lala.im-TEST", "timeout":600, "method":"chacha20-ietf-poly1305" }
注:server_port即SS连接端口,password即SS连接密码,method即SS加密方式,同理使用客户端连接这台服务器填写这台机器的公网IP即可。
填写完毕后,退出并保存,接着使用如下命令启动服务端:
ss-server -c /root/ssconfig.json -u
接着我们可以尝试连接一下,假设连接成功,我们就可以把服务端丢到后台去运行了,这里LALA使用screen。
首先安装screen:
yum -y install screen
然后使用如下命令中的其中一种来运行服务端:
参数运行:
screen -dmS shadowsocks ss-server -s 0.0.0.0 -p 21313 -k lala.im-TEST -m chacha20-ietf-poly1305 -u
配置文件运行:
screen -dmS shadowsocks ss-server -c /root/ssconfig.json -u
假设你测试连接不成功,一般都是防火墙的问题,首先查看防火墙的状态:
systemctl status firewalld
不想麻烦的话,可以直接将这台“被中转服务器”的防火墙关闭:
systemctl stop firewalld
如果不想关闭的话,可以添加相应的规则来放行我们的SS端口,这里我以21313端口为例:
firewall-cmd --permanent --zone=public --add-port=21313/tcp firewall-cmd --permanent --zone=public --add-port=21313/udp firewall-cmd --reload
这样操作后,再次尝试连接,应该就可以了,如果还是还是不行,那只能说你的人品有问题。。。
至此,“被中转服务器”的SS服务端就搭建好了,如果你不需要中转服务的话,那么你现在就可以用这台机器开始科学上网了。如果你需要中转服务,请接着往下阅读。
我们现在登录“中转服务器”来配置相应的防火墙规则。
请注意,本文所使用的系统是CentOS7,7系统默认是不启用iptables的,7是默认启用新版firewall防火墙的。所以我文章这里的规则是适用于firewall的,不适用iptables,如果你的系统是CentOS6请不要模仿本文操作。。。
另外“中转服务器”不需要安装任何额外的东西,连SS服务端都不需要安装,你只需要保证这台机器启动了firewall即可,启动命令:
systemctl start firewalld
接着开启CentOS7的ipv4转发功能:
echo 1 > /proc/sys/net/ipv4/ip_forward
这里假设,我们拿“中转服务器”的52888端口做转发,“被中转服务器”的SS服务端口是21313,那么可以使用如下规则:
firewall-cmd --permanent --add-port=52888/tcp firewall-cmd --permanent --add-port=52888/udp firewall-cmd --permanent --add-masquerade firewall-cmd --permanent --add-forward-port=port=52888:proto=tcp:toport=21313:toaddr=被中转服务器的公网IP firewall-cmd --permanent --add-forward-port=port=52888:proto=udp:toport=21313:toaddr=被中转服务器的公网IP firewall-cmd --reload
注:你的SS端口号和服务器的公网IP以及这台用来做转发的端口号,都可以根据你的实际需要来修改。
这样配置好了后,我们就可以使用SS客户端来进行连接测试了,SS客户端配置信息的填写,你只需要更改两个地方:
1、将“被中转服务器”的公网IP改成现在这台“中转服务器”的公网IP。
2、将“被中转服务器”的SS端口号改成现在这台“中转服务器”的转发端口号。
其他配置,比如:连接密码、加密方式等等都不需要做更改,保存原先的即可。
至此,整个过程就大功告成了~
写在最后:
本文的转发配置只适用CentOS7,有空的话,我会再开一篇文章专门写一下CentOS6用iptables做转发的教程。另外其实有一个更方便的中转办法,就是我之前给大家介绍的Brook,不知道大家还记得这个小工具不,这个工具自带转发功能,配置也想当简单,改天把这个Brook做转发的教程也写一下~
原来不配图写文章效率要高很多2333
最新评论
5211314
能不能教我 一点不会