Tüm Ürünler
Search
Belge Merkezi

Direct Mail:SMTP kullanarak e-posta gönderme

Son Güncelleme:Oct 04, 2026

Direct Mail, SMTP'yi destekler; bu sayede herhangi bir dilin SMTP kitaplığını veya standart komut satırı araçlarını kullanarak programatik olarak e-posta gönderebilirsiniz.

Ön koşullar

SMTP üzerinden e-posta göndermeden önce gönderen adresiniz için bir SMTP parolası ayarlayın.

  1. Direct Mail konsolu üzerinde oturum açın.

  2. Sol gezinme bölmesinde Sender Addresses seçeneğine tıklayın.

  3. Kullanmak istediğiniz gönderen adresini bulun ve İşlemler sütunundaki Set SMTP Password seçeneğine tıklayın.

  4. Bir SMTP parolası girin ve OK seçeneğine tıklayın.

SMTP gönderimi nasıl çalışır?

Basit Posta Aktarım Protokolü (SMTP), istemci ile sunucu arasındaki komut ve yanıt alışverişi yoluyla mesajları iletir. İstemci bir komut gönderir; sunucu ise bir onay döndürür. Gönderen bu süreci kontrol eder.

Protokolün tam teknik özellikleri için bkz. RFC5321.

SMTP sunucuları iki kategoriye ayrılır:

  • smtpd (posta gönderme sunucusu) — giden mesajları kabul etmeden önce gönderenin kimlik doğrulamasını gerektirir.

  • mx (posta alma sunucusu) — harici alan adlarından yerel kullanıcılara teslim edilen gelen mesajları kabul eder.

Direct Mail sunucusu bir smtpd sunucusudur. Kimlik doğrulama kullanıcı adı, gönderen adresiyle tam olarak eşleşmelidir ve parola, konsolda ayarladığınız paroladır.

Uygulama kodundan e-posta göndermek için ham SMTP komutları yerine dilinize uygun bir SMTP kitaplığı kullanın. Bkz. SMTP çağrı örnekleri.

Bağlantı ayrıntıları


Parametre


Değer


Sunucu


smtpdm.aliyun.com


Bağlantı noktası (şifrelenmemiş)


80


Bağlantı noktası (TLS/SSL)


465


Kimlik Doğrulama


Base64 ile kodlanmış kullanıcı adı ve parola içeren AUTH LOGIN


Kullanıcı Adı


Gönderen adresiniz (örneğin, sender@example.com)


Parola


Direct Mail konsolunda ayarlanan SMTP parolası

SMTP oturum akışı

Her SMTP oturumu aşağıdaki sırayı izler:

  1. telnet (şifrelenmemiş) veya openssl s_client (TLS) kullanarak SMTP sunucusuna bağlanın.

  2. İstemciyi tanımlamak ve yetenekleri müzakere etmek için EHLO komutunu gönderin.

  3. AUTH LOGIN komutunu gönderin ve Base64 ile kodlanmış kimlik bilgilerini sağlayın.

  4. Gönderen adresini belirtmek için MAIL FROM komutunu gönderin.

  5. Alıcı adresini belirtmek için RCPT TO komutunu gönderin.

  6. Mesaj başlıklarını ve gövdesini göndermek için DATA komutunu gönderin.

  7. Mesaj gövdesinin sonunu işaret etmek için tek başına bir nokta olan . karakterini gönderin.

  8. Oturumu kapatmak için QUIT komutunu gönderin.

Örnekler

Aşağıdaki örnekler, komut satırı araçları kullanılarak gerçekleştirilen tam SMTP oturumlarını gösterir. S: sunucu yanıtını; C: ise istemci komutunu temsil eder. Linux'ta değerleri Base64 ile kodlamak için echo -n Content|base64 komutunu kullanın.

Şifrelenmemiş (bağlantı noktası 80)

