ubuntu – stunnel:SSL到SSL? (对于smtp / imap)

前端之家收集整理的这篇文章主要介绍了ubuntu – stunnel:SSL到SSL? (对于smtp / imap)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
如何配置stunnel以进行SSL连接,然后再连接到其他服务器上的SSL端口?

这是我的设置:

我们的ISP服务器“邮件服务器”支持SSL上的smtp / imap. (不是开始.只是在ssl.)

但是,我有一堆客户机只能信任特定的内部根证书.因此,他们无法连接到“邮件服务器”.

对于这些客户端计算机,我想创建一个专用的“邮件隧道”主机,它使用stunnel监听内部签名的SSL证书,并使用第二个SSL连接将数据转发到“邮件服务器”.

可以这样做吗?

Ubuntu Server 10.10的具体步骤是什么? (我对持久性服务配置不太熟悉.)

谢谢

我不熟悉10.10的细节,但我会假设它与Debian非常接近.

你可以做的一件事,基本上是设置来分离stunnel配置.接受SSL,并将其转发到本地端口,另一个侦听该本地端口,然后与外部主机建立SSL连接.这两个只能绑定到环回接口,因此未加密的数据不会通过网络.请记住,您基本上是在对自己进行MITM攻击.当我帮助诊断一个人正在开发的Web服务时,我使用了这样的设置.

Debian / Ubuntu中的stunnel打包版本应该可以轻松实现.启动脚本基本上会为/ etc / stunnel4中的每个配置文件(* .conf)启动一个stunnel实例.因此,您可以将两个单独的配置放在/ etc / stunnel4中,生成密钥,重新启动stunnel,它应该可以工作.

所以这是第一个接受SSL的配置

; /etc/stunnel/ssl_in.conf
; Certificate/key is needed in server mode and optional in client mode
cert = /etc/stunnel/srv1.keys

; Some security enhancements for UNIX systems - comment them out on Win32
chroot = /var/lib/stunnel4/
setuid = stunnel4
setgid = stunnel4

; PID is created inside chroot jail
pid = /srv1.pid

debug = 4
output = /var/log/stunnel4/ssl_in.log

; Some performance tunings
socket = l:TCP_NODELAY=1
socket = r:TCP_NODELAY=1

[ssl_in_imap]
accept  = 993
connect = localhost:10993

[ssl_in_smtp]
accept  = 587
connect = localhost:10587

您创建传出连接的第二个实例.

; /etc/stunnel/ssl_out.conf
; Some security enhancements for UNIX systems - comment them out on Win32
chroot = /var/lib/stunnel4/
setuid = stunnel4
setgid = stunnel4

; PID is created inside chroot jail
pid = /clt1.pid

; Some performance tunings
socket = l:TCP_NODELAY=1
socket = r:TCP_NODELAY=1

client=yes
CAfile = clt1.ca
verify = 0


[ssl_out_imap]
accept  = 10993
connect = remote_server:993

[ssl_out_smtp]
accept  = 10587
connect = remote_server:10587

生成服务器的filename.keys.

# Create a new key and preparte a CSR 
openssl req -new -keyout filename.pem -out filename.csr
# Remove the passphrase from the key
openssl rsa -in filename.pem -out filename.key
# Self sign
openssl x509 -in filename.csr -out filename.cert -req -signkey filename.key -days 720
# combine files to get the keys file stunnel needs.
cat filename.key filename.cert > filename.keys

您的文件将如下所示.

-----BEGIN RSA PRIVATE KEY-----
MIICXAIBAAKBgQDkwzyKrPRXGyvEgITm/7oC9fDU4Y7L9mtMXmcIR98cp0g1ndcz
...
qhP3y97k67EVdSC+92pIGrAL7kBWckpJ2HP1El4KeZg=
-----END RSA PRIVATE KEY-----
-----BEGIN CERTIFICATE-----
MIICHzCCAYgCCQDq/33qh7Dq5TANBgkqhkiG9w0BAQUFADBUMQswCQYDVQQGEwJV
...
ebbhvhYLx1KkhD8/dXEbU0+kNg==
-----END CERTIFICATE-----
原文链接:https://www.f2er.com/ubuntu/348005.html

猜你在找的Ubuntu相关文章