Debian 配置socks代理

业务上测试需要用到socks5代理,简单记录下搭建过程,使用linux,ubuntu22系统,使用软件Dante
可以配置Dante代理服务器使用多个端口,并且为不同的端口配置不同的认证方法。下面是如何实现这一点的具体步骤。

安装 Dante

如果还没有安装Dante,可以使用以下命令安装:

sudo apt update
sudo apt install dante-server

配置 Dante

编辑Dante的配置文件 /etc/danted.conf

sudo vim /etc/danted.conf

在配置文件中,我们将定义多个 internal 和 external 条目,并为每个端口配置不同的认证方法。如果只需要无认证的,下面的注释掉即可,以下是示例配置:

logoutput: stderr

internal: 0.0.0.0 port=8888
external: eth0
socksmethod: username
user.privileged: root
user.unprivileged: nobody
client pass {
    from: 0.0.0.0/0 to: 0.0.0.0/0
}

socks pass {
    from: 0.0.0.0/0 to: 0.0.0.0/0
}

在这个配置中:
- 端口 8888 需要用户名和密码认证(method: username)。

创建用户账户(如果启用了用户名和密码认证)

如果你为某个端口启用了用户名和密码认证,需要在系统中创建用户。可以使用以下命令:

sudo adduser proxyuser

按照提示设置用户密码。

启动Dante服务

配置完成后,启动Dante服务:

sudo systemctl start danted

设置Dante在系统启动时自动启动:

sudo systemctl enable danted

验证Dante代理

确保Dante代理正在运行并监听指定的端口:

sudo netstat -tulnp | grep danted

你应该能看到Dante监听在端口 8888

配置防火墙(可选)

如果你的系统启用了防火墙(如 ufw),需要允许代理端口的流量:

sudo ufw allow 8888/tcp
sudo ufw allow 8888/tcp

测试代理

在客户端机器上配置代理设置指向Dante服务器的IP和相应的端口,并测试访问互联网以确认代理是否正常工作。

通过这种方式,可以在同一个Dante服务器上使用不同的端口来提供不同的认证和访问控制策略。