Kamis, 21 November 2024

Send Only Mail Server with Exim4 and Gmail SMTP


1720634468_gmail.jpg

Sebuah web server secara umum akan menyediakan sistem pengiriman email, istilahnya mail-server, salahsatunya berguna untuk menjalankan script pengiriman email dari sebuah halaman web maupun situs, misalnya: fasilitas contact form, kolom feedback atau notifikasi melalui email.

Membangun sebuah mail-server secara mandiri, dalam arti fasilitas mail-server secara lengkap (kirim dan terima email), seperti contoh: gmail, yahoo mail, hotmail, dan lain-lain, akan membutuhkan resource yang sangat besar dan proses pembuatannya akan sangat menyita waktu, terutama karena prosesnya sangat banyak, itupun akan mustahil dilakukan kalau kita menggunakan dynamic ip pada home server kita. Nah, untuk menyingkat waktu dan menyederhanakan pembuatan mail-system dalam web server khususnya untuk menyiasati penggunaan dynamic ip pada home server project ini, maka kita bisa menggunakan jasa pihak ketiga, dalam hal ini kita akan menggunakan smtp gmail (google), istilahnya SMARTHOST.

Home server dalam project kita ini menggunakan OS Linux Ubuntu 14.04, oleh karena itu kita akan install aplikasi Exim4 sebagai mail system dalam web server, istilah teknisnya MTA (Mail Transfer Agent). Kalau sebelumnya kita sudah install Vesta Panel, maka Exim4 sudah termasuk di dalamnya sehingga kita hanya perlu seting konfigurasinya saja. Tetapi kalau belum sempat install Exim4, maka kita perlu install terlebih dulu, berikut langkah-langkahnya:

  1. Install Exim4 dengan perintah sebagai berikut:
    sudo apt-get install exim4 mailutils
    
  2. Seting konfigurasi Exim4 dengan perintah sebagai berikut: 
    sudo dpkg-reconfigure exim4-config
    exim02.jpg
  3. Pilih mail sent by smarthost; received via SMTP or fetchmail
    exim02.jpg
  4. Isikan nama host komputer server anda, contoh: panel
    Untuk mengetahui nama host komputer server anda, ketikkan perintah berikut:
    sudo hostname -f
  5. IP-addresses silakan isikan 127.0.0.1 karena kita hanya menggunakan IP address v4 saja

    Kalau anda akan menggunakan IP address v4 dan v6, silakan isi: 127.0.0.1 ; ::1 tetapi saya sarankan gunakan hanya ipv4 saja karena kita memakai dynamic ip dalam home server tersebut yang mana ipv6 kemungkinan belum support.
  6. Other destinations for which.... silakan dikosongi
  7. Machines to relay mail for.... silakan dikosongi
  8. IP address outgoing smarthost.... silakan diisi smtp milik google atau gmail
  9. Hide local mail name.... pilih No
  10. Keep number of DNS-queries.... pilih No

  11. Delivery method for local mail.... pilih mbox format

  12. Split configurations into small files.... pilih Yes

Setelah konfigurasi exim4 selesai, selanjutnya kita buat setingan akun dan password gmail yang akan kita pakai dalam konfigurasi exim4 ini. Langkah-langkahnya adalah sebagai berikut:

  • Ketikkan perintah berikut di terminal console/ssh console:
    sudo nano /etc/exim4/passwd.client
    
    Lalu isikan teks berikut:
    *.google.com:your_username@gmail.com:password_here

Catatan:
Apabila password gmail anda mengandung special karakter, silakan diganti dulu tanpa mengurangi kekuatan password tersebut.
Oya, jangan lupa edit dulu hostname komputer server:

sudo nano /etc/hosts

Edit menjadi seperti berikut: 

127.0.0.1 localhost.localdomain localhost
192.168.0.123 panel.yourdomain.com panel
...

IP address 192.168.0.123 silahkan diganti sesuai dengan ip address komputer server anda, begitupun dengan hostname panel serta domain silahkan sesuaikan dengan hostname dan domain komputer server anda.

Ujicoba mail system dengan mencoba kirim pesan ke akun email anda, perintahnya adalah sebagai berikut:

echo "testing message from home server" | mail -s "ujicoba" username@yourdomain.com

Periksa log file mail system: 

tail /var/log/exim4/mainlog

Cek isi file log tersebut, bila bagian akhir menyebutkan completed berarti mail-system telah jalan. Silakan cek juga akun email yang dikirimi pesan tadi apakah email masuk atau tidak.
Dan yang terakhir silakan reboot komputer server anda. Selamat mencoba.