前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Ubuntu 16.04下安装服务器端Shadowsocks

Ubuntu 16.04下安装服务器端Shadowsocks

原创
作者头像
青年码农
发布2020-10-13 13:07:28
6.1K0
发布2020-10-13 13:07:28
举报
文章被收录于专栏:青年码农

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

代码语言:javascript
复制
sudo apt install python3-pip

安装 shadowsocks

代码语言:javascript
复制
sudo pip3 install https://github.com/shadowsocks/shadowsocks/archive/master.zip

查看Shadowsocks版本:

代码语言:javascript
复制
sudo ssserver --version

新建配置文件

代码语言:javascript
复制
sudo mkdir /etc/shadowsockssudo 
vim /etc/shadowsocks/shadowsocks.json

添加配置信息多用户

代码语言:javascript
复制
// 多用户
{
    "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
}

添加配置信息单用户

代码语言:javascript
复制
// 单用户
{
    "server":"::",
    "server_port":8388,
    "local_address": "127.0.0.1",
    "local_port":1080,
    "password":"123456789",
    "timeout":300,
    "method":"aes-256-cfb",
    "fast_open": false
}

参数说明:

代码语言:javascript
复制
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

代码语言:javascript
复制
sudo vim  /etc/systemd/system/shadowsocks.service

内容如下:

代码语言:javascript
复制
[Unit]
Description=Shadowsocks

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

[Install]
WantedBy=multi-user.target

2.启动Shadowsocks客户端

代码语言:javascript
复制
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版本:

代码语言:javascript
复制
uname -r

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

更新包管理器:

代码语言:javascript
复制
sudo apt update

查看可用的Linux内核版本:

代码语言:javascript
复制
sudo apt-cache showpkg linux-image

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

代码语言:javascript
复制
sudo apt install linux-image-4.10.0-22-generic

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

代码语言:javascript
复制
sudo reboot

删除老的Linux内核:

代码语言:javascript
复制
sudo purge-old-kernels

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

代码语言:javascript
复制
modprobe tcp_bbrecho "tcp_bbr" >> /etc/modules-load.d/modules.conf

运行:

代码语言:javascript
复制
echo "net.core.default_qdisc=fq" >> /etc/sysctl.confecho "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf

运行:

代码语言:javascript
复制
sysctl -p

保存生效。运行:

代码语言:javascript
复制
sysctl net.ipv4.tcp_available_congestion_controlsysctl net.ipv4.tcp_congestion_control

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

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

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云服务器
云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档