5.10.2023

Eposta sunucusunu denemek

Yerel ağımızda (veya 25 tcp portu ile erişebildiğimiz bir ağda) bir eposta sunucumuz var. Bunun çalışıp çalışmadığını görmek istiyoruz. Eskiden Windows'ta gelen telnet (Linux'ta hala var) ile şu şekilde deniyorduk:

> telnet epostasunucusu.alanadi.com 25
helo metin
mail from:deneme@alanadi.com
rcpt to:alici@alanadi.com
subject:deneme
data
deneme mesaji
.
quit

Telnet artık varsayılan olarak Window'da gelmiyor. Yüklemek için "Windows Özelliklerini aç veya kapat"tan "Telnet İstemcisi"ni açmak gerek. Bunun yerine nmap paketi ile gelen ncat (netcat klonu) kullanılabilir.

> ncat -C epostasunucusu.alanadi.com 25
helo metin
mail from:deneme@alanadi.com
rcpt to:alici@alanadi.com
subject:deneme
data
deneme mesaji
.
quit

ncat, ikinci satırdan başlayarak (helo ile başlayan) quit komutuna kadar olan komutları bir metin dosyasının (smtp_komutlari.txt) içeriği olarak kaydetmemiz durumunda şu şekilde betiklerde kullanılabilir:

PS> gc .\smtp_komutlari.txt | ncat -C epostasunucusu.alanadi.com 25

Ya da Powershell'in imkanlarını kullanarak

PS> Send-MailMessage -From deneme@alandi.com -To alici@alanadi.com -Subject deneme -Body "deneme mesaji" -SmtpServer epostasunucusu.alanadi.com -Port 25

Ya da Powershell splatting kullanarak

PS> $SmtpParams = @{From="deneme@alanadi.com";To="alici@alanadi.com";Subject="deneme";"Body="deneme mesaji";SmtpServer="epostasunucusu.alanadi.com";Port=25}

PS> Send-MailMessage @SmtpParams

yapmak daha şık olabilir mi?

Hiç yorum yok: