Ubuntu 16.04下安装服务器端Shadowsocks

时间:2022-07-26
本文章向大家介绍Ubuntu 16.04下安装服务器端Shadowsocks,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

本教程仅适用于Ubuntu 16.04及之后的版本,基于Python 3,因Python 3对应的包管理器pip3并未预装,首先安装pip3:

sudo apt install python3-pip

安装 shadowsocks

sudo pip3 install https://github.com/shadowsocks/shadowsocks/archive/master.zip

查看Shadowsocks版本:

sudo ssserver --version

新建配置文件

sudo mkdir /etc/shadowsockssudo 
vim /etc/shadowsocks/shadowsocks.json

添加配置信息多用户

// 多用户
{
    "server":"::",
    "local_address":"127.0.0.1",
    "local_port":1080,
  "port_password":{
         "8888":"123456789",
         "9999":"123456789"
  },
    "timeout":300,
    "method":"aes-256-cfb",
    "fast_open":false
}

添加配置信息单用户

// 单用户
{
    "server":"::",
    "server_port":8388,
    "local_address": "127.0.0.1",
    "local_port":1080,
    "password":"123456789",
    "timeout":300,
    "method":"aes-256-cfb",
    "fast_open": false
}

参数说明:

server:Shadowsocks服务器地址 
server_port:Shadowsocks服务器端口 
local_address:   本地IP
local_port:本地端口 
password:Shadowsocks连接密码 
timeout:等待超时时间 
method:加密方式 
workers:          工作线程数 
fast_open:       true或false

配置自启动

1.新建启动脚本文件/etc/systemd/system/shadowsocks.service

sudo vim  /etc/systemd/system/shadowsocks.service

内容如下:

[Unit]
Description=Shadowsocks

[Service]
TimeoutStartSec=0
ExecStart=/usr/bin/ssserver -c /etc/shadowsocks/shadowsocks.json

[Install]
WantedBy=multi-user.target

2.启动Shadowsocks客户端

sudo systemctl enable shadowsocks.service
sudo systemctl start shadowsocks.service
sudo systemctl status shadowsocks.service

至此,Shadowsocks已配置完成。以下部分是对Shadowsocks服务器端的优化。

BBR系Google最新开发的TCP拥塞控制算法,目前有着较好的带宽提升效果,甚至不比老牌的锐速差。BBR在Linux kernel 4.9引入。首先检查服务器kernel版本:

uname -r

如果其显示版本在4.9.0之下,则需要升级Linux内核,否则请忽略下文。

更新包管理器:

sudo apt update

查看可用的Linux内核版本:

sudo apt-cache showpkg linux-image

找到一个你想要升级的Linux内核版本,如“linux-image-4.10.0-22-generic”:

sudo apt install linux-image-4.10.0-22-generic

等待安装完成后重启服务器:

sudo reboot

删除老的Linux内核:

sudo purge-old-kernels

开启BBR,运行lsmod | grep bbr,如果结果中没有tcp_bbr,则先运行:

modprobe tcp_bbrecho "tcp_bbr" >> /etc/modules-load.d/modules.conf

运行:

echo "net.core.default_qdisc=fq" >> /etc/sysctl.confecho "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf

运行:

sysctl -p

保存生效。运行:

sysctl net.ipv4.tcp_available_congestion_controlsysctl net.ipv4.tcp_congestion_control

若均有bbr,则开启BBR成功。

获取更多优质内容,请关注【青年码农】