|
|
第42行: |
第42行: |
| * Potatso Lite:Shadowsocks 及 Shadowsocksr 混淆 | | * Potatso Lite:Shadowsocks 及 Shadowsocksr 混淆 |
| * [https://itunes.apple.com/app/outline-app/id1356177741 outline]:App Store | | * [https://itunes.apple.com/app/outline-app/id1356177741 outline]:App Store |
|
| |
| == 服务端 ==
| |
| 一般安装在 Linux 中,也有各个不同的实现版本,还有不同的混淆方式,插件等。
| |
|
| |
| 推荐使用:
| |
| Shadowsocks-libev 是用纯C编写的,依赖于libev。它被设计为shadowsocks协议的轻量级实现,以尽可能降低资源使用率。
| |
|
| |
| 参考:
| |
| 1、[https://github.com/shadowsocks/shadowsocks-libev shadowsocks-libev GitHub页面]【有关于各个版本、各个安装方式的说明】
| |
|
| |
| === 安装 ===
| |
| ----
| |
| 服务端的安装也有不同方式:一件安装脚本、编译安装、snap 等等。
| |
| 【当前使用了 shadowsocks-libev.sh 的一键安装脚本】
| |
|
| |
| ==== 一键安装脚本 ====
| |
| 【以下使用“[https://teddysun.com/ 秋水逸冰]”的脚本([https://github.com/teddysun/shadowsocks_install/tree/master 多个可选的脚本])】
| |
|
| |
| 参见:
| |
| 1、 [https://huhao.ai/ke-xue-shang-wang-shadowsocks-quan-xi-lie-pei-zhi-zong-jie/ 科学上网1:shadowsocks 全系列配置总结]
| |
| 2、 [https://www.xiaohuai.com/3948/ CentOS下shadowsocks-libev一键安装脚本]
| |
| 3、 [https://www.xlovett.com/1288.html shadowsocks-libev个人自用版v3.3.5]
| |
|
| |
| # 安装:
| |
| #: <syntaxhighlight lang="bash" highlight="">
| |
| # 获取脚本:(四合一脚本)
| |
| wget --no-check-certificate -O shadowsocks-all.sh https://raw.githubusercontent.com/teddysun/shadowsocks_install/master/shadowsocks-all.sh
| |
|
| |
| # 脚本可执行权限:
| |
| chmod +x shadowsocks-all.sh
| |
|
| |
| # Shadowsocks-libev 脚本:
| |
| ./shadowsocks-all.sh 2>&1 | tee shadowsocks-all.log
| |
| </syntaxhighlight>
| |
| #* wget 默认下载到当前目录。
| |
| #* 安装位置:“'''/usr/local/bin'''”。(ss-local、ss-manager、ss-nat、ss-redir、ss-server、ss-tunnel 等都位于此处)
| |
| #* 安装日志位于:“/var/log/shadowsocks-all.log”
| |
| #* 本脚本安装完成后,会将 shadowsocks-libev 加入开机自启动。
| |
| # 配置:
| |
| #: <syntaxhighlight lang="bash" highlight="">
| |
| vi /etc/shadowsocks-libev/config.json
| |
|
| |
| ...
| |
| </syntaxhighlight>
| |
| # 操作:
| |
| #: <syntaxhighlight lang="bash" highlight="">
| |
| # 启动|停止|重启|状态
| |
| # 等效于:
| |
| # /etc/init.d/shadowsocks start|stop|restart|status
| |
| systemctl start|stop|restart|status shadowsocks
| |
| </syntaxhighlight>
| |
| # 更新:
| |
| #: 先:卸载旧版本;再:重新执行如上安装步骤;
| |
| # 卸载:
| |
| #: <syntaxhighlight lang="bash" highlight="">
| |
| # 四合一脚本
| |
| ./shadowsocks-all.sh uninstall
| |
| </syntaxhighlight>
| |
|
| |
|
| |
| :* 如果使用其他脚本,也类似:
| |
| :*: <syntaxhighlight lang="bash" highlight="">
| |
| # Shadowsocks-python 脚本:
| |
| # 安装
| |
| wget --no-check-certificate https://raw.githubusercontent.com/teddysun/shadowsocks_install/master/shadowsocks.sh
| |
| chmod +x shadowsocks.sh
| |
| ./shadowsocks.sh 2>&1 | tee shadowsocks.log
| |
| # 卸载
| |
| ./shadowsocks.sh uninstall
| |
|
| |
| # Shadowsocks-libev 脚本:
| |
| # 安装
| |
| wget --no-check-certificate https://raw.githubusercontent.com/teddysun/shadowsocks_install/master/shadowsocks-libev.sh
| |
| chmod +x shadowsocks-libev.sh
| |
| ./shadowsocks-libev.sh 2>&1 | tee shadowsocks-libev.log
| |
| # 卸载
| |
| ./shadowsocks-libev.sh uninstall
| |
| </syntaxhighlight>
| |
|
| |
| ==== 仓库安装 ====
| |
| 由于在 COPR (Cool Other Package Repo) 中已经有打包好的 shadowsocks-libev,因此我们只需几条命令便能完成安装。
| |
|
| |
| 参考:
| |
| 1、[https://zzz.buzz/zh/gfw/2017/08/14/install-shadowsocks-server-on-centos-7/ CentOS/RHEL 7 下安装 Shadowsocks 服务端]
| |
|
| |
| # 安装:
| |
| #: <syntaxhighlight lang="bash" highlight="">
| |
| cd /etc/yum.repos.d/
| |
| curl -O https://copr.fedorainfracloud.org/coprs/librehat/shadowsocks/repo/epel-7/librehat-shadowsocks-epel-7.repo
| |
| yum install -y shadowsocks-libev
| |
| </syntaxhighlight>
| |
| #* 安装完成后,会有 ss-local, ss-manager, ss-nat, ss-redir, ss-server, ss-tunnel 命令可用。
| |
| #*: 其中,作为服务器,我们需要的是 '''ss-server''',不过后文中我们将通过服务文件启动 Shadowsocks,而不会直接与 ss-server 命令打交道。
| |
| #* 如果安装报类似如下错误:
| |
| #*: <syntaxhighlight lang="bash" highlight="">
| |
| Error: Package: shadowsocks-libev-3.1.3-1.el7.centos.x86_64 (librehat-shadowsocks)
| |
| Requires: libsodium >= 1.0.4
| |
| Error: Package: shadowsocks-libev-3.1.3-1.el7.centos.x86_64 (librehat-shadowsocks)
| |
| Requires: mbedtls
| |
| </syntaxhighlight>
| |
| #*: 说明系统没有启用 '''EPEL''' (Extra Packages for Entreprise Linux)。那么我们需要首先启用 EPEL,再安装 shadowsocks-libev:
| |
| #*: <syntaxhighlight lang="bash" highlight="">
| |
| yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
| |
| yum install -y shadowsocks-libev
| |
| </syntaxhighlight>
| |
| # 验证安装:
| |
| #: 在继续后文的配置之前,我们先在命令行中执行一次 ss-server 命令,以确认 shadowsocks 及其依赖已正确安装。
| |
| #: <syntaxhighlight lang="bash" highlight="">
| |
| ss-server
| |
| </syntaxhighlight>
| |
| #* 如果执行 ss-server 报错:“ss-server: error while loading shared libraries: libmbedcrypto.so.0: cannot open shared object file: No such file or directory”,
| |
| #*: 使用 root 身份执行以下命令即可:
| |
| #*: <syntaxhighlight lang="bash" highlight="">
| |
| cd /usr/lib64
| |
| ln -s libmbedcrypto.so.1 libmbedcrypto.so.0
| |
| </syntaxhighlight>
| |
| # 配置:
| |
| #: <syntaxhighlight lang="bash" highlight="">
| |
| vi /etc/shadowsocks-libev/config.json
| |
|
| |
| ...
| |
| </syntaxhighlight>
| |
| # 操作:
| |
| #: <syntaxhighlight lang="bash" highlight="">
| |
| # 启动|停止|重启|状态
| |
| systemctl start|stop|restart|status shadowsocks-libev
| |
|
| |
| # 开机启动
| |
| systemctl enable shadowsocks-libev
| |
|
| |
| # 查看 Shadowsocks 服务的全部日志:
| |
| journalctl -u shadowsocks-libev
| |
| </syntaxhighlight>
| |
| # 更新:
| |
| #: <syntaxhighlight lang="bash" highlight="">
| |
| yum update shadowsocks-libev
| |
| </syntaxhighlight>
| |
| # 卸载:
| |
| #: <syntaxhighlight lang="bash" highlight="">
| |
| yum erase shadowsocks-libev
| |
| </syntaxhighlight>
| |
|
| |
| ==== snap ====
| |
| 通过 Snap 应用商店安装 Shadowsocks-libev 是'''官方推荐'''的方式。【Snap 是安装最新二进制文件的推荐方法。】
| |
|
| |
|
| |
| Snap 是 Canonical 推出的一种新的软件打包格式,彻底解决linux依赖性的问题,Snap 软件包拥有更加稳定和安全的特性。snap也就是安装snap软件包的命令。
| |
|
| |
| Note:Snap 适用于 CentOS 7.6+、Red Hat Enterprise Linux 7.6+,可从企业 Linux 额外软件包(EPEL)存储库获得。
| |
|
| |
| 参考:
| |
| 1、Snap 参考:[https://snapcraft.io/core Snap 官网]
| |
| 2、[https://gfw.report/blog/ss_tutorial/zh/ 如何部署一台抗封锁的Shadowsocks-libev服务器]
| |
| 3、[https://zh.codepre.com/how-to-24542.html 如何在CentOS上设置Shadowsocks-libev代理服务器]
| |
|
| |
| 安装:
| |
| # 安装 snap:
| |
| ## Enable snapd:
| |
| ##: <syntaxhighlight lang="bash" highlight="">
| |
| # 将 EPEL 存储库添加到系统中
| |
| sudo yum install epel-release
| |
|
| |
| # 安装 snap
| |
| sudo yum install snapd
| |
|
| |
| # 安装后,需要启用管理主 snap 通信套接字的 systemd 单元:
| |
| sudo systemctl enable --now snapd.socket
| |
|
| |
| # 要启用 Classic snap 支持,需要在 /var/lib/snapd/snap 和 /snap 之间创建符号链接:
| |
| sudo ln -s /var/lib/snapd/snap /snap
| |
|
| |
| # 请注销并重新登录,或重新启动系统,以确保 snap 的路径得到正确更新。
| |
| systemctl reboot
| |
| </syntaxhighlight>
| |
| ## Install core:
| |
| ##: <syntaxhighlight lang="bash" highlight="">
| |
| sudo snap install core
| |
| </syntaxhighlight>
| |
| # 从 snap 安装 Shadowsocks:
| |
| #: <syntaxhighlight lang="bash" highlight="">
| |
| # Stable channel
| |
| sudo snap install shadowsocks-libev
| |
|
| |
| # Edge channel:
| |
| sudo snap install shadowsocks-libev --edge
| |
| </syntaxhighlight>
| |
| #* snap 软件包一般安装在 /snap 目录下;
| |
| #* 安装完成,显示有关 shadowsocks-libev:
| |
| #*: <syntaxhighlight lang="bash" highlight="">
| |
| snap info shadowsocks-libev
| |
| </syntaxhighlight>
| |
| # 配置:
| |
| #: <syntaxhighlight lang="bash" highlight="">
| |
| sudo vim /var/snap/shadowsocks-libev/common/server-config.json
| |
| # sudo vim /var/snap/shadowsocks-libev/common/etc/shadowsocks-libev/config.json
| |
|
| |
| ...
| |
| </syntaxhighlight>
| |
| #* 配置文件位置变了,不同于直接安装时的 /etc/shadowsocks/config.json;
| |
| # 操作:
| |
| #: <syntaxhighlight lang="bash" highlight="">
| |
| # 启动|停止|重启|状态
| |
| sudo systemctl start|stop|restart|status snap.shadowsocks-libev.ss-server-daemon.service
| |
|
| |
| # 开机启动
| |
| sudo systemctl enable snap.shadowsocks-libev.ss-server-daemon.service
| |
| </syntaxhighlight>
| |
| # 更新:
| |
| #* Snap 会每天自动更新通过其安装的软件,因此通常情况下你不需要手动更新。
| |
| #* 如若需要手动更新:
| |
| #*: <syntaxhighlight lang="bash" highlight="">
| |
| sudo snap refresh
| |
| </syntaxhighlight>
| |
| # 卸载:
| |
| #: <syntaxhighlight lang="bash" highlight="">
| |
| sudo snap remove shadowsocks-libev
| |
| </syntaxhighlight>
| |
| #* 可能还需要手工清理相关配置文件??
| |
|
| |
| :* '''将 Shadowsocks-libev 服务器作为系统服务运行''':
| |
| :*: 我们可以手动运行Shadowsocks-libev服务器,但是为它创建一个 systemd 服务单元更为方便,因此可以在启动时自动启动它:
| |
| :*: <syntaxhighlight lang="bash" highlight="">
| |
| sudo vim /etc/systemd/system/shadowsocks-libev.service
| |
|
| |
|
| |
| # 在此文件中添加以下行
| |
| [Unit]
| |
| Description=Shadowsocks-Libev Server
| |
| After=network-online.target
| |
|
| |
| [Service]
| |
| Type=simple
| |
| ExecStart=/usr/bin/snap run shadowsocks-libev.ss-server -c /var/snap/shadowsocks-libev/common/server-config.json
| |
| Restart=always
| |
| RestartSec=2
| |
|
| |
| [Install]
| |
| WantedBy=multi-user.target
| |
| </syntaxhighlight>
| |
| :*: 则可更方便地进行服务单元管理:
| |
| <syntaxhighlight lang="bash" highlight="">
| |
| # 启动|停止|重启|状态
| |
| sudo systemctl start|stop|restart|status shadowsocks-libev.service
| |
|
| |
| # 开机启动
| |
| sudo systemctl enable shadowsocks-libev.service
| |
| </syntaxhighlight>
| |
|
| |
| ==== 编译安装 ====
| |
| 如果您使用的是 CentOS 7,则需要安装预要求才能从源代码生成。
| |
|
| |
| In general, you need the following build dependencies:
| |
| autotools (autoconf, automake, libtool)
| |
| gettext
| |
| pkg-config
| |
| libmbedtls
| |
| libsodium
| |
| libpcre3 (old pcre library)
| |
| libev
| |
| libc-ares
| |
| asciidoc (for documentation only)
| |
| xmlto (for documentation only)
| |
|
| |
| 参考:
| |
| 1、[https://www.jianshu.com/p/dea2d322b4a9 CentOS7下手动编译安装Shadowsocks-libev最新版]
| |
| 2、[http://fhaoer.com/20190617-shadowsocks-libev/ 安装并配置shadowsocks-libev(yum源方式)]
| |
|
| |
| # 安装要求:
| |
| #: <syntaxhighlight lang="bash" highlight="">
| |
| # 安装 epel 源
| |
| 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
| |
|
| |
| # 还需要使用到 git
| |
| yum install git
| |
| </syntaxhighlight>
| |
| # 下载源码:
| |
| #: <syntaxhighlight lang="bash" highlight="">
| |
| git clone https://github.com/shadowsocks/shadowsocks-libev.git
| |
|
| |
| cd shadowsocks-libev
| |
|
| |
| git submodule update --init --recursive
| |
| </syntaxhighlight>
| |
| # 编译源码并安装:
| |
| #: <syntaxhighlight lang="bash" highlight="">
| |
| # 确保是在 ss 目录中执行
| |
| cd shadowsocks-libev
| |
|
| |
| # 编译
| |
| ./autogen.sh && ./configure && make
| |
|
| |
| # 安装(root 权限下)
| |
| sudo make install
| |
| </syntaxhighlight>
| |
| #* 程序默认安装到 /usr/local 下面(./autogen.sh 脚本指定了安装路径),如果需要覆盖安装目录,请使用“./configure --prefix=<路径>”。
| |
| # 创建配置文件:
| |
| #: <syntaxhighlight lang="bash" highlight="">
| |
| mkdir -p /etc/shadowsocks-libev
| |
|
| |
| vim /etc/shadowsocks-libev/config.json
| |
|
| |
| ...
| |
| </syntaxhighlight>
| |
| # 操作:
| |
| #: <syntaxhighlight lang="bash" highlight="">
| |
| # 启动|停止|重启|状态
| |
| systemctl start|stop|restart|status shadowsocks-libev
| |
|
| |
| # 开机启动
| |
| systemctl enable shadowsocks-libev
| |
| </syntaxhighlight>
| |
| #* 安装过程中,如果对配置有任何更改,只要重启下服务就行了。
| |
| # 更新:
| |
| #* 获取新的源码重新编译。
| |
| # 卸载:(两种情况)
| |
| ## 如果 Makefile 文件有 uninstall 命令:安装目录中执行“make uninstall”:
| |
| ##: <syntaxhighlight lang="bash" highlight="">
| |
| # 确保是在 ss 目录中执行
| |
| cd shadowsocks-libev
| |
|
| |
| # 安装(root 权限下)
| |
| sudo make uninstall
| |
| </syntaxhighlight>
| |
| ## 如果 Makefile 文件没有 uninstall 命令:需要删除软件相关的目录、文件:
| |
| ### 如果在“./configure”的时候加了“--prefix=<路径>”参数:将改路径文件(安装目录)删除即可;
| |
| ### 否则,只能根据 make install 中的步骤(或查看 makefile 文件),看它把什么文件拷到哪,一一删除。
| |
| #* '''所以,即使安装完成,其源码文件最好也不要轻易删除'''。
| |
|
| |
| === 配置 ===
| |
| ----
| |
| ss 使用的配置文件路径,可以在其 ss 服务配置文件(位于“'''/usr/lib/systemd/system/'''”或“'''/etc/rc.d/init.d'''”)中找到。
| |
|
| |
| 如,“shadowsocks”:
| |
| ==============================================================
| |
| ...
| |
| # Author: Teddysun <i@teddysun.com>
| |
| if [ -f /usr/local/bin/ss-server ]; then
| |
| DAEMON=/usr/local/bin/ss-server
| |
| elif [ -f /usr/bin/ss-server ]; then
| |
| DAEMON=/usr/bin/ss-server
| |
| fi
| |
| NAME=Shadowsocks-libev
| |
| CONF=/etc/shadowsocks-libev/config.json 【!】
| |
| ...
| |
| ==============================================================
| |
|
| |
|
| |
| (以 Shadowsocks-libev 为例:)
| |
| : <syntaxhighlight lang="bash" highlight="">
| |
| vi /etc/shadowsocks-libev/config.json
| |
|
| |
| {
| |
| "server":"0.0.0.0",
| |
| "server_port":*****,
| |
| "password":"***************",
| |
| "timeout":300,
| |
| "user":"nobody",
| |
| "method":"********-****-********",
| |
| "fast_open":true,
| |
| "nameserver":"8.8.8.8",
| |
| "mode":"tcp_and_udp"
| |
| }
| |
| </syntaxhighlight>
| |
|
| |
| === 加速 ===
| |
| ----
| |
| 安装锐速需要降级系统内核,而安装 Google BBR 则需要升级系统内核,故两者不能同时安装。
| |
|
| |
| ==== 锐速 ====
| |
| BBR、BBR PLUS、魔改BBR、锐速的脚本安装要求:
| |
| 1、适用架构:KVM / Xen,不支持OpenVZ(OVZ)。
| |
| 2、适用系统:CentOS 7、Debian 8、Debian 9、Ubuntu 16.04、Ubuntu 18.04。
| |
|
| |
| [https://www.91yun.co/serverspeeder91yun 锐速安装一键包]
| |
|
| |
| 安装:(现在不知道哪一个可以用)
| |
| : <syntaxhighlight lang="bash" highlight="">
| |
| # 使用一键安装脚本
| |
| wget -N --no-check-certificate https://raw.githubusercontent.com/91yun/serverspeeder/master/serverspeeder-all.sh && bash serverspeeder-all.sh
| |
|
| |
| # 或:
| |
| wget -N --no-check-certificate https://github.com/91yun/serverspeeder/raw/master/serverspeeder.sh && bash serverspeeder.sh
| |
| </syntaxhighlight>
| |
| * 不需要任何配置。<s><code>“vi /serverspeeder/etc/config”</code></s>
| |
|
| |
| 卸载:
| |
| : <syntaxhighlight lang="bash" highlight="">
| |
| chattr -i /serverspeeder/etc/apx* && /serverspeeder/bin/serverSpeeder.sh uninstall -f
| |
| </syntaxhighlight>
| |
|
| |
| 操作:
| |
| : <syntaxhighlight lang="bash" highlight="">
| |
| service serverSpeeder start|stop|restart|status
| |
|
| |
| # 或
| |
|
| |
| /serverspeeder/bin/serverSpeeder.sh start|stop|restart|status
| |
| </syntaxhighlight>
| |
|
| |
| ==== BBR ====
| |
| TCP BBR 是一种 TCP 拥塞控制算法,可以大大提高连接速度。
| |
|
| |
| Google 开源了其 TCP BBR 拥塞控制算法,并提交到了 Linux 内核,从 4.9 开始,Linux 内核已经用上了该算法。根据以往的传统,Google 总是先在自家的生产环境上线运用后,才会将代码开源,此次也不例外。
| |
|
| |
| 安装/开启:【两种情况】
| |
| # (如果 Linux 内核在 4.9 以下)需要安装并开启 BBR:(可使用一键安装脚本)
| |
| #: <syntaxhighlight lang="bash" highlight="">
| |
| # 安装并开启 BBR(同样是使用脚本)
| |
| wget --no-check-certificate https://github.com/teddysun/across/raw/master/bbr.sh && chmod +x bbr.sh && ./bbr.sh
| |
| </syntaxhighlight>
| |
| # (如果 Linux 内核在 4.9 及以上)只需开启 BBR 即可:
| |
| ## 修改配置文件:
| |
| ##: <syntaxhighlight lang="bash" highlight="">
| |
| vim /etc/sysctl.conf
| |
|
| |
| # 添加如下内容
| |
| net.core.default_qdisc = fq
| |
| net.ipv4.tcp_congestion_control = bbr
| |
| </syntaxhighlight>
| |
| ## 加载系统参数:
| |
| ##: <syntaxhighlight lang="bash" highlight="">
| |
| sysctl -p
| |
| </syntaxhighlight>
| |
|
| |
| 验证 BBR 是否已经开启:
| |
| # <syntaxhighlight lang="bash" highlight="">
| |
| # 检查使用中的拥塞控制算法
| |
| sysctl net.ipv4.tcp_available_congestion_control
| |
| </syntaxhighlight>
| |
| #: 若返回如下信息则说明已开启:
| |
| #: <syntaxhighlight lang="bash" highlight="">
| |
| net.ipv4.tcp_available_congestion_control = bbr
| |
| </syntaxhighlight>
| |
| # <syntaxhighlight lang="bash" highlight="">
| |
| lsmod | grep bbr
| |
| </syntaxhighlight>
| |
| #: 若返回如下信息则说明已开启:
| |
| #: <syntaxhighlight lang="bash" highlight="">
| |
| tcp_bbr 16384 1
| |
| tcp_bbr 20480 0
| |
| </syntaxhighlight>
| |
|
| |
| ==== TFO ====
| |
| 您可以通过启用 TCP 快速打开('''fast_open''')来加快 Shadowsocks 的速度。 TCP 是面向连接的协议,这意味着只能在建立连接后才能交换数据,这是通过三向握手完成的。换句话说,传统上,数据只能在三向握手完成后才能交换。
| |
|
| |
| TCP 快速打开('''TFO''')是一种机制,它允许在三向握手完成之前交换数据,最多可节省 1 个往返时间(RTT)。
| |
|
| |
| 从 3.7 版开始,TCP 快速打开支持已合并到 Linux 内核,从 3.13 版开始默认启用。
| |
|
| |
| 检查服务器的 TFO 配置:(从 3.13 版内核开始默认启用)
| |
| : <syntaxhighlight lang="bash" highlight="">
| |
| cat /proc/sys/net/ipv4/tcp_fastopen
| |
| </syntaxhighlight>
| |
| :* '''0''':表示禁用。
| |
| :* '''1''':表示已启用传出连接(作为客户端)。
| |
| :* '''2''':表示已启用传入连接(作为服务器)。
| |
| :* '''3''':表示已启用传出和传入连接。
| |
|
| |
|
| |
| 启用 TCP 的“fast_open”:
| |
| # 修改配置文件:
| |
| #: <syntaxhighlight lang="bash" highlight="">
| |
| sudo vi /etc/sysctl.conf
| |
|
| |
| net.ipv4.tcp_fastopen=3 # 插入内容
| |
| </syntaxhighlight>
| |
| # 重新加载 sysctl 设置以使更改生效:
| |
| #: <syntaxhighlight lang="bash" highlight="">
| |
| sudo sysctl -p
| |
| </syntaxhighlight>
| |
| # 在 Shadowsocks 服务器配置文件中启用 TFO:
| |
| #: <syntaxhighlight lang="bash" highlight="">
| |
| vi /etc/shadowsocks-libev/config.json
| |
|
| |
| "fast_open": true # 插入内容
| |
| </syntaxhighlight>
| |
|
| |
| === 混淆插件 ===
| |
| ----
| |
| 参考:
| |
| 1、[https://bingliang.me/posts/2019-03-20-shadowsocks-libev-with-v2ray-plugin/ 配置 shadowsocks-libev 加 v2ray-plugin]
| |
| 2、[https://cokebar.info/archives/1988 添加混淆: simple-obfs + shadowsocks for Windows]
| |
| ??????????????????
| |
|
| |
| === 其他步骤 ===
| |
| ----
| |
| # 开放端口:
| |
| #: <syntaxhighlight lang="bash" highlight="">
| |
| # 添加防火墙规则
| |
| firewall-cmd --permanent --zone=public --add-port=39451/tcp
| |
| firewall-cmd --permanent --zone=public --add-port=39451/udp
| |
|
| |
| # 更新防火墙规则
| |
| firewall-cmd --reload
| |
|
| |
| # 启动|关闭|重新启动 防火墙 (有上一步则不需要)
| |
| systemctl [start|stop|restart] firewalld.service
| |
| </syntaxhighlight>
| |
|
| |
|
| == 客户端 == | | == 客户端 == |