Email perusahaan yang Anda kelola sendiri
Panduan ini untuk administrator domain: dari login pertama, memasang DNS, membuat kotak surat, memindahkan email lama, sampai mengirim kode OTP dari aplikasi.
- Server:
mx1.trivapost.com - IMAP
993· SMTP465/587 - Contoh domain di panduan ini:
perusahaan.co.id
01Mulai cepat
Setelah domain Anda didaftarkan, Trivapost mengirim ringkasan onboarding berisi: nama pengguna domain admin, kata sandi awal (hanya dikirim sekali), paket (jumlah kotak surat, kuota, batas kirim), dan daftar record DNS.
- Masuk ke panel domain. Buka mx1.trivapost.com/domainadmin/, lalu masuk dengan nama pengguna
tp-…dan kata sandi awal. - Ganti kata sandi. Di halaman utama panel, buka bagian Change password. Pakai minimal 14 karakter dan simpan di pengelola kata sandi perusahaan.
- Aktifkan verifikasi dua langkah (2FA). Di halaman yang sama, pilih Two-factor authentication›Time-based OTP, pindai kode QR dengan Google Authenticator, Authy, atau 1Password, lalu masukkan kode 6 digit.
- Pasang record DNS di penyedia DNS domain Anda (lihat bagian 2).
- Buat kotak surat untuk karyawan dan satu alamat
no-reply@untuk OTP (lihat bagian 3). - Pindahkan email lama bila ada, lalu arahkan MX ke Trivapost (lihat bagian 4).
Tiga alamat yang perlu diingat
| Untuk | Alamat | Dipakai oleh |
|---|---|---|
| Panel domain | mx1.trivapost.com/domainadmin/ | Administrator domain (tim IT) |
| Pengaturan akun | mx1.trivapost.com | Setiap pemilik kotak surat: kata sandi aplikasi, filter spam, sync job pribadi |
| Webmail | webmail.trivapost.com/SOGo/ | Semua karyawan: baca & kirim email, kalender, kontak |
Apa yang bisa dan tidak bisa diubah dari panel
| Bisa Anda atur sendiri | Diatur oleh Trivapost (hubungi bantuan) |
|---|---|
| Membuat, mengubah, menonaktifkan, dan menghapus kotak surat · alias · sync job (migrasi) · karantina spam · kebijakan & filter spam · kata sandi aplikasi · akses protokol per kotak surat · BCC map (arsip) · deskripsi domain · akses webmail | Batas kirim per jam · jumlah kotak surat & kuota total paket · alias domain · relay ke server lain · reset 2FA domain admin |
02Hubungkan domain (DNS)
Tambahkan record di bawah pada penyedia DNS domain Anda (Cloudflare, registrar, atau server DNS internal). Nilai DKIM unik untuk domain Anda — salin persis dari ringkasan onboarding atau dari panel: E-Mail›Configuration›Domains›DNS.
| Tipe | Nama / host | Nilai | Keterangan |
|---|---|---|---|
| MX | @ | mx1.trivapost.com · prioritas 10 | Email masuk. Pasang paling akhir bila memindahkan email lama. |
| TXT | @ | v=spf1 include:_spf.trivapost.com -all | SPF: server yang boleh mengirim atas nama domain. |
| TXT | dkim._domainkey | v=DKIM1;k=rsa;t=s;s=email;p=MIIB… | Tanda tangan digital. Salin utuh dari panel. |
| TXT | _dmarc | v=DMARC1; p=none; rua=mailto:postmaster@perusahaan.co.id; fo=1 | Kebijakan jika SPF/DKIM gagal. |
| CNAME | autodiscover | mx1.trivapost.com | Pengaturan otomatis Outlook. |
| CNAME | autoconfig | mx1.trivapost.com | Pengaturan otomatis Thunderbird. |
| SRV | _autodiscover._tcp | 0 1 443 mx1.trivapost.com | Opsional, membantu aplikasi email menemukan server. |
| SRV | _imaps._tcp | 0 1 993 mx1.trivapost.com | |
| SRV | _submissions._tcp | 0 1 465 mx1.trivapost.com | |
| SRV | _submission._tcp | 0 1 587 mx1.trivapost.com |
Jika domain juga mengirim email lewat layanan lain (misalnya layanan tiket atau CRM), gabungkan dalam satu record: v=spf1 include:_spf.trivapost.com include:layanan-lain.com -all. Dua record v=spf1 terpisah membuat SPF gagal.
Record CNAME autodiscover dan autoconfig harus berstatus DNS only (awan abu-abu), bukan Proxied.
Memeriksa record
Cara termudah: di panel buka E-Mail›Configuration›Domains, klik tombol DNS pada domain Anda. Record yang sudah benar ditandai hijau. Perubahan DNS biasanya terlihat dalam 5–60 menit.
Dari terminal:
dig +short MX perusahaan.co.id
dig +short TXT perusahaan.co.id
dig +short TXT dkim._domainkey.perusahaan.co.id
dig +short TXT _dmarc.perusahaan.co.idnslookup -type=mx perusahaan.co.id 1.1.1.1
nslookup -type=txt dkim._domainkey.perusahaan.co.id 1.1.1.1Menaikkan DMARC bertahap
- Minggu 1–4:
p=none— hanya memantau. Laporan dikirim ke alamatrua; buat kotak surat atau aliaspostmaster@agar laporan tidak ditolak. - Setelah semua pengirim sah lolos SPF/DKIM:
p=quarantine— email palsu masuk folder spam penerima. - Tahap akhir:
p=reject— email palsu atas nama domain Anda ditolak. Ini penting untuk mencegah phishing yang meniru perusahaan pembayaran.
03Kotak surat & alias
Membuat kotak surat
- Buka E-Mail›Configuration›Mailboxes, klik Add mailbox.
- Isi Username (bagian sebelum @, misalnya
budi), pilih domain, isi Full name. - Atur Quota (maksimal sesuai paket, misalnya 10240 MiB = 10 GB).
- Buat kata sandi kuat, atau klik ikon pembuat kata sandi. Berikan ke karyawan lewat saluran aman, bukan lewat email yang sama.
- Klik Add. Kotak surat langsung aktif untuk webmail dan aplikasi email.
Jika jumlah kotak surat sudah mencapai batas paket, panel menolak penambahan. Hapus kotak surat yang tidak dipakai atau hubungi kami untuk menambah paket.
Tugas sehari-hari
| Kebutuhan | Caranya |
|---|---|
| Reset kata sandi karyawan | Mailboxes›Edit pada kotak surat, isi kata sandi baru. |
| Karyawan keluar | Nonaktifkan dulu (Edit›Active dimatikan) agar email lama tetap tersimpan. Teruskan email ke atasan dengan alias bila perlu. Hapus setelah data diamankan. |
Alamat tambahan (info@, billing@) | Aliases›Add alias: isi alamat alias dan tujuan (bisa lebih dari satu kotak surat, pisahkan dengan koma). |
| Meneruskan email ke luar | Buat alias dengan tujuan alamat eksternal. Hati-hati: meneruskan spam ke Gmail dapat merusak reputasi. |
| Arsip salinan email (kepatuhan) | BCC›Add BCC map: semua email masuk/keluar dari alamat tertentu disalin ke kotak arsip. |
| Melihat email yang ditahan filter | Quarantine: lepaskan email yang sah atau hapus yang berbahaya. |
Alias @perusahaan.co.id (menangkap semua alamat) menarik banyak spam dan menghabiskan kuota. Buat alias spesifik saja.
04Pindah dari server lama
Contoh ini untuk server email lama berbasis CyberPanel, cPanel, Plesk, atau server IMAP lain. Email lama disalin dengan sync job tanpa menghapus apa pun di server lama.
- H-1: turunkan TTL. Ubah TTL record MX domain di DNS menjadi 300 detik (5 menit), agar perpindahan nanti cepat berlaku.
- Buat kotak surat di Trivapost dengan alamat yang sama persis seperti di server lama.
- Pasang SPF sementara yang mengizinkan kedua server selama transisi:
Tambahkan juga DKIM (TXT @ (sementara)
v=spf1 include:_spf.trivapost.com ip4:IP_SERVER_LAMA ~alldkim._domainkey),autodiscover, danautoconfig. Selector DKIM Trivapost adalahdkim, jadi tidak bentrok dengan DKIM server lama (biasanyadefault). - Buat sync job untuk tiap kotak surat: E-Mail›Configuration›Sync jobs›Add sync job.
Sinkronisasi pertama bisa memakan waktu beberapa jam untuk kotak surat besar. Periksa kemajuan lewat tombol Logs pada sync job.
Kolom Isi Username Kotak surat tujuan di Trivapost Host Nama server lama, misalnya mail.perusahaan.co.idatau IP-nyaPort / Encryption 993/SSLUsername & password (sumber) Alamat email lengkap dan kata sandi di server lama Interval 20menit selama transisiDelete from source when completed Jangan dicentang Exclude objects Biarkan bawaan (folder spam/junk tidak ikut) - Hari H: ganti MX ke
mx1.trivapost.com(prioritas 10) dan hapus MX lama. Email yang sempat masuk ke server lama tetap tersalin oleh sync job. - Pasang email di perangkat karyawan dengan pengaturan baru (lihat bagian 5).
- H+3 sampai H+7: selesaikan. Pastikan email baru masuk ke Trivapost, matikan sync job, ubah SPF ke versi final
v=spf1 include:_spf.trivapost.com -all, lalu nonaktifkan layanan email di server lama.
Pastikan firewall server lama mengizinkan koneksi masuk port 993 dari 169.58.47.102, dan kata sandi sumber benar. Pesan kesalahan lengkap ada di Logs.
05Pasang di aplikasi email
Outlook dan Thunderbird biasanya menemukan pengaturan otomatis cukup dengan alamat email dan kata sandi (jika record autodiscover/autoconfig sudah terpasang). Untuk pengaturan manual:
| Protokol | Server | Port | Keamanan |
|---|---|---|---|
| IMAP (masuk, disarankan) | mx1.trivapost.com | 993 | SSL/TLS |
| POP3 (masuk) | mx1.trivapost.com | 995 | SSL/TLS |
| SMTP (keluar) | mx1.trivapost.com | 465 | SSL/TLS |
| SMTP (keluar, alternatif) | mx1.trivapost.com | 587 | STARTTLS |
Nama pengguna selalu alamat email lengkap (budi@perusahaan.co.id). Autentikasi: kata sandi biasa (normal password). SMTP wajib login.
Outlook (Windows / Mac)
- File›Add account, masukkan alamat email.
- Jika diminta memilih jenis akun, pilih IMAP, lalu isi server dari tabel di atas.
- Masukkan kata sandi dan selesai.
iPhone / iPad / Mac Mail
Cara tercepat: masuk ke mx1.trivapost.com dengan akun email, lalu unduh Apple connection profile dari halaman akun dan buka di perangkat. Email, kalender, dan kontak langsung terpasang.
Cara manual: Settings›Mail›Accounts›Add Account›Other›Add Mail Account, pilih IMAP, isi server dari tabel di atas untuk Incoming dan Outgoing.
Android (aplikasi Gmail)
- Tambahkan akun›Lainnya, masukkan alamat email.
- Pilih Pribadi (IMAP), masukkan kata sandi.
- Server masuk
mx1.trivapost.comport 993 SSL/TLS; server keluarmx1.trivapost.comport 465 SSL/TLS.
Thunderbird
Account Settings›Account Actions›Add Mail Account, isi nama, email, dan kata sandi. Thunderbird mengambil pengaturan otomatis dari autoconfig.
Kalender & kontak (CalDAV / CardDAV)
Alamat server: https://mx1.trivapost.com/SOGo/dav/ dengan alamat email dan kata sandi. Di webmail, alamat lengkap tiap kalender ada di menu titik tiga kalender tersebut.
06Kirim OTP dari aplikasi
Untuk email otomatis (kode OTP login, ganti kata sandi, ganti PIN), gunakan satu kotak surat khusus, misalnya no-reply@perusahaan.co.id. Jangan memakai kotak surat karyawan.
Persiapan
- Buat kotak surat
no-reply@(bagian 3). - Masuk ke mx1.trivapost.com sebagai
no-reply@, buka App passwords›Create app password. Beri nama sesuai aplikasi (misalnyaapi-production) dan centang hanya SMTP. - Simpan kata sandi aplikasi di secret manager atau variabel lingkungan server — jangan di repositori kode.
- Buat kata sandi aplikasi terpisah untuk staging dan production, supaya salah satu bisa dicabut tanpa mengganggu yang lain.
| Pengaturan | Nilai |
|---|---|
| Host | mx1.trivapost.com |
| Port & enkripsi | 465 + SSL/TLS (disarankan) atau 587 + STARTTLS |
| Username | no-reply@perusahaan.co.id |
| Password | Kata sandi aplikasi |
| From | Harus alamat kotak surat yang login (atau alias miliknya) |
Contoh kode
MAIL_MAILER=smtp
MAIL_HOST=mx1.trivapost.com
MAIL_PORT=465
MAIL_SCHEME=smtps # Laravel 10 ke bawah: MAIL_ENCRYPTION=ssl
MAIL_USERNAME=no-reply@perusahaan.co.id
MAIL_PASSWORD=kata-sandi-aplikasi
MAIL_FROM_ADDRESS=no-reply@perusahaan.co.id
MAIL_FROM_NAME="Perusahaan"use PHPMailer\PHPMailer\PHPMailer;
$mail = new PHPMailer(true);
$mail->isSMTP();
$mail->Host = 'mx1.trivapost.com';
$mail->Port = 465;
$mail->SMTPSecure = PHPMailer::ENCRYPTION_SMTPS;
$mail->SMTPAuth = true;
$mail->Username = 'no-reply@perusahaan.co.id';
$mail->Password = getenv('MAIL_PASSWORD');
$mail->CharSet = 'UTF-8';
$mail->Timeout = 20;
$mail->setFrom('no-reply@perusahaan.co.id', 'Perusahaan');
$mail->addReplyTo('support@perusahaan.co.id');
$mail->addAddress($emailPengguna);
$mail->Subject = 'Kode verifikasi Anda';
$mail->isHTML(true);
$mail->Body = "<p>Kode verifikasi: <b>{$kode}</b></p><p>Berlaku 5 menit. Jangan berikan kode ini kepada siapa pun.</p>";
$mail->AltBody = "Kode verifikasi: {$kode}\nBerlaku 5 menit. Jangan berikan kode ini kepada siapa pun.";
$mail->send();const nodemailer = require('nodemailer');
// Buat sekali saat aplikasi mulai, pakai ulang untuk setiap email
const transporter = nodemailer.createTransport({
host: 'mx1.trivapost.com',
port: 465,
secure: true,
pool: true,
maxConnections: 3,
auth: { user: 'no-reply@perusahaan.co.id', pass: process.env.MAIL_PASSWORD },
});
await transporter.sendMail({
from: '"Perusahaan" <no-reply@perusahaan.co.id>',
replyTo: 'support@perusahaan.co.id',
to: emailPengguna,
subject: 'Kode verifikasi Anda',
text: `Kode verifikasi: ${kode}\nBerlaku 5 menit. Jangan berikan kode ini kepada siapa pun.`,
html: `<p>Kode verifikasi: <b>${kode}</b></p><p>Berlaku 5 menit.</p>`,
});import os, ssl, smtplib
from email.message import EmailMessage
msg = EmailMessage()
msg["From"] = "Perusahaan <no-reply@perusahaan.co.id>"
msg["To"] = email_pengguna
msg["Reply-To"] = "support@perusahaan.co.id"
msg["Subject"] = "Kode verifikasi Anda"
msg.set_content(f"Kode verifikasi: {kode}\nBerlaku 5 menit. Jangan berikan kode ini kepada siapa pun.")
msg.add_alternative(f"<p>Kode verifikasi: <b>{kode}</b></p><p>Berlaku 5 menit.</p>", subtype="html")
with smtplib.SMTP_SSL("mx1.trivapost.com", 465, context=ssl.create_default_context(), timeout=20) as s:
s.login("no-reply@perusahaan.co.id", os.environ["MAIL_PASSWORD"])
s.send_message(msg)package mail
import (
"crypto/tls"
"fmt"
"net/smtp"
"os"
"time"
)
func KirimOTP(to, kode string) error {
const host, from = "mx1.trivapost.com", "no-reply@perusahaan.co.id"
conn, err := tls.Dial("tcp", host+":465", &tls.Config{ServerName: host})
if err != nil {
return err
}
c, err := smtp.NewClient(conn, host)
if err != nil {
return err
}
defer c.Close()
if err = c.Auth(smtp.PlainAuth("", from, os.Getenv("MAIL_PASSWORD"), host)); err != nil {
return err
}
if err = c.Mail(from); err != nil {
return err
}
if err = c.Rcpt(to); err != nil {
return err
}
w, err := c.Data()
if err != nil {
return err
}
fmt.Fprintf(w, "From: Perusahaan <%s>\r\nTo: %s\r\nSubject: Kode verifikasi Anda\r\nDate: %s\r\n"+
"MIME-Version: 1.0\r\nContent-Type: text/plain; charset=UTF-8\r\n\r\nKode verifikasi: %s\r\nBerlaku 5 menit.\r\n",
from, to, time.Now().Format(time.RFC1123Z), kode)
if err = w.Close(); err != nil {
return err
}
return c.Quit()
}Uji koneksi dari server aplikasi
# 1. Port terbuka? (harus "succeeded" / "open")
nc -vz mx1.trivapost.com 465
# 2. Kirim email uji (paket swaks: apt install swaks)
swaks --server mx1.trivapost.com:465 --tls-on-connect \
--auth LOGIN --auth-user no-reply@perusahaan.co.id --auth-password 'kata-sandi-aplikasi' \
--from no-reply@perusahaan.co.id --to alamat-anda@gmail.com \
--header "Subject: Uji Trivapost"Praktik terbaik agar OTP masuk inbox
- Isi singkat dan konsisten. Subjek sama setiap kali (Kode verifikasi Anda), kode di isi email. Tidak perlu gambar besar atau banyak tautan.
- Kirim versi teks dan HTML sekaligus (seperti contoh di atas).
- Jangan pakai pemendek tautan (bit.ly dan sejenisnya) — sangat sering dianggap phishing.
- Batasi permintaan ulang di aplikasi, misalnya maksimal 1 kode per 60 detik dan 5 kode per jam per pengguna. Ini mencegah penyalahgunaan yang menghabiskan batas kirim.
- Kirim lewat antrean (queue), bukan langsung di dalam request pengguna. Jika server menjawab kode
4xx, coba lagi 1, 5, lalu 15 menit kemudian. Jawaban5xxberarti gagal permanen — jangan diulang. - Pakai ulang koneksi (pool) jika mengirim banyak email berurutan.
- Periksa kotak
no-reply@seminggu sekali lewat webmail: alamat pengguna yang salah akan memantul (bounce) ke sini. Tandai alamat tersebut di aplikasi agar tidak dikirimi lagi. - Hanya email transaksional. Promo, newsletter, atau pengumuman massal tidak diizinkan dari Trivapost (lihat bagian 8).
07Keamanan
- 2FA wajib untuk akun domain admin. Simpan kode cadangan di tempat aman; jika perangkat hilang, hubungi bantuan dari alamat PIC yang terdaftar.
- Satu kata sandi aplikasi untuk satu perangkat atau aplikasi. Jika laptop hilang atau server bocor, cabut kata sandi aplikasi itu saja.
- Batasi protokol yang tidak dipakai per kotak surat (Mailboxes›Edit›Allowed protocols). Contoh: matikan POP3 untuk semua akun jika tidak digunakan.
- Waspadai email yang meminta login. Trivapost tidak pernah meminta kata sandi lewat email. Halaman login resmi hanya di
mx1.trivapost.comdanwebmail.trivapost.com. - Terapkan DMARC
p=rejectsetelah masa pemantauan (bagian 2), agar domain Anda tidak bisa dipalsukan untuk menipu pelanggan. - Karantina: email yang dicurigai berbahaya ditahan. Lepaskan hanya jika Anda yakin pengirimnya sah.
- Semua koneksi ke server (web, IMAP, SMTP) terenkripsi TLS. Kotak surat tersimpan di server Trivapost dan dicadangkan secara rutin dalam bentuk terenkripsi di lokasi terpisah.
08Batas & kebijakan
| Hal | Batas |
|---|---|
| Ukuran satu email | 100 MB (termasuk lampiran; lampiran membesar ±33% saat dikirim, jadi total lampiran ±70 MB) |
| Jumlah kotak surat & kuota | Sesuai paket di ringkasan onboarding |
| Batas kirim | Per domain per jam, sesuai paket (tertera di ringkasan onboarding). Jika terlampaui, email ditunda sementara, bukan hilang. |
| Alias | Hingga 400 per domain |
| Lampiran berbahaya | File yang dapat dieksekusi atau berisi virus dapat ditolak atau dikarantina |
Penggunaan yang diizinkan
- Diizinkan: email kerja karyawan, email transaksional (OTP, reset kata sandi, notifikasi transaksi, tagihan).
- Tidak diizinkan: email pemasaran massal, newsletter ke daftar besar, daftar alamat yang dibeli, spam, phishing, atau konten penipuan.
- Pelanggaran atau lonjakan pengiriman yang tidak wajar dapat membuat pengiriman dibatasi sementara untuk melindungi reputasi server bagi semua pelanggan. Kami akan menghubungi PIC terdaftar.
Butuh batas kirim lebih tinggi, kotak surat tambahan, atau kuota lebih besar? Hubungi support@trivacloud.com.
09Mengatasi masalah
Email kami masuk folder spam penerima
- Di Gmail, buka email tersebut, pilih ⋮›Show original. Pastikan SPF, DKIM, dan DMARC bertuliskan
PASS. - Jika ada yang
FAIL, periksa record DNS di bagian 2 dengan tombol DNS di panel. - Jika semuanya
PASS: domain baru butuh waktu membangun reputasi. Minta beberapa penerima menandai Bukan spam, hindari tautan pendek, dan kirim isi yang konsisten.
Aplikasi: “Authentication failed” / 535
- Username harus alamat email lengkap.
- Gunakan kata sandi aplikasi yang mencentang protokol SMTP.
- Pasangan port harus benar:
465dengan SSL/TLS,587dengan STARTTLS. - Terlalu banyak percobaan gagal membuat IP diblokir sementara. Tunggu 30 menit, perbaiki kata sandi, lalu coba lagi.
Aplikasi: koneksi timeout
Beberapa penyedia cloud memblokir port email keluar. Uji dengan nc -vz mx1.trivapost.com 465 lalu 587. Jika keduanya gagal, buka aturan firewall keluar (egress) di server atau penyedia cloud Anda.
“Ratelimit” / kode 4xx saat mengirim
Batas kirim per jam untuk domain terlampaui. Email tidak hilang: aplikasi email dan antrean yang benar akan mencoba ulang. Periksa apakah ada lonjakan tidak wajar (misalnya bot yang meminta OTP berulang), lalu hubungi kami jika memang butuh batas lebih tinggi.
Email tidak masuk
- Periksa MX dengan
dig +short MX perusahaan.co.id— harusmx1.trivapost.com. - Periksa Quarantine di panel dan folder Junk di webmail.
- Periksa kuota kotak surat. Kotak surat penuh menolak email baru (pengirim menerima pesan mailbox full).
- Pastikan kotak surat dan domain berstatus aktif.
Sync job berhenti atau error
Buka Sync jobs›Logs. Penyebab umum: kata sandi server lama sudah diganti, firewall server lama menolak koneksi dari 169.58.47.102, atau host/port salah (gunakan 993 + SSL).
10Bantuan
Kirim email ke support@trivacloud.com dari alamat PIC yang terdaftar. Agar cepat ditangani, sertakan:
- Domain dan alamat email yang bermasalah
- Waktu kejadian beserta zona waktu (misalnya 14:05 WIB)
- Pesan kesalahan lengkap (salin teks, bukan hanya tangkapan layar)
- Untuk masalah spam atau pengiriman: header lengkap email (Show original di Gmail)
Kami tidak akan pernah meminta kata sandi Anda. Jangan kirimkan kata sandi atau kode 2FA ke siapa pun.