dante安装配置和用法详解

Dante 是一个 SOCKS 代理服务器,支持 SOCKS4 和 SOCKS5 协议,常用于网络代理、穿透防火墙和访问受限资源。以下是详细的安装、配置和使用指南。


1. 安装 Dante

在 Ubuntu/Debian 上安装
sudo apt update 
sudo apt install dante-server
在 CentOS/RHEL 上安装

CentOS 的默认仓库中可能没有 Dante,可以从源代码编译:

sudo yum groupinstall "Development Tools"
sudo yum install gcc make openssl-devel libpam-devel
wget https://www.inet.no/dante/files/dante-<version>.tar.gz
tar -xvzf dante-<version>.tar.gz
cd dante-<version>
./configure
make
sudo make install

2. 配置 Dante

Dante 的主配置文件一般位于 /etc/danted.conf,如果从源代码编译安装,可能需要手动创建配置文件。

示例配置文件
# danted.conf

# 监听的地址和端口
logoutput: syslog /var/log/danted.log
internal: 0.0.0.0 port = 1080   # 内部网络接口
external: eth0                  # 外部网络接口

# 认证方式
method: username none           # 支持用户名密码认证和无认证

# 访问控制(客户端规则)
client pass {
    from: 0.0.0.0/0 to: 0.0.0.0/0
    log: connect disconnect
}

# 代理控制(服务端规则)
socks pass {
    from: 0.0.0.0/0 to: 0.0.0.0/0
    log: connect disconnect
}
  • internal: 指定代理服务监听的 IP 和端口。
  • external: 指定代理服务器的外部网络接口。
  • method: 指定认证方式,可选值包括 none(无认证)、username(用户名/密码认证)。
  • client passsocks pass: 配置访问规则。
日志文件权限

确保日志文件具有正确权限:

sudo touch /var/log/danted.log
sudo chmod 644 /var/log/danted.log

3. 启动和管理 Dante

启动服务

Ubuntu/Debian 使用 systemd

sudo systemctl start danted 
sudo systemctl enable danted

手动启动:

danted -f /etc/danted.conf
查看服务状态
sudo systemctl status danted
停止服务
sudo systemctl stop danted

4. 客户端连接使用

Dante 提供 SOCKS 代理功能,客户端可以通过以下方式连接:

Linux/Unix

设置环境变量:

export http_proxy=socks5://<代理IP>:1080 
export https_proxy=socks5://<代理IP>:1080
浏览器

在浏览器中设置代理,填写 SOCKS5 代理的 IP 和端口(例如 127.0.0.1:1080)。

命令行工具

使用 curl

curl -x socks5h://<代理IP>:1080 http://example.com

使用 ssh

ssh -o ProxyCommand="nc -x <代理IP>:1080 %h %p" <目标主机>

5. 配置高级功能

启用用户名/密码认证
  1. 在配置文件中启用 method: username
  2. 创建系统用户,用于认证:
    sudo useradd -m proxyuser 
    sudo passwd proxyuser
限制特定 IP 的访问

修改 client pass 规则:

client block {
    from: 192.168.1.0/24 to: 0.0.0.0/0
    log: connect error
}

client pass {
    from: 0.0.0.0/0 to: 0.0.0.0/0
    log: connect disconnect
}
绑定多网卡

支持多网卡时,可配置多个 internalexternal 接口:

internal: 192.168.1.1 port = 1080
external: eth1

internal: 192.168.2.1 port = 1080
external: eth2

6. 常见问题排查

1. 无法连接代理
  • 检查防火墙是否允许端口 1080:
    sudo ufw allow 1080
2. 服务无法启动
  • 查看日志文件 /var/log/danted.logjournalctl -xe
3. 客户端连接失败
  • 确认客户端配置了正确的 SOCKS 代理地址和端口。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值