GeoNetAgent, LDAPWeb, server-audit, server-connection
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

7.7 KiB

Konsep — POP3 Drain cPanel → Mailcow (inbox tunggal)

Terakhir Diperbarui: 2026-07-03
Status: Rencana arsitektur — keputusan user
Konteks: MX geonet.co.id tetap cPanel; inbox canonical di Mailcow sync.geonet.co.id


Ringkasan keputusan

Aspek Rencana
MX geonet.co.id Tetap cPanel (belum cutover)
Inbox cPanel Kosong — hanya staging sementara
POP3 drain VM/service tarik POP3 dari cPanel, hapus setelah sukses
Inbox canonical Mailcow sync.geonet.co.id (IMAP)
Outlook user IMAP + SMTP hanya sync.geonet.co.id
Zammad IMAP + SMTP ke Mailcow (mailbox sama dengan user)
Mailcow host 10.100.1.28

Prinsip: cPanel hanya pintu masuk internet; semua orang baca/tulis email lewat Mailcow.


Diagram alur

flowchart TB
  subgraph internet [Internet]
    S[Pengirim / penerima balasan]
  end

  subgraph cpanel [cPanel — staging kosong]
    MX[MX geonet.co.id]
    STG[(Inbox cPanel\nkosong setelah POP3)]
  end

  subgraph vm [VM 10.100.1.28]
    FM[fetchmail / getmail\nPOP3 drain + delete]
    MC[Mailcow sync.geonet.co.id]
    MBX[(Inbox IMAP\ncanonical)]
  end

  subgraph clients [Klien]
    OL[Outlook user\nIMAP + SMTP]
    Z[Zammad\nIMAP + SMTP]
  end

  S -->|email baru| MX --> STG
  STG -->|POP3 :995\nhapus setelah OK| FM -->|SMTP inject :587| MC --> MBX
  MBX -->|IMAP :993| OL
  MBX -->|IMAP poll| Z
  OL -->|SMTP :587| MC
  Z -->|SMTP :587| MC
  MC -->|kirim ke internet| S

Peran masing-masing komponen

1. cPanel (mail.geonet.co.id)

Fungsi Detail
MX record Masih menunjuk ke hosting — email dari internet masuk sini dulu
Inbox Staging — harus kosong setelah POP3 drain berjalan
User Outlook Tidak connect ke cPanel lagi
POP3 mail.geonet.co.id:995 SSL — hanya untuk service VM

2. VM — POP3 drain (fetchmail)

Service di server (bisa di VM yang sama dengan Mailcow), bukan di PC user.

Setting Nilai
Protokol sumber POP3 SSL :995
Host mail.geonet.co.id
User nama@geonet.co.id (per mailbox)
Setelah sukses Hapus dari cPanel (fetchall + tidak keep)
Tujuan SMTP ke Mailcow 127.0.0.1:587 atau sync.geonet.co.id:587
Jadwal Cron/systemd tiap 1–2 menit

Contoh fetchmailrc (produksi di /opt/fetchmail/fetchmailrc):

poll mail.geonet.co.id with proto POP3 port 995
  user "support@geonet.co.id" there with password "..." is "support@geonet.co.id" here
  ssl
  no sslcertck
  smtphost 127.0.0.1
  smtpname sync.geonet.co.id
  fetchall
  nokeep

Password dengan # atau $ harus di-escape (generate via Python repr()).
ssl harus setelah baris user, bukan sebelum.
no sslcertck — cert cPanel *.idcloudhosting.cloudmail.geonet.co.id.
SMTP inject ke Mailcow via 127.0.0.1:25 (tanpa auth).
Install: scripts/install-fetchmail-support.sh + systemd timer 2 menit.

3. Mailcow (sync.geonet.co.id)

Fungsi Detail
Hostname sync.geonet.co.id
Inbox canonical Semua pesan hidup di sini
Domain mailbox Tambah geonet.co.id di Mailcow agar alamat tetap user@geonet.co.id
Dovecot IMAP :993 — Outlook & Zammad
Postfix SMTP :587 — kirim balasan

4. Outlook user

Satu akun saja — tidak ada akun cPanel.

Setting Nilai
Incoming IMAP
Server sync.geonet.co.id
Port 993
Encryption SSL/TLS
Outgoing SMTP
Server sync.geonet.co.id
Port 587 (STARTTLS) atau 465 (SSL)
Auth Ya — username = email penuh
Username nama@geonet.co.id

