在学习的过程中,无意间接触了VPS,也就是所谓的虚拟服务器。后续,机缘巧合下入了一个便宜的虚拟服务器,并成功搭建了一个socks5代理。记录下搭建的过程,以便后续查看。我才用的是shadowsocks,其他方法没有搭建成功,后续有时间再研究。

首先,你要拥有一台VPS,最好同时拥有IPV4和IPV6,这样方便后续的配置。我是基于python进行安装的。

一、在linux系统中安装

  1. 安装python和pip
    1
    2
    3
    4
    # 安装 Python 包管理工具
    sudo apt update && sudo apt install -y python3 python3-pip # Debian/Ubuntu
    # 或 for CentOS/RHEL:
    # sudo yum install -y python3 python3-pip
  2. 安装Shadowsocks
    1
    2
    # 安装 Shadowsocks 服务端
    sudo pip3 install shadowsocks

二、在linux系统中安装

安装完成后,检查 ssserver 是否可用:

1
ssserver --version

若输出版本信息,则安装成功。

三、使用

  1. 创建配置文件
    1
    2
    3
    4
    5
    6
    7
    8
    9
    {
    "server": "0.0.0.0",
    "server_port": 8388,
    "local_address": "127.0.0.1",
    "local_port": 1080,
    "password": "your_password",
    "timeout": 300,
    "method": "aes-256-cfb,chacha20-ietf-poly1305"
    }
  2. 启动服务
    1
    2
    3
    4
    5
    6
    7
    8
    # 前台运行(测试用)
    ssserver -c ss-config.json

    # 后台运行
    ssserver -c ss-config.json -d start

    # 停止服务
    ssserver -c ss-config.json -d stop

此外,可以进行开机自启(注册服务)。

  1. 创建新的服务文件 /etc/systemd/system/shadowsocks.service
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    [Unit]
    Description=Shadowsocks Server
    After=network.target

    [Service]
    ExecStart=/usr/local/bin/ssserver -c /etc/shadowsocks.json
    Restart=always
    User=root

    [Install]
    WantedBy=multi-user.target
  2. 保存文件后,在命令行中执行以下命令以启用服务
    1
    systemctl enable shadowsocks.service
  3. 启动和停止服务可以使用以下命令
    1
    2
    systemctl start shadowsocks.service
    systemctl stop shadowsocks.service

注:在nas中使用docker进行部署

  1. 打开容器,使用compansw文件创建docker镜像
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    version: '3'

    services:
    ss-libev:
    image: shadowsocks/shadowsocks-libev
    container_name: ss-libev
    ports:
    - "1080:1080" # SOCKS5 代理端口
    command: ss-local -c /config.json
    volumes:
    - /volume1/docker/shadowscoks/config/config.json:/config.json
    restart: always
  2. 在nas中的json文件
    1
    2
    3
    4
    5
    6
    7
    8
    9
    {
    "server": "vps.ip",
    "server_port": 8388,
    "local_address": "0.0.0.0",
    "local_port": 1080,
    "password": "your_password",
    "method": "chacha20-ietf-poly1305",
    "timeout": 300
    }
    结束。。。