$telnet smtpdm.aliyun.com 80
S:220 smtp.aliyun-inc.com MX AliMail Server(127.0.0.1)
C:EHLO test.com
S:250-smtp.aliyun-inc.com
S:250-8BITMIME
S:250-AUTH=PLAIN LOGIN XALIOAUTH
S:250-AUTH PLAIN LOGIN XALIOAUTH
S:250-PIPELINING
S:250 DSN
C:AUTH LOGIN
S:334 dXNlcm5hbWU6
C:YSoqKkBleGFtcGxlLm5ldA==         Note: The Base64 encoding of the username a***@example.net.
S:334 UGFzc3dvcmQ6
C:dGVzdA==                     Note: The Base64 encoding of the user password test.
S:235 Authentication successful
C:MAIL FROM: <a***@example.net>   Note: Enclose the sender address in angle brackets (<>).
S:250 Mail Ok
C:RCPT TO: <a***@example.net>
S:250 Rcpt Ok
C:DATA
S:354 End data with <CR><LF>.<CR><LF>
C:subject: test
C:from: <a***@example.net>
C:to: <a***@example.net>
C:
C:test
C:.
S:Data Ok: queued as freedom ###envid=148316944
C:QUIT
S:221 Bye

Şifrelenmiş (bağlantı noktası 465, TLS)

Öncelikle OpenSSL ile bağlantı kurun. Kullanmak istediğiniz TLS sürümüne göre aşağıdaki komutlardan birini seçin:

openssl s_client -connect smtpdm.aliyun.com:465 -crlf
or
openssl s_client -connect smtpdm.aliyun.com:465 -tls1 -cipher AES128-SHA -crlf
openssl s_client -connect smtpdm.aliyun.com:465 -tls1_1 -cipher AES128-SHA -crlf
openssl s_client -connect smtpdm.aliyun.com:465 -tls1_2 -cipher AES128-GCM-SHA256 -crlf
openssl s_client -connect smtpdm.aliyun.com:465 -tls1_3 -cipher AES128-GCM-SHA256 -crlf

OpenSSL bağlantısı kurulduktan sonra aynı pencerede aşağıdaki komutları satır satır girin:

$openssl s_client -connect smtpdm.aliyun.com:465 -crlf
***
***
***
S:220 DirectMail Smtpd Server(127.0.0.1)
C:EHLO test.com
S:250-smtp.aliyun-inc.com
S:250-8BITMIME
S:250-AUTH=PLAIN LOGIN XALIOAUTH
S:250-AUTH PLAIN LOGIN XALIOAUTH
S:250-PIPELINING
S:250 DSN
C:AUTH LOGIN
S:334 dXNlcm5hbWU6
C:YSoqKkBleGFtcGxlLm5ldA==          Note: The Base64 encoding of the username a***@example.net.
S:334 UGFzc3dvcmQ6
C:dGVzdA==                        Note: The Base64 encoding of the user password test.
S:235 Authentication successful
C:MAIL FROM: <a***@example.net>  Note: Enclose the sender address in angle brackets (<>).
S:250 Mail Ok
C:rcpt to: <a***1@example.net>  Note: Use lowercase for rcpt to. Uppercase may not be recognized.
S:250 Rcpt Ok
C:DATA
S:354 End data with <CR><LF>.<CR><LF>
C:subject: test
C:from: <a***@example.net>
C:to: <a***1@example.net>
C:
C:test
C:.
S:250 Data Ok: queued as freedom ###envid=600000105713504612
C:QUIT
S:DONE

Mesaj gövdesi ve MIME

Yukarıdaki örnekler düz metin gövdesi kullanır. Zengin metinli e-postalar (HTML, ekler, kodlanmış konular) için mesajı Çok Amaçlı İnternet Posta Uzantıları (MIME) teknik özelliklerine göre biçimlendirin. Doğru MIME biçimlendirmesi, alıcının posta sunucusunun mesajı spam olarak işaretleme olasılığını azaltır.

MIME teknik özellikleri için bkz. RFC2045. MIME ile kodlanmış mesajlar oluşturmak için Direct Mail SMTP örneklerindeki dile özel kitaplıkları da kullanabilirsiniz.

Adım adım bir örnek için bkz. SMTP kullanarak eki olan bir e-postayı nasıl gönderirim?