Listmonk dengan Forward Email untuk Pengiriman Newsletter yang Aman

Panduan ini memberikan petunjuk langkah demi langkah kepada pengembang untuk menyiapkan biksu daftar, manajer milis dan buletin sumber terbuka yang kuat, untuk digunakan Teruskan Email sebagai penyedia SMTP. Kombinasi ini memungkinkan Anda mengelola kampanye secara efektif sekaligus memastikan pengiriman email yang aman, pribadi, dan andal.

  • biksu daftar: Menangani manajemen pelanggan, pengorganisasian daftar, pembuatan kampanye, dan pelacakan kinerja.
  • Teruskan Email: Bertindak sebagai server SMTP yang aman, menangani pengiriman email sebenarnya dengan fitur keamanan bawaan seperti enkripsi SPF, DKIM, DMARC, dan TLS.

Dengan mengintegrasikan keduanya, Anda mempertahankan kontrol penuh atas data dan infrastruktur Anda sambil memanfaatkan sistem pengiriman Forward Email yang tangguh.

  • Sumber Terbuka: Baik Listmonk maupun prinsip di balik Forward Email menekankan transparansi dan kontrol. Anda sendiri yang menjadi host Listmonk dan memiliki data Anda sendiri.
  • Berfokus pada Privasi: Forward Email dibangun dengan mengutamakan privasi, meminimalkan penyimpanan data, dan berfokus pada transmisi aman.
  • Hemat Biaya: Listmonk gratis, dan Forward Email menawarkan sejumlah paket gratis yang menguntungkan dan paket berbayar yang terjangkau, sehingga menjadikannya solusi yang ramah anggaran.
  • Skalabilitas: Listmonk berkinerja tinggi, dan infrastruktur Forward Email dirancang untuk pengiriman yang andal dalam skala besar.
  • Ramah Pengembang: Listmonk menawarkan API yang tangguh, dan Forward Email menyediakan integrasi SMTP dan webhook yang mudah dipahami.

Sebelum memulai, pastikan Anda memiliki hal berikut:

  • Server Pribadi Virtual (VPS) yang menjalankan distribusi Linux terbaru (disarankan Ubuntu 20.04+) dengan setidaknya 1 CPU dan RAM 1 GB (disarankan 2 GB).
  • Nama domain yang Anda kendalikan (diperlukan akses DNS).
  • Akun aktif dengan Teruskan Email.
  • Akar atau sudo akses ke VPS Anda.
  • Kemampuan dasar dalam operasi baris perintah Linux.

Langkah-langkah ini memandu Anda menginstal Listmonk menggunakan Docker dan Docker Compose di VPS Anda.

1. Perbarui Server Anda

Pastikan daftar paket sistem dan paket yang terinstal sudah yang terbaru.

sudo apt update && sudo apt upgrade -y

2. Instal Ketergantungan

Instal Docker, Docker Compose, dan UFW (Uncomplicated Firewall).

sudo apt install -y docker.io docker-compose ufw

3. Unduh Konfigurasi Listmonk

Buat direktori untuk Listmonk dan unduh file resmi docker-compose.yml mengajukan.

mkdir listmonk && cd listmonk
curl -Lo docker-compose.yml https://raw.githubusercontent.com/knadh/listmonk/master/docker-compose.yml

Berkas ini mendefinisikan wadah aplikasi Listmonk dan wadah basis data PostgreSQL yang diperlukan.

4. Konfigurasi Firewall (UFW)

Izinkan lalu lintas penting (SSH, HTTP, HTTPS) melalui firewall. Jika SSH Anda berjalan pada port nonstandar, sesuaikan sebagaimana mestinya.

sudo ufw allow ssh
sudo ufw allow http
sudo ufw allow https
sudo ufw enable

Konfirmasikan pengaktifan firewall saat diminta.

5. Konfigurasi Akses HTTPS

Menjalankan Listmonk melalui HTTPS sangat penting untuk keamanan. Anda memiliki dua pilihan utama:

Jika DNS domain Anda dikelola oleh Cloudflare, Anda dapat memanfaatkan fitur proksi mereka untuk HTTPS yang mudah.

  1. Titik DNS:Buat sebuah A rekam di Cloudflare untuk subdomain Listmonk Anda (misalnya, listmonk.yourdomain.com) yang menunjuk ke alamat IP VPS Anda. Pastikan Status proksi diatur untuk Diproksikan (awan oranye)
  2. Memodifikasi Docker Compose: Sunting docker-compose.yml file yang Anda unduh:
    sed -i 's/9000:9000/80:9000/' docker-compose.yml
    
    Hal ini membuat Listmonk dapat diakses secara internal pada port 80, yang kemudian dapat diproksi dan diamankan oleh Cloudflare dengan HTTPS.

Opsi B: Menggunakan Proxy Terbalik (Nginx, Caddy, dll.)

