自己做酸酸乳

酸酸乳是什么

酸酸乳的拼音缩写是 SSR,你懂得。现在你有一个代理服务器在香港,比如你现在想要访问 google,你的电脑发出请求,流量通过 socks5 连接发到你在香港的服务器上,然后再由你在香港的服务器去访问 google,再把访问结果传回你的电脑,这就是酸酸乳的功能。

二进制安装

安装 go-shadowsocks2

  • 购买一台 国外 服务器,执行以下操作

  • 下载 go-shadowsocks2

    1
    2
    3
    4
    wget https://github.com/shadowsocks/go-shadowsocks2/releases/download/v0.0.11/shadowsocks2-linux.gz
    gzip -d shadowsocks2-linux.gz
    chmod +x shadowsocks2-linux
    mv shadowsocks2-linux /usr/bin/go-shadowsocks2
  • 运行方式一:直接后台运行

    1
    2
    # AEAD_CHACHA20_POLY1305是加密协议,your-password是ssr连接时的密码,监听端口8488
    nohup go-shadowsocks2 -s 'ss://AEAD_CHACHA20_POLY1305:your-password@:8488' -verbose > shadowsocks2.log 2>&1 &
  • 运行方式二:使用 systemd 进程守护运行
    • 创建配置文件: /usr/lib/systemd/system/go-shadowsocks2.service

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      [Unit]
      Description=go-shadowsocks2 daemon

      [Service]
      Type=simple
      # AEAD_CHACHA20_POLY1305是加密协议,your-password是ssr连接时的密码,监听端口8488
      ExecStart=/usr/bin/go-shadowsocks2 -s 'ss://AEAD_CHACHA20_POLY1305:your-password@:8488' -verbose
      Restart=always
      RestartSec=30s
      ExecStop=/usr/bin/killall go-shadowsocks2

      [Install]
      WantedBy=multi-user.target
    • 运行

      1
      2
      sudo systemctl enable go-shadowsocks2
      sudo systemctl start go-shadowsocks2

通常情况下到这一步就可以享受自己做的酸酸乳了,但伟大的墙在特殊时期会封锁得十分严格,故需更加强健则可通过 frp 等内网穿透工具进行穿透并加密。

搭建 FRP

搭建 frps
  • 购买一台 国内 服务器,执行以下操作

  • 下载 frps

    1
    2
    3
    4
    wget https://github.com/fatedier/frp/releases/download/v0.29.0/frp_0.29.0_linux_amd64.tar.gz
    tar zxvf frp_0.29.0_linux_amd64.tar.gz
    mv frp_0.29.0_linux_amd64 /etc/frp
    mv /etc/frp/frp{c,s} /usr/bin
  • 编写配置文件:/etc/frp/frps.ini

    1
    2
    3
    4
    5
    # frps.ini
    [common]
    bind_port = 7000
    # 值与frpc保持一致即可
    token = 07401b.f395accd246ae52d
  • 运行方式一:直接后台运行

    1
    nohup frps -c /etc/frp/frps.ini > frps.log 2>&1 &
  • 运行方式二:使用 systemd 进程守护运行
    • 创建配置文件: /usr/lib/systemd/system/frps.service

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      [Unit]
      Description=FRP Server Daemon

      [Service]
      Type=simple
      ExecStartPre=-/usr/sbin/setcap cap_net_bind_service=+ep /usr/bin/frps
      ExecStart=/usr/bin/frps -c /etc/frp/frps.ini
      Restart=always
      RestartSec=20s
      User=nobody
      PermissionsStartOnly=true
      LimitNOFILE=infinity

      [Install]
      WantedBy=multi-user.target
    • 运行

      1
      2
      sudo systemctl enable frps
      sudo systemctl start frps
搭建 frpc
  • 国外 服务器执行以下操作

  • 下载frpc

    1
    2
    3
    4
    wget https://github.com/fatedier/frp/releases/download/v0.29.0/frp_0.29.0_linux_amd64.tar.gz
    tar zxvf frp_0.29.0_linux_amd64.tar.gz
    mv frp_0.29.0_linux_amd64 /etc/frp
    mv /etc/frp/frp{c,s} /usr/bin
  • 编写配置文件:/etc/frp/frpc.ini

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    # frpc.ini
    [common]
    server_addr = 国内服务器IP
    server_port = 7000
    # 值与frps保持一致即可
    token = 07401b.f395accd246ae52d
    login_fail_exit = false
    [ssr]
    type = tcp
    local_ip = 127.0.0.1
    local_port = 8488
    remote_port = 8488
    # 加密
    use_encryption = true
    # 压缩
    use_compression = true
  • 运行方式一:直接后台运行

    1
    nohup frpc -c /etc/frp/frpc.ini > frpc.log 2>&1 &
  • 运行方式二:使用 systemd 进程守护运行
    • 创建配置文件: /usr/lib/systemd/system/frpc.service

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      [Unit]
      [Unit]
      Description=FRP Client Daemon
      After=network.target
      Wants=network.target

      [Service]
      Type=simple
      ExecStart=/usr/bin/frpc -c /etc/frp/frpc.ini
      Restart=always
      RestartSec=20s
      User=nobody
      LimitNOFILE=infinity

      [Install]
      WantedBy=multi-user.target
    • 运行

      1
      2
      sudo systemctl enable frpc
      sudo systemctl start frpc

此时将酸酸乳连接的IP改为国内服务器IP即可正常食用。

Docker 安装

安装 go-shadowsocks2

1
2
docker run --name go-shadowsocks2 -d -p 8488:8488 \
mritd/shadowsocks2 -s 'ss://AEAD_CHACHA20_POLY1305:your-password@:8488' -verbose

搭建 frp

搭建 frps
  • 在国内购买一台服务器,运行以下命令
1
2
3
4
5
docker run --name frps \
--network host -d --restart=always \
-e FRPS_PORT=7000 \
-e FRPS_TOKEN=07401b.f395accd246ae52d \
dockerhub.azk8s.cn/setzero/frps:0.29.0
搭建 frpc
  • 在搭建酸酸乳的服务器,运行以下命令
1
2
3
4
5
6
7
8
9
10
11
12
docker run --name frpc --link go-shadowsocks2 \
--network host -d --restart=always \
-e FRPS_ADDR=国内服务器IP \
-e FRPS_PORT=7000 \
-e FRPS_TOKEN=07401b.f395accd246ae52d \
-e FRPC_SECTION=ssr \
-e FRPC_ADDR=go-shadowsocks2 \
-e FRPC_LOCAL_PORT=8488 \
-e FRPC_REMOTE_PORT=8488 \
-e USE_ENCRYPTION=true \
-e USE_COMPRESSION=true \
dockerhub.azk8s.cn/setzero/frpc:0.29.0
setzero wechat