Linux üzerinden komutlarla e-mail göndermek için sSMTP programı kullanılabilir. Peki bu ne işe yarayacak? Ben bu işlemi uzun sürecek işlemlerim tamamlandığında kendime e-mail atmak için kullanacağım. Başka bir kullanım amacı da mesela sunucu da sürekli çalışması gereken bir programın yada sunucunun kendisinin çalışması durduğunda haberdar olmak olabilir.
İlk adım olarak ssmtp: Authorization failed hatası ile karşılaşmamak adına daha önce yazdığım şu blog yazısındaki Gmail ayarlarını yapmalısınız. Üreteceğiniz uygulama şifresine aşağıda ihtiyacınız olacak. Ardından devam ediyoruz:
Öncelikle sSMTP programını kuruyoruz.
sudo apt-get install ssmtp
Sonrasında /etc/ssmtp/ssmtp.conf dosyasını sudo ile açıp aşağıdaki şekilde düzenliyoruz. İlk satırda ilgili yere gmail adresinizi, ikinci satıra uygulama şifresini yazıyorsunuz. Gerisi olduğu gibi kalıyor.
AuthUser=........@gmail.com AuthPass=........ FromLineOverride=YES mailhub=smtp.gmail.com:587 UseSTARTTLS=YES
Daha sonra aşağıdaki gibi bir text dosyası oluşturuyoruz. Bu dosya bizim göndereceğimiz mail ile ilgili bilgileri içeriyor. Dosyanın ismi mail.txt olsun.
To: myemailaddress@gmail.com Subject: konu E-mail içeriği burada olacak.
Bu text dosyasındaki bilgileri kullanarak e-mail göndermek için aşağıdaki komutu kullanıyoruz.
ssmtp gonderilecekadres@blablamail.com < mail.txt
Ben text dosyası kullanmak istemiyorum direkt olarak bir satırla işimi halletmek istiyorum derseniz aşağıdaki komutu da kullanabilirsiniz. Yalnız bu durumda konu kısmı boş kalıyor ve konu yok şeklinde kalıyor.
echo -e "mail içeriği burada olacak" | mail nuhazginoglu@gmail.com