stunnel
跳转到导航
跳转到搜索
示例
注意,v3 和 v4 的配置有很大的不同。[1]
作为服务端
v3,监听 54 端口,将请求转到未加密的本地 53 端口:
sudo stunnel3 -d 0.0.0.0:54 -r localhost:53 -p /etc/stunnel/stunnel.pem
# -p 似乎放在后边就会使用默认的 /etc/stunnel/stunnel.pem
# -P '' 说明不要创建 pid 文件
stunnel3 -p /home/lilydjwg/stunnel.pem -d 0.0.0.0:2224 -r localhost:2223 -P '' -o stunnel.log
作为客户端
v4,监听 5353 端口,将请求加密后转到远程服务器的 54 端口:
compression = zlib
foreground = yes
output = /dev/stdout
client = yes
pid = /tmp/stunnel.pid
# or will output to syslog
output = /tmp/stunnel.log
syslog = no
[name]
accept = 5353
connect = server.com:54
这个相当于以下 socat 命令:
socat tcp-listen:5353,fork openssl:server.com:54,verify=0
内部原理
stunnel 在每个请求到来时会 fork 一个进程来处理。