Membuat Email Server Sendiri di VPS dengan Mailcow

Membuat Email Server Sendiri di VPS dengan Mailcow

Pengantar

Email masih menjadi salah satu layanan penting bagi website dan bisnis. Selain untuk berkomunikasi, email juga digunakan untuk mengirim notifikasi website, informasi transaksi, reset password, hingga komunikasi dengan pelanggan.

Salah satu pilihan untuk memiliki kontrol lebih besar terhadap mailbox, domain, dan konfigurasi email adalah membuat email server sendiri di VPS.

Mailcow dapat digunakan untuk kebutuhan tersebut. Mailcow menyediakan berbagai komponen email server dalam satu platform dan menggunakan Docker untuk menjalankan layanan yang dibutuhkan.

Dengan Mailcow, pengelolaan mailbox, domain, antispam, webmail, dan konfigurasi keamanan dapat dilakukan melalui antarmuka web tanpa harus mengonfigurasi setiap komponen secara manual.

Pada tutorial ini, kita akan membahas cara membuat email server sendiri menggunakan Mailcow di VPS berbasis Linux secara bertahap agar lebih mudah diikuti.

Persiapan VPS untuk Mailcow

Sebelum instalasi Mailcow, pastikan VPS memenuhi kebutuhan berikut:

  • OS: Ubuntu 24.04 LTS
  • CPU: Minimal 2 vCPU
  • RAM: Minimal 6 GB
  • Storage: Minimal 20 GB SSD
  • Akses: Root atau sudo

Spesifikasi dapat ditingkatkan sesuai jumlah domain, mailbox, dan volume email.

Menyiapkan Hostname dan DNS

  1. Konfigurasi Hostname dan DNS
    Siapkan hostname khusus untuk mail server, misalnya:

    mail.example.com

    Buat record A yang mengarah ke IP VPS:

    mail.example.com > 203.0.113.10

    Kemudian buat record MX:

    example.com > mail.example.com

    Atur Reverse DNS atau PTR IP VPS ke hostname mail server:

    203.0.113.10 > mail.example.com

    Periksa record A:

    dig @8.8.8.8 +short A mail.example.com

    Hasil yang diharapkan:

    203.0.113.10

    Periksa PTR:

    dig -x 203.0.113.10 +short

    Hasil yang diharapkan:

    mail.example.com.

    Jika hasil sudah sesuai, lanjutkan ke tahap instalasi Mailcow.

Menyiapkan Hostname dan Paket Pendukung

  1. Atur Hostname dan Cek Port
    Atur hostname VPS sesuai dengan hostname Mailcow:

    hostnamectl set-hostname mail.example.com

    Periksa hostname:

    hostname
    hostname -f

    Pastikan hasilnya:

    mail.example.com

    Selanjutnya, pastikan port yang digunakan Mailcow belum digunakan layanan lain:

    25
    80
    110
    143
    443
    465
    587
    993
    995
    4190

    Periksa penggunaan port:

    ss -lntup | grep -E ':(25|80|110|143|443|465|587|993|995|4190)\b'

    Jika port tersedia, instal paket pendukung:

    apt update
    apt install -y git openssl curl gawk coreutils grep jq

    Setelah dependensi terpasang, VPS siap untuk proses instalasi Mailcow.

Download dan Mengonfigurasi Mailcow

  1. Download dan Konfigurasi Mailcow
    Masuk ke direktori /opt dan clone repository Mailcow:

    cd /opt
    git clone https://github.com/mailcow/mailcow-dockerized

    Masuk ke direktori Mailcow:

    cd mailcow-dockerized

    Jalankan script konfigurasi:

    ./generate_config.sh

    Pada bagian FQDN, masukkan hostname mail server:

    mail.example.com

    Gunakan timezone sesuai lokasi server, misalnya:

    Asia/Jakarta

    Pada pilihan branch, gunakan branch stabil yang direkomendasikan.

    Setelah selesai, konfigurasi akan disimpan pada file mailcow.conf.

    Periksa hostname dan timezone:

    grep -E '^(MAILCOW_HOSTNAME|TZ)=' mailcow.conf

    Hasil yang diharapkan:

    MAILCOW_HOSTNAME=mail.example.com
    TZ=Asia/Jakarta

    Jika konfigurasi sudah sesuai, Mailcow siap dijalankan menggunakan Docker Compose.

Menjalankan Mailcow

  1. Menjalankan Container Mailcow
    Download image Docker yang dibutuhkan Mailcow:

    docker compose pull

    Setelah selesai, jalankan seluruh container:

    docker compose up -d

    Periksa status container:

    docker compose ps

    Pastikan container menunjukkan status Up atau healthy.

    Periksa port layanan Mailcow:

    ss -lntup | grep -E ':(25|80|110|143|443|465|587|993|995|4190)\b'

    Jika port yang diperlukan berstatus LISTEN, layanan Mailcow sudah berjalan.

Mengakses Dashboard Mailcow

  1. Mengakses Dashboard Mailcow
    Setelah seluruh container aktif, akses dashboard Mailcow menggunakan hostname yang telah dikonfigurasi:

    https://mail.example.com/admin/

    Uji koneksi HTTPS dari VPS:

    curl -kI https://mail.example.com/

    Contoh respons:

    HTTP/2 200
    server: nginx

    Periksa URL admin:

    curl -kI https://mail.example.com/admin

    Respons HTTP/2 301 dengan redirect ke /admin/ merupakan kondisi normal.

    Jika DNS masih menggunakan IP lama, gunakan opsi --resolve:

    curl -kI --resolve mail.example.com:443:203.0.113.10 \
    https://mail.example.com/

    Jika mendapatkan respons HTTP/2 200, layanan Mailcow sudah dapat diakses.

    Setelah DNS mengarah ke IP yang benar, buka:

    https://mail.example.com/admin/

    Login menggunakan akun administrator:

    • Username : admin
    • Password : moohoo
    Catatan:
    Jika dashboard berhasil ditampilkan, instalasi dasar Mailcow telah selesai.
  2. Tampilan Dashboard Mailcow
    Setelah berhasil login, dashboard Mailcow akan menampilkan informasi terkait server dan layanan yang berjalan.

Kesimpulan

Instalasi Mailcow pada Ubuntu 24.04 dilakukan menggunakan Docker dan Docker Compose, mulai dari persiapan VPS, konfigurasi hostname dan DNS, instalasi dependensi, hingga menjalankan container Mailcow.

Jika seluruh container berstatus Up dan dashboard dapat diakses melalui hostname mail server, instalasi dasar Mailcow telah selesai.


Artikel Lain

WhatsApp Kami

Support : +6282138153600

Finance : +6285191239466