Linux下搭建科学上网服务器

搭建步骤:

  1. 使用mobaxterm连接服务器,如果有其他连接工具,可以忽略此步骤

post image

点击左上角session,选择SSH,填写服务器ip,勾选指定用户,并填写用户名

在弹出界面中输入服务器登录密码,点击回车,即可登录

  1. Linux上安装ShadowSocks

由于Linux自带python,因此可以直接使用命令:

pip3 install shadowsocks

  1. 配置服务端

vi /etc/shadowsocks.json

先按下 i 键,再粘贴如下内容:

{

"server":"0.0.0.0",

"server_port":8388,

"local_address":"127.0.0.1",

"local_port":1080,

"password":"password",

"timeout":300,

"method":"aes-256-cfb"

}

再按下ESC,输入:wq,即可保存

server_port表示 对外提供服务的端口,注意防火墙要允许该端口开放

password 表示shaodowsocket 客户端连接需要的密码

  1. 配置服务为开机启动

vi /etc/systemd/system/shadowsocks.service

先按下 i 键,再粘贴如下内容:

[Unit]

Description=Shadowsocks

[Service]

TimeoutStartSec=0

ExecStart=/usr/local/bin/ssserver -c /etc/shadowsocks.json

[Install]

WantedBy=multi-user.target

再按下ESC,输入:wq,即可保存

启动shadowsocks服务:

systemctl start shadowsocks.service

查看shadowsocks服务状态:

systemctl status shadowsocks.service

状态如下,就表示启动成功

post image

遇到的问题:

1、AttributeError: /lib64/libcrypto.so.1.1: undefined symbol: EVP_CIPHER_CTX_cleanup

解决方案:

    vi 报错文件(如:vi /usr/local/lib/python3.6/site-packages/shadowsocks/crypto/openssl.py)

    输入冒号 :

    再输入%s/cleanup/reset/

    再点击ESC,输入:wq,即可保存

停止shadowsocks服务:

systemctl stop shadowsocks.service

如果是云服务器,需要开通防火墙,参考如下设置:

添加前面设置的端口8388

在Windows上连接shadowsocks代理服务器 请参考文章 https://www.jianshu.com/p/e6961182afbf

在Android上使用shadowsocks代理 请参考文章 https://www.jianshu.com/p/e7dc89c26b84

工具下载地址

  1. 远程连接工具 mobaxterm

https://mobaxterm.mobatek.net/download.html

  1. 代理连接工具 ShadowSocks

windows 下载页面地址:https://github.com/shadowsocks/shadowsocks-windows/releases/download/4.1.0/Shadowsocks-4.1.0.zip

Android 下载页面地址:https://github.com/shadowsocks/shadowsocks-android/releases/download/v4.1.0/shadowsocks-nightly-4.1.0.apk