shadowsocks

shadowsocks-python,shadowsocks-libev,shadowxocksR等多个版本shadowsocks的服务器端的安装,以ubuntu安装为例

服务端

shadowsocks-python 安装

参考

安装

1
2
3
sudo apt-get install python3-pip  
sudo apt-get install python3-setuptools
pip3 install shadowsocks

配置文件

1
2
3
4
5
6
7
8
{
"server":"::", #同时支持ipv4和ipv6
"port_password": {
"port1":"password1",
"port2": "password2",
},
"method":"aes-256-cfb"
}

启动、结束

ssserver -c ~/shadowsocks.json -d start
ssserver -c ~/shadowsocks.json -d stop

shadowsocks-libev安装

shadowsocks-libev可以支持更多的加密方式

安装

1
2
3
4
sudo apt-get install software-properties-common -y   
sudo add-apt-repository ppa:max-c-lv/shadowsocks-libev -y
sudo apt-get update
sudo apt install shadowsocks-libev

配置文件

1
2
3
4
5
6
7
8
sudo vim /etc/shadowsocks-libev/config.json
{
"server":["[::]","0.0.0.0"], #同时支持ipv4和ipv6
"server_port":443,
"password":"123456",
"timeout":600,
"method":"aes-256-gcm"
}

启动命令

启动:systemctl restart shadowsocks-libev

想要以后每次重启(Linux的CentOS)服务器时都可以自动启动此ss服务,则可以去:

设置开机启动:systemctl enable shadowsocks-libev

其他相关命令:

查看状态:systemctl status shadowsocks-libev  
查看日志:journalctl -u shadowsocks-libev
重启:systemctl restart shadowsocks-libev

用shadowsocks-libev实现多账号/多用户

上述创建的ss服务,只有一个(账号)密码,只能供一个人用,或者说,如果多个人使用,则使用的是同一个(账号)密码,显得很不方便和不安全。

如果想要多个用户每人有不同的账号(密码),则可以:用shadowsocks-libev实现多账号/多用户

新建另外一个配置文件,比如:

/etc/shadowsocks-libev/config2.json

内容和之前一致,只是端口号server_port和密码password改了一下即可:

1
2
3
4
5
6
7
8
{
"server": "0.0.0.0",
"server_port": 21501,
"password": "passowrd2",
"method": "aes-256-cfb",
"timeout": 300,
"mode": "tcp_and_udp"}Copy
}
注意: 端口号不要和系统中其他服务的端口号冲突了。  

另外再去用:
setsid ss-server -c /etc/shadowsocks-libev/config2.json -uCopy
启用新端口对应的ss服务。

shadowsocksR

安装

1
2
apt-get install git
git clone -b manyuser https://github.com/shadowsocksr-backup/shadowsocksr.git

参考

防火墙

sudo ufw allow port
sudo ufw enable

客户端

配置文件

1
2
3
4
5
6
7
8
9
{
"server":"IP", #服务器IP
"server_port":PORT, #服务器端口
"password":"pwd",
"local_address":"0.0.0.0", #配置局域网内其他机器可以连接
"local_port":PORT, #配置本地端口
"timeout":600,
"method":"aes-256-cfb"
}

运行

sslocal -c shadowsocks.json

linux shell代理

安装 proxychains
sudo apt-get install proxychains
配置代理信息
sudo vim /etc/proxychains.conf
最后一行改成自己的代理信息:
socks5 127.0.0.1 1080
使用在命令前加上proxychains:
proxychains git clone *****

注:
ubuntu系统自带的代理,和火狐中的代理通过socks5代理都不行,proxychains却可以通过命令行来代理。
记录一次多重反向代理的过程:

  • 有一台公网服务器ubuntu18因为机房被攻击的原因被限制了外网访问,但是和本机的外网ip在同一个网段下,还可以通过本机连接上;
  • 但是服务器刚重装了系统需要联网安装一些程序,考虑怎么通过本地电脑代理实现服务器上网;
  • 先在本地一个ubuntu18上通过apt-get install 安装openssh-server和proxychains,然后在var/cache/apt/archives/找到对应的deb文件,并下载frp,都复制到服务器上并安装;
  • 配置服务器的frps,以及本机的frpc,实现反向代理,这样在服务器上可以通过服务器的公网端口将流量转到本地电脑的端口;
  • 然后配置proxychains代理到服务器frps的端口上,服务器ubuntu18和它的火狐浏览器代理都连不上网,proxychains就可以顺利的连上了;
  • 本地端口是shadowsocks的一个翻墙代理端口。实现了远程服务器的外网访问。
  • 查了一下,ssh也可以进行反向代理,但是没调通,不知道行不行。
Contents
  1. 1. 服务端
    1. 1.1. shadowsocks-python 安装
      1. 1.1.1. 安装
      2. 1.1.2. 配置文件
      3. 1.1.3. 启动、结束
    2. 1.2. shadowsocks-libev安装
      1. 1.2.1. 安装
      2. 1.2.2. 配置文件
      3. 1.2.3. 启动命令
    3. 1.3. shadowsocksR
      1. 1.3.1. 安装
    4. 1.4. 防火墙
  2. 2. 客户端
    1. 2.0.1. 配置文件
    2. 2.0.2. 运行
  • 3. linux shell代理
  • |