Setting SMTP Email G Suite untuk Laravel di cPanel

Learn something new.

Kita dapat membuat email sendiri dengan nama domain yang kita mau tanpa harus memikirkan pembuatan email server sendiri yang lumayan ribet konfigurasinya. Belum lagi dipusingkan dengan email yang tidak sampai ke penerima karena spam ataupun diblok oleh penyedia email lain. Penyebab email tidak sampai dapat disebabkan banyak hal, misalnya reputasi domain email server yang tidak bagus atau ada konfigurasi yang kurang sesuai dengan Policy dari penyedia email seperti Gmail, Yahoo, Microsoft ataupun penyedia email. Ada konfigurasi yang kurang seperti DKIM, SPF, DMARC, PTR Record ataupun konfigurasi lain di  setingan domain email servernya yang dapat memusingkan orang yang tidak biasa setting email server sendiri.

Untuk mengatasi hal-hal tersebut di atas kita dapat menggunakan G Suite untuk menggunakan domain email sendiri.

Pastikan sudah membuat akun G Suite terlebih dahulu sebelum menggunakan Outgoing Email di aplikasi Laravel ini. Berikut langkah-langkah yang harus dilakukan :

Google Admin Console

Agar dapat menggunakan SMTP G Suite di laravel, fungsi Less secure app access harus diaktifkan terlebih dahulu. Untuk mengaktifkan fungsi ini agak berbeda dengan akun gmail biasa. Berikut langkah-langkah yang harus dilakukan
  • Masuk ke Google Admin Console dengan mengetik url https://admin.google.com lalu masukkan username dan password dari akun G Suite
  • Di menu Admin Console klik bagian SecurityAdmin Console GSuite Security
  • Klik menu Less secure apps.
  • Pilih pilihan kedua seperti gambar berikut. Setelah itu klik tombol Save.Admin Console GSuite Less Secure Apps

Gmail

Setelah fitur Less secure apps diallow di admin console, kita perlu mengubah konfigurasi less secure apps access untuk akun G Suite yang akan kita gunakan sebagai pengirim email di aplikasi.

  • Buka gmail dan masukkann username dan password akun tersebut.
  • Klik pada tulisan G Suite di pojok kanan atas, lalu klik lagi Manage Your Account Gmail.
  • Pilih menu Security, lalu klik pada tulisan Turn on access (not recommended) pada bagian Less secure access.Less Secure Apps Gmail
  • Ubah menjadi ON pada bagian Allow less secure appsAllow Less Secure Access App

cPanel

CPanel mempunyai security yang tidak mengijinkan smtp server lain dipasang di aplikasi. Security ini diatur di WHM Cpanel di bagian SMTP Restrictions. Jika kita tidak mematikan fitur ini makan di aplikasi laravel akan ditemui error seperti ini.

Connection couldn't established with host smtp.gmail.com : stream_socket_client: Peer Certificate CN=......
Untuk mengatasi hal tersebut berikut langkah-langkahnya
  • Masuk ke WHM Cpanel lalu masukkan username passwordnya
  • Pada bagian security center cari menu SMTP Restriction lalu klik tombol Disable.smtp restriction
Setelah fitur SMTP Restrictions kita disable, berikutnya kita pasang konfigurasi smtp gmail dari G Suite di aplikasi Laravel.

Konfigurasi Email di Laravel

Agar aplikasi dapat mengirimkan email menggunakan smtp dari gmail G Suite berikut langkah-langkahnya:
  • Buka file .env pada directory aplikasi laravel
  • Tambahkan code berikut di file tersebut
    MAIL_DRIVER=smtp MAIL_HOST=smtp.gmail.com MAIL_PORT=465 MAIL_USERNAME=user@customdomain.com MAIL_PASSWORD=password_email MAIL_ENCRYPTION=ssl MAIL_FROM_ADDRESS=user@customdomain.com

untuk bagian username dan password ganti dengan setingan akun yang kita gunakan.

  • Setelah itu kita perlu clear cache dari laravel agar perubahan di konfigurasi dapat diterapakan. Ketik perintah berikut di terminal/console
    php artisan config:cache
 

Semua konfigurasi sudah selesai kita lakukan. Silahkan tes fungsi pengiriman email dari aplikasi yang dikembangkan. Selamat mencoba!

 

Leave a Reply

Your email address will not be published. Required fields are marked *