Linux下本地代理搭建与使用:使用shadowsocks-libev实现ss-local本地代理


debian10

本地运行

apt update
apt install shadowsocks-libev

修改配置文件

#环境变量
nano /etc/shadowsocks-libev/config.json

修改配置文件为你的服务端信息

{
    "server":"yourip",
    "mode":"tcp_and_udp",
    "server_port":yourport,
    "local_address": "0.0.0.0",
    "local_port":1080,
    "password":"passwd",
    "timeout":60,
    "method":"aes-256-gcm"
}

修改启动参数

nano /usr/lib/systemd/system/shadowsocks-libev.service

#默认的参数
ExecStart=/usr/bin/ss-server -c $CONFFILE $DAEMON_ARGS

#没有配置插件修改
ExecStart=/usr/bin/ss-local -c $CONFFILE $DAEMON_ARGS

#配置插件修改
ExecStart=/usr/bin/ss-local -c $CONFFILE --plugin /etc/shadowsocks-libev/v2ray-plugin_linux_amd64 --plugin-opts "tls;host=your.domain"

重载systemctl并启动shadowsocks-libev服务且查看服务状态

systemctl daemon-reload
systemctl start shadowsocks-libev.service
systemctl status shadowsocks-libev.service

代理检查

#输出客户端本机IP
curl http://httpbin.org/ip

#输出服务端代理IP
curl --socks5 127.0.0.1:1080 http://httpbin.org/ip

一切正常自启动

systemctl start shadowsocks-libev

docker-compose运行

新建文件夹并定位到此新建docker-compose.yml文件

mkdir -p /home/docker/ss-local && cd $_ && vi docker-compose.yml

默认文件,根据启动选自行更改
默认带v2ray-plugin插件运行

version: '3'
services:
  shadowsocks:
    container_name: ss-local
    image: shadowsocks/shadowsocks-libev
    ports:
      - '1080:1080'
    volumes:
      - './config:/etc/shadowsocks-libev'
    restart: always
    command: ss-local -c /etc/shadowsocks-libev/config.json --plugin /etc/shadowsocks-libev/v2ray-plugin_linux_amd64 --plugin-opts "tls;host=your.domain"

容器内的本地端口1080映射到宿主机1081端口
volumes是将当前目录下config文件夹里存放的config.json配置文件映射到容器内的/etc/shadowsocks-libev文件夹里
这里的config.json配置文件需要自行新建编辑

启动容器并进行宿主机代理检查

#启动容器,ss-local目录下执行
docker-compose up -d

#输出客户端本机IP
curl http://httpbin.org/ip

#输出容器内服务端代理IP
curl --socks5 127.0.0.1:1080 http://httpbin.org/ip

privoxy代理

在linux下,ss-local只提供socks5代理,但部分软件只支持http/https代理
我们可以使用打包好的shadowsocks-libev+privoxy代理,使容器内支持socks5/http/https代理,并映射到宿主机网络
docker-compose.yml配置文件

version: '3'

services:
  sslocal_privoxy:
    container_name: sslocal_privoxy
    image: sanbing666/sslocal_privoxy:latest
    environment:
      - SS_SERVER=
      - SERVER_PORT=
      - PASSWORD=
      - METHOD=
      - LOCAL_ADDRESS=0.0.0.0
      - SS_LOCAL_PORT=1080
      - OPTIONS=
    ports:
      - '1080:1080'
      - '1081:8118'
    restart: always

1080socks5端口
1081http端口
仅支持amd64和arm64带v2ray-plugin插件运行

然后启动容器并进行宿主机代理检查

#启动容器,ss-local目录下执行
docker-compose up -d

#输出客户端本机IP
curl http://httpbin.org/ip

#输出容器内服务端代理IP
curl --socks5 127.0.0.1:1080 http://httpbin.org/ip
curl -x http://127.0.0.1:1081 http://httpbin.org/ip

其它

要卸载/删除使用apt安装的包,可以使用以下命令:

sudo apt-get remove <包名>

该命令将从系统中删除指定的包,但不会删除其配置文件。如果您希望彻底删除包及其相关配置文件,则可以使用以下命令:

sudo apt-get purge <包名>

这将删除包及其相关配置文件,但不会删除该软件包依赖的其他软件包。

如果您还希望删除包及其依赖项,请使用以下命令:

sudo apt-get autoremove <包名>

这将删除指定包及其依赖项,但不会删除已经被其他软件包使用的共享库。如果您想要删除共享库,请使用以下命令:

sudo apt-get autoclean

这将删除系统中已经被删除的软件包的旧版本,以释放磁盘空间。

声明:吃蛋的小子|版权所有,违者必究|如未注明,均为原创|本网站采用BY-NC-SA协议进行授权

转载:转载请注明原文链接 - Linux下本地代理搭建与使用:使用shadowsocks-libev实现ss-local本地代理


我,俺床,咱手机。