安装
下载安装包dante-1.4.3.tar.gz
解压dante-1.4.3.tar.gz,并进入源码目录进行编译与安装
#安装依赖
yum install -y pam-devel
tar -zvxf dante-1.4.3.tar.gz
cd dante-1.4.3
#配置
./configure --prefix=/data/dante
#编译
make
#安装
make install
编辑配置文件并创建启动用户与启动脚本
cd /data/dante
#创建启动用户
useradd -s /sbin/nologin sock
#创建日志目录
mkdir log
#编辑配置文件sockd.conf
vi sockd.conf
配置
配置文件内容如下
internal: 172.16.0.14 port = 1000 #ip为当前内网IP
external: 172.16.0.14 #ip为能够访问外部的IP,在翼龙预置区环境中两个IP都是eth0网卡IP,CN2的IP以EIP方式绑定在eth0的IP上
external.rotation: same-same
socksmethod: pam.username
#socksmethod: none
clientmethod: none
user.privileged: root
user.notprivileged: sock
logoutput: /data/dante/log/dante.log
errorlog: /data/dante/log/dante-err.log
client pass {
from: 0/0 to: 0/0
}
socks pass {
from: 0.0.0.0/0 to: 33.1.0.0/16 #to后面跟内网网段
protocol: tcp udp
socksmethod: pam.username
#socksmethod: none
log: connect disconnect error iooperation
}
/data/dante目录下编辑systemctl启动脚本
touch danted.service
ln -s /data/dante/danted.service /usr/lib/systemd/system/danted.service
vi danted.service
编辑danted.service内容如下
[Unit]
Description=SOCKS version 5 proxy daemon (danted)
After=network.target
[Service]
Type=forking
#User=root
#Group=root
ExecStart=/data/dante/sbin/sockd -f /data/dante/sockd.conf -D
ExecReload=/bin/kill -HUP $MAINPID
Restart=on-failure
RestartSec=5
[Install]
WantedBy=multi-user.target
设置socks5代理账号密码,使用pam db管理账号密码,密码文件生成步骤如下
1、/data/dante下编辑密码文本passwd.txt如下一行为用户名,下一行为密码依次类推
vi /data/dante/passwd.txt
username
Pa$de245c2
运行命令在/data/dante目录下生成密码文件sockd.passwd.db并删除源文件
db_load -T -t hash -f passwd.txt sockd.passwd.db
rm passwd.txt
配置pam指定验证方式使用sockd.passwd.db
编辑/etc/pam.d/sockd
vi /etc/pam.d/sockd
内容如下
auth required pam_userdb.so db=/data/dante/sockd.passwd
account required pam_permit.so
配置日志滚动
创建日志滚动转储配置文件/etc/logrotate.d/danted编辑文件内容如下
/data/dante/log/*.log {
daily
size 10M
rotate 30
dateext
compress
missingok
notifempty
postrotate
systemctl reload danted
endscript
}
启动dante服务
systemctl enable danted.service
systemctl start danted.service
systemctl status danted.service