4、TLS支持
通過修改/usr/lib/ssl/misc/CA.pll腳本實現,以下修改后CA1.pl和未修改CA.pl之間的對比:
以下為引用的內容:
***CA.pl
---CA1.pl
***************
***59,69****
}elsif(/^-newcert$/){
#createacertificate
!system("$REQ-new-x509-keyoutnewreq.pem-outnewreq.pem$DAYS");
$RET=$?;
print"Certificate(andprivatekey)isinnewreq.pem/n"
}elsif(/^-newreq$/){
#createacertificaterequest
!system("$REQ-new-keyoutnewreq.pem-outnewreq.pem$DAYS");
$RET=$?;
print"Request(andprivatekey)isinnewreq.pem/n";
}elsif(/^-newca$/){
---59,69----
}elsif(/^-newcert$/){
#createacertificate
!system("$REQ-new-x509-nodes-keyoutnewreq.pem-outnewreq.pem$DAYS");
$RET=$?;
print"Certificate(andprivatekey)isinnewreq.pem/n"
}elsif(/^-newreq$/){
#createacertificaterequest
!system("$REQ-new-nodes-keyoutnewreq.pem-outnewreq.pem$DAYS");
$RET=$?;
print"Request(andprivatekey)isinnewreq.pem/n";
}elsif(/^-newca$/){
現在就可以使用修改的CA1.pl來簽發證書:
以下為引用的內容:
#cd/usr/local/ssl/misc
#./CA1.pl-newca
#./CA1.pl-newreq
#./CA1.pl-sign
#cpdemoCA/cacert.pem/etc/postfix/CAcert.pem
#cpnewcert.pem/etc/postfix/cert.pem
#cpnewreq.pem/etc/postfix/key.pem
修改main.cf,添加:
以下為引用的內容:
smtpd_tls_cert_file=/etc/postfix/cert.pem
smtpd_tls_key_file=/etc/postfix/privkey.pem
smtpd_use_tls=yes
tls_random_source=dev:/dev/urandom
tls_daemon_random_source=dev:/dev/urandom
重起postfix后就可以看到250-STARTTLS
很多郵件客戶端對TLS的支持并不是非常好,建議使用stunnel來實現相應的smtp和pop3加密。
#apt-getinstallstunnel
證書:
以下為引用的內容:
#opensslreq-new-x509-days365-nodes-config/etc/ssl/openssl.cnf-outstunnel.pem-keyoutstunnel.pem
#opensslgendh512>>stunnel.pem
服務端:
以下為引用的內容:
#stunnel-d60025-r25-snobody-gnogroup
#stunnel-d60110-r110-snobody-gnogroup
如果使用-npop3等參數就只能用郵件客戶端收信。
客戶端:
建一個stunnel.conf文件:
以下為引用的內容:
client=yes
[pop3]
accept=127.0.0.1:110
connect=192.168.7.144:60110
[smtp]
accept=127.0.0.1:25
connect=192.168.7.144:60025
然后啟動stunnel.exe,在郵件客戶端的smtp和pop3的服務器都填127.0.0.1就可以了,這樣從你到郵件服務器端的數據傳輸就讓stunnel給你加密了。
5、測試用戶
以下為引用的內容:
#mkdir-p/home/vmail/test.org/san/
#chown-Rnobody.nogroup/home/vmail
#chmod-R700/home/vmail
mysql>usepostfix
mysql>insertintotransportsetdomain='test.org',destination='
virtual:';
mysql>insertintouserssetemail='[email protected]',clear='test',name='',uid='65534',gid='6553-4',
homedir='home/vmail',maildir='test.org/san/';
然后就可以使用客戶端收發郵件,記得用戶名是email地址。
新聞熱點
疑難解答