Alternatifnya, Anda dapat menyiapkan proxy terbalik seperti Nginx atau Caddy pada VPS Anda untuk menangani penghentian HTTPS dan permintaan proxy ke Listmonk (berjalan pada port 9000 secara default).

  • Pertahankan default ports: - "127.0.0.1:9000:9000" di dalam docker-compose.yml untuk memastikan Listmonk hanya dapat diakses secara lokal.
  • Konfigurasikan proxy terbalik pilihan Anda untuk mendengarkan pada port 80 dan 443, menangani akuisisi sertifikat SSL (misalnya, melalui Let's Encrypt), dan meneruskan lalu lintas ke http://127.0.0.1:9000.
  • Pengaturan proxy terbalik yang terperinci berada di luar cakupan panduan ini, tetapi banyak tutorial tersedia daring.

6. Jalankan Listmonk

Navigasi kembali ke Anda listmonk direktori (jika Anda belum ada di sana) dan mulai kontainer dalam mode terpisah.

cd ~/listmonk # Or the directory where you saved docker-compose.yml
docker compose up -d

Docker akan mengunduh gambar yang diperlukan dan memulai aplikasi Listmonk serta kontainer basis data. Mungkin perlu waktu satu atau dua menit untuk pertama kalinya.

Akses Listmonk: Anda sekarang dapat mengakses antarmuka web Listmonk melalui domain yang Anda konfigurasikan (misalnya, https://listmonk.yourdomain.com).

7. Konfigurasikan Forward Email SMTP di Listmonk

Berikutnya, konfigurasikan Listmonk untuk mengirim email menggunakan akun Teruskan Email Anda.

  1. Aktifkan SMTP dalam Email Terusan: Pastikan Anda telah membuat kredensial SMTP di dasbor akun Email Terusan Anda. Ikuti petunjuk Panduan Penerusan Email untuk mengirim email dengan domain khusus melalui SMTP jika Anda belum melakukannya.
  2. Konfigurasi Listmonk: Masuk ke panel admin Listmonk Anda.
    • Navigasi ke Pengaturan -> SMTP.

    • Listmonk memiliki dukungan bawaan untuk Forward Email. Pilih TeruskanEmail dari daftar penyedia, atau masukkan rincian berikut secara manual:

      PengaturanNilai
      Tuan rumahsmtp.forwardemail.net
      Pelabuhan465
      Protokol autentikasiLOGIN
      Nama belakangEmail Penerusan Anda Nama pengguna SMTP
      Kata sandiEmail Penerusan Anda Kata sandi SMTP
      TLSSSL/TLS
      Dari emailYang Anda inginkan From alamat (misalnya, newsletter@yourdomain.com). Pastikan domain ini dikonfigurasi dalam Teruskan Email.
    • Penting: Selalu gunakan Port 465 dengan SSL/TLS untuk koneksi aman dengan Forward Email. Jangan gunakan STARTTLS (port 587).

    • Klik Menyimpan.

  3. Kirim Email Uji Coba: Gunakan tombol "Kirim Email Uji" di halaman pengaturan SMTP. Masukkan alamat penerima yang dapat Anda akses dan klik MengirimVerifikasi bahwa email telah sampai di kotak masuk penerima.

8. Konfigurasikan Pemrosesan Pantulan

Pemrosesan pantulan memungkinkan Listmonk untuk secara otomatis menangani email yang tidak dapat dikirim (misalnya, karena alamat tidak valid). Email Terusan menyediakan webhook untuk memberi tahu Listmonk tentang pantulan.

Pengaturan Email Teruskan

  1. Masuk ke akun Anda Dasbor Penerusan Email.
  2. Navigasi ke Domain, pilih domain yang Anda gunakan untuk mengirim, dan buka Pengaturan halaman.
  3. Gulir ke bawah ke URL Webhook Pantul bagian.
  4. Masukkan URL berikut, ganti <your_listmonk_domain> dengan domain atau subdomain sebenarnya tempat instance Listmonk Anda dapat diakses:
    https://<your_listmonk_domain>/webhooks/service/forwardemail
    
    Contoh: https://listmonk.yourdomain.com/webhooks/service/forwardemail
  5. Gulir ke bawah lebih jauh ke Kunci Verifikasi Muatan Tanda Tangan Webhook bagian.
  6. Salinan kunci verifikasi yang dihasilkan. Anda akan memerlukannya di Listmonk.
  7. Simpan perubahan pada pengaturan domain Email Terusan Anda.

Pengaturan Listmonk

  1. Di panel admin Listmonk Anda, navigasikan ke Pengaturan -> Pantulan.
  2. Memungkinkan Aktifkan pemrosesan pantulan.
  3. Memungkinkan Aktifkan webhook bounce.
  4. Gulir ke bawah ke Penyedia Webhook bagian.
  5. Memungkinkan Teruskan Email.
  6. Tempelkan Kunci Verifikasi Muatan Tanda Tangan Webhook Anda menyalin dari dasbor Email Teruskan ke dalam Teruskan Kunci Email bidang.
  7. Klik Menyimpan di bagian bawah halaman.
  8. Pemrosesan pantulan sekarang dikonfigurasi! Saat Forward Email mendeteksi pantulan untuk email yang dikirim oleh Listmonk, ia akan memberi tahu instansi Listmonk Anda melalui webhook, dan Listmonk akan menandai pelanggan sebagaimana mestinya.
  9. Selesaikan langkah-langkah di bawah ini di Pengujian untuk memastikan semuanya berfungsi.

Berikut ini ikhtisar singkat fungsi inti Listmonk:

Buat Mailing List

  • Pergi ke Daftar di bilah sisi.
  • Klik Daftar Baru.
  • Isi rincian (Nama, Jenis: Publik/Pribadi, Deskripsi, Tag) dan Menyimpan.

Tambahkan Pelanggan

  • Navigasi ke Pelanggan bagian.
  • Anda dapat menambahkan pelanggan:
    • Secara manual: Klik Pelanggan Baru.
    • Impor: Klik Impor Pelanggan untuk mengunggah berkas CSV.
    • API: Gunakan API Listmonk untuk penambahan terprogram.
  • Tetapkan pelanggan ke satu atau beberapa daftar selama pembuatan atau impor.
  • Praktik Terbaik: Gunakan proses double opt-in. Konfigurasikan ini di bawah Pengaturan -> Keikutsertaan & Langganan.

Buat dan Kirim Kampanye

  • Pergi ke Kampanye -> Kampanye Baru.
  • Isi rincian kampanye (Nama, Subjek, Email asal, Daftar yang akan dikirimi).
  • Pilih jenis konten Anda (Teks Kaya/HTML, Teks Biasa, HTML Mentah).
  • Tulis konten email Anda. Anda dapat menggunakan variabel template seperti {{ .Subscriber.Email }} atau {{ .Subscriber.FirstName }}.
  • Selalu kirim email percobaan terlebih dahulu! Gunakan opsi "Kirim Tes" untuk melihat pratinjau email di kotak masuk Anda.
  • Jika sudah puas, klik Mulai Kampanye untuk mengirim segera atau menjadwalkannya untuk nanti.

  • Pengiriman SMTP: Kirim email uji secara berkala melalui halaman pengaturan SMTP Listmonk dan uji kampanye untuk memastikan email terkirim dengan benar.
  • Penanganan Pantulan: Kirim kampanye uji coba ke alamat email yang diketahui tidak valid (misalnya, bounce-test@yourdomain.com jika Anda tidak memiliki yang asli, meskipun hasilnya mungkin berbeda). Periksa statistik kampanye di Listmonk setelah beberapa saat untuk melihat apakah pantulan tersebut terdaftar.
  • Judul Email:Gunakan alat seperti Penguji Surat atau memeriksa header email secara manual untuk memverifikasi bahwa SPF, DKIM, dan DMARC lolos, yang menunjukkan pengaturan yang tepat melalui Teruskan Email.
  • Teruskan Log Email: Periksa log dasbor Email Terusan Anda jika Anda mencurigai masalah pengiriman berasal dari server SMTP.

  • Pembuatan templat: Listmonk menggunakan mesin templating Go. Jelajahi dokumentasinya untuk personalisasi tingkat lanjut: {{ .Subscriber.Attribs.your_custom_field }}.
  • API: Listmonk menyediakan REST API yang komprehensif untuk mengelola daftar, pelanggan, kampanye, templat, dan banyak lagi. Temukan tautan dokumentasi API di bagian bawah instans Listmonk Anda.
  • Bidang Kustom: Tentukan bidang pelanggan kustom di bawah Pengaturan -> Bidang Pelanggan untuk menyimpan data tambahan.
  • Webhook: Selain pentalan, Listmonk dapat mengirim webhook untuk kejadian lain (misalnya, langganan), yang memungkinkan integrasi dengan sistem lain.

Dengan memadukan kekuatan Listmonk yang dihosting sendiri dengan pengiriman Forward Email yang aman dan menghargai privasi, Anda menciptakan platform pemasaran email yang tangguh dan etis. Anda mempertahankan kepemilikan penuh atas data audiens Anda sekaligus mendapatkan keuntungan dari fitur keamanan otomatis dan pengiriman yang tinggi.

Pengaturan ini menyediakan alternatif layanan email berpemilik yang dapat diskalakan, hemat biaya, dan ramah pengembang, selaras sempurna dengan etos perangkat lunak sumber terbuka dan privasi pengguna.

Selamat mengirim! 🚀