2012-05-09 13 views
11

'u desteklemek için Curl SMTP komut satırı argümanları nelerdir? E-postaları göndermek için Curl.exe aracını kullanıyorum. En büyük e-posta sunucularını desteklemem gerekiyor. GMail aşağıdaki bağlantı noktalarını ve Kimlik Doğrulama yöntemlerini gösterir. (Bazen Açık TLS denen)GMail TLS/STARTTLS vs SSL

  • TLS/STARTTLS: port 587
  • SSL kullanan (bazen Örtülü TLS olarak adlandırılır): Ben kullanarak aşağıdaki çalışmak Açık TLS aldık 465

port kullanır komut satırı:

C:\>curl smtp://smtp.gmail.com:587 -v --mail-from "[email protected]" --mail-rcpt 
"[email protected]" --ssl -u [email protected]:password -T "c:\test.txt" -k --anyauth 

Ben ImplicitTLS işe gitmek için aşağıdaki denedi, ama öyle değil.

C:\>curl smtp://smtp.gmail.com:465 -v --mail-from "[email protected]" --mail-rcpt 
"[email protected]" --ssl -u [email protected]:password -T "c:\test.txt" -k --anyauth 

SSL/Implicit TLS'nin çalışması için uygun komut satırı parametreleri nelerdir?

+0

Sen örtük/açık takas ettik: Eğer * dediğim zaman BAŞLANGIÇ * SSL/TLS, açıkça söylemek başlatın. Her ikisinin de genel olarak SSL veya TLS kullanabileceğini unutmayın. (Bu konuda SF'ye uzun bir cevap yazdım (http://serverfault.com/a/368574/47187).) – Bruno

+0

Başlıklar için teşekkürler. Açık ve zımni açıklamaları değiştirdim. –

+0

'smtps: // ...' kullanmayı denediniz mi? – Bruno

cevap

9

SMTPS için smtps:// kullanın (yani, varolan bir SSL/TLS bağlantısının üstündeki SMTP).

Bu çalışır: (sürüm düşürme saldırıları aksi mümkün olurdu) olmasını beklediğiniz zamanda ben de emin SSL/TLS kullanılır hale getirmek için açık STARTTLS bağlantısı için --ssl-reqd kullanacağı

curl smtps://smtp.gmail.com:465 -v 

. Ya -k kullanmayın

, sunucu sertifikasını kontrol edin: http://curl.haxx.se/docs/sslcerts.html