5. Zammad

Sama seperti Outlook — satu mailbox di Mailcow:

Arah Konfigurasi
Inbound IMAP sync.geonet.co.id:993support@geonet.co.id
Outbound SMTP sync.geonet.co.id:587support@geonet.co.id

Mengapa POP3 drain (bukan imapsync mirror)

imapsync (salin) POP3 drain (pilihan user)
Inbox cPanel Masih berisi salinan Kosong
Sumber kebenaran Dua tempat Satu — Mailcow saja
Outlook connect ke Harus Mailcow saja juga Mailcow saja
Risiko duplikat Ada jika lupa aturan Rendah

Cocok dengan tujuan: user hanya tahu sync.geonet.co.id, cPanel tidak dipakai sehari-hari.


SPF / DKIM outbound (penting)

Balasan dari Mailcow dengan From: user@geonet.co.id butuh DNS mengizinkan server .102:

Record Fase transisi Fase akhir
SPF geonet.co.id Tambah IP publik .102 atau relay SMTP cPanel sebagai smarthost Mailcow only
DKIM Generate di Mailcow, publish TXT Sama
DMARC Opsional awal Disarankan

Opsi jika belum siap SPF:

  • Mailcow smarthostsc138.idcloudhosting.cloud:465 untuk outbound @geonet.co.id
  • Atau Zammad SMTP tetap hosting sementara, Outlook SMTP Mailcow (campuran — kurang ideal)

Target user: Outlook incoming dan outgoing sync.geonet.co.id → siapkan SPF/DKIM geonet.co.id untuk IP Mailcow.


Multi-mailbox

Setiap user@geonet.co.id di cPanel perlu:

  1. Entry fetchmail POP3 sendiri (atau satu script loop)
  2. Mailbox matching di Mailcow
  3. Outlook user connect ke Mailcow

Contoh tim:

cPanel POP3 Mailcow mailbox Klien
support@geonet.co.id support@geonet.co.id Zammad + Outlook IT
info@geonet.co.id info@geonet.co.id Outlook admin
nama@geonet.co.id nama@geonet.co.id Outlook user

Risiko & mitigasi

Risiko Dampak Mitigasi
fetchmail mati Email menumpuk di cPanel, user tidak lihat Monitor cron + alert (Uptime Kuma / script)
Latency 1–2 menit Email tidak instant di Outlook Kurangi interval cron; terima sebagai trade-off
POP3 gagal mid-batch Pesan bisa hilang jika delete sebelum SMTP OK Pakai fetchmail nokeep hanya setelah SMTP sukses (default behavior)
Port 25 blokir Outbound Mailcow gagal Smarthost cPanel atau port 587
VM .102 down Semua mail flow stop HA / backup VM; monitor

Perbedaan dengan pola Thunderbird manual

Thunderbird di PC fetchmail di VM
POP3 drain User PC harus nyala Server 24/7
Deliver ke Mailcow Manual / filter Otomatis SMTP inject
Outlook user Hanya IMAP Mailcow Sama

Thunderbird tidak dipakai untuk bridge — hanya Outlook (atau client lain) ke Mailcow.


Roadmap

Tahap Aksi
1 Install Mailcow di VM .102, hostname sync.geonet.co.id
2 Tambah domain geonet.co.id + buat mailbox
3 Deploy fetchmail POP3 drain per mailbox
4 Kosongkan inbox cPanel (tes drain)
5 Konfigurasi Outlook user → IMAP/SMTP Mailcow
6 Zammad IMAP + SMTP Mailcow
7 SPF/DKIM untuk outbound @geonet.co.id
8 Stabil 2–4 minggu
9 Cutover MX → sync.geonet.co.id, matikan fetchmail

Checklist

  • VM 10.100.1.28 provisioned (16 vCPU, 32 GB, 2×512 GB)
  • DNS A sync.geonet.co.id → IP publik
  • Mailcow + domain geonet.co.id
  • fetchmail + timer 2 menit (support@geonet.co.id) — scripts/install-fetchmail-support.sh
  • Verifikasi inbox cPanel kosong setelah drain
  • Outlook: IMAP+SMTP sync.geonet.co.id
  • Zammad channel email → Mailcow
  • SPF/DKIM geonet.co.id
  • Monitoring fetchmail

Referensi