Tidak, tidak perlu membuat cache DNS di server. Server harus menggunakan resolver caching DNS yang ada di suatu tempat di dekatnya, tetapi sebagian besar perusahaan hosting sudah menjalankan resolver mereka sendiri untuk seluruh pusat data dan mengonfigurasi server untuk menggunakannya secara default.
Secara default, Postfix dan Dovecot menggunakan akun lokal untuk semuanya. Jika Anda memiliki nama akun Linux diti
, Anda dapat masuk ke Dovecot dengannya, dan Anda dapat mengatur Postfix untuk memvalidasi login SMTP terhadap Dovecot .
Jika Anda baik-baik saja dengan membuat semua email masuk ke akun yang sama, Anda dapat mengatur alias biasa (seperti dalam, /etc/aliases
) untuk mengarahkan ulang surat ke kra@
atau postmaster@
ke diti
akun.
Semua subjectAltNames itu tidak perlu. Satu-satunya yang Anda butuhkan adalah nama domain yang akan Anda gunakan , misalnya mail.diti.me
atau glaux.diti.me
. Saya tidak yakin apakah Anda perlu memasukkan domain itu sendiri (yaitu diti.me
).
Berikut ini mengasumsikan bahwa domain sudah memiliki catatan MX yang dikonfigurasi untuk menunjuk pada server ini. Saya biasanya mencoba untuk menjaga konfigurasi saya cukup jelas, karena saya selalu bertanya-tanya "untuk apa ini" beberapa bulan kemudian.
1. Pertama, instal paket postfix
dan dovecot-imapd
. Ketika ditanya tentang konfigurasi Postfix, pilih opsi "Situs Internet" dan masukkan diti.me
sebagai nama email. Pada titik ini, Anda sudah dapat mengirim dan menerima email sebagai diti@diti.me
, dan mungkin bahkan terhubung ke IMAP.
Namun, ia belum memiliki SSL, juga tidak mengizinkan pengiriman surat melalui SMTP dari luar, atau tempat yang waras untuk menyimpan surat (standarnya adalah file mbox /var/mail
, yang tidak dapat diandalkan dan memberikan kinerja yang buruk, terutama dengan IMAP).
2. Jika Anda sudah memiliki sertifikat SSL, masukkan /etc/ssl/private/diti.me.pem
, dan kunci pribadi /etc/ssl/private/diti.me.key
. Lokasi tepatnya sebenarnya tidak penting, tetapi di /etc/ssl/private
sanalah Debian menyimpannya.
Pastikan kedua file dimiliki oleh dan dapat dibaca oleh ssl-cert
grup, sehingga Postfix dan Dovecot dapat mengaksesnya. Juga tambahkan akun kedua daemon ke grup itu menggunakan gpasswd -a
.
3. Postfix yang dibuat secara otomatis Debian main.cf
juga sedikit berantakan, jadi saya akan memposting versi minimal yang sudah dibersihkan:
# Informasi server
mydomain = diti.me
myorigin = $ mydomain
# Berbagai parameter lain menggunakan kedua variabel ini sebagai nilai default.
# Layanan SMTP
smtpd_tls_security_level = mei
smtpd_tls_cert_file = /etc/ssl/private/diti.me-mail.pem
smtpd_tls_key_file = /etc/ssl/private/diti.me-mail.key
# Ini memungkinkan STARTTLS digunakan pada semua koneksi SMTP yang masuk.
Perhatikan bahwa `postfix` harus ditambahkan ke grup` ssl-cert` untuk dapat
# untuk mengakses file di / etc / ssl / private.
# Kebijakan
mynetworks = [:: 1] / 128, 127.0.0.0/8, [::ffff:127.0.0.0.0/10/104
# Ini mencantumkan alamat IP yang dianggap "tepercaya" dan dapat digunakan
# server ini untuk mengirim email ke luar (mis. ke domain lain). Oleh
# default, hanya "localhost" yang diizinkan. Dari orang lain hanya mengirim email ke
# domain dalam $ mydestination akan diterima.
mydestination = $ mydomain, localhost
# Daftar domain untuk menerima email, dari alamat IP apa pun.
# Pengiriman
alias_maps = hash: / etc / aliases
# Ini membuat alias untuk seluruh sistem. Ada baiknya untuk mengaturnya secara eksplisit karena
# Nilai defaultnya terkadang termasuk NIS, yang tidak masuk akal.
recipient_delimiter = +
# Memberitahu postfix untuk membagi bagian lokal dari alamat pada '+' pertama,
# yang disebut "plus-addressing": surat yang dikirim ke diti + foo @ akan dikirimkan
# ke diti @ kotak surat.
Untuk Dovecot, Debian hanya menggunakan contoh konfigurasi standar, dan mereka cukup bagus, dengan masing-masing opsi dijelaskan.
Setiap kali Anda mengubah konfigurasi, muat ulang daemon dengan postfix reload
dan / atau doveadm reload
.
4. Secara default, Postfix mengirimkan mail ke /var/mail/$USER
dalam format mbox , yang cukup sederhana (Anda dapat dengan mudah melihatnya dengan editor teks) tetapi memiliki banyak masalah, terutama dengan IMAP, karena seluruh file harus ditulis ulang setiap kali Anda memindahkan pesan atau bahkan tandai satu sebagai "baca" atau "belum dibaca".
Ubah kedua daemon untuk menggunakan Maildir. (Ada format lain, tetapi mereka cenderung spesifik untuk MTA atau MDA atau server IMAP atau apa pun; Maildir didukung secara luas.)
Di /etc/postfix/main.cf
, tambahkan berikut ini ke bagian "Pengiriman":
home_mailbox = Surat /
Konfigurasikan Dovecot untuk menggunakan jalur yang sama, di /etc/dovecot/conf.d/10-mail.conf
:
mail_location = maildir: ~ / Mail
5. Pada titik tertentu, Anda perlu memberi tahu Dovecot untuk menggunakan SSL juga. Pengaturan yang relevan ada di /etc/dovecot/conf.d/10-ssl.conf
. Bahkan, paket Debian untuk Dovecot sudah menggunakan SSL, meskipun dengan sertifikat yang ditandatangani sendiri yang sebagian besar tidak berguna. Konfigurasikan untuk menggunakan sertifikat Anda sendiri:
ssl = ya
ssl_cert = </etc/ssl/private/diti.me-mail.pem
ssl_key = </etc/ssl/private/diti.me-mail.key
6. Sekarang Anda dapat mengirim email ke luar dan menerimanya. Masih perlu mengkonfigurasi Postfix untuk memungkinkan Anda mengirim dari luar dengan menghubungkan dengan klien email Anda melalui SMTP.
Pertama beri tahu Postfix untuk menggunakan Dovecot untuk memverifikasi login. Instruksi berikut sebagian besar diambil dari wiki Dovecot .
/etc/dovecot/conf.d/10-master.conf
Kebutuhan Dovecot untuk mendengarkan pada soket yang dapat diakses Postfix; konfigurasi default sudah memiliki contoh komentar:
layanan auth {
...
unix_listener / var / spool / postfix / private / auth {
mode = 0660
user = postfix
group = postfix
}
...
}
Dan Postfix perlu menggunakannya - /etc/postfix/main.cf
lagi:
# Autentikasi
smtpd_sasl_type = dovecot
smtpd_sasl_path = pribadi / auth
# Jenis lainnya yang mungkin adalah "cyrus", untuk Cyrus SASL 'saslauthd'
# daemon Saya memilih Dovecot di sini karena berfungsi baik sebagai server SASL, dan
# lebih mudah untuk membiarkannya menangani otentikasi untuk kedua daemon.
7. Perhatikan bahwa hal di atas tidak diatur di smtpd_sasl_auth_enable
mana pun. Konvensi saat ini adalah untuk tidak mengaktifkan SMTP auth secara global, tetapi untuk menjaga tcp / 25 murni sebagai port SMTP "server-ke-server". Sementara itu, pesan baru dari pengguna diterima melalui SMTP pada tcp / 587, port "pengiriman surat", yang memerlukan otentikasi. Beberapa ISP bahkan memblokir tcp / 25 karena spam, tetapi tetap membuka tcp / 587 karena biasanya lebih aman.
Aktifkan port "Submission" /etc/postfix/master.cf
, dengan SASL auth. Defaultnya master.cf
sudah memiliki baris yang diperlukan yang hanya perlu dihapus komentar, meskipun beberapa dari mereka masih harus ditinggalkan.
penyerahan inet n - - - - smtpd
-o syslog_name = postfix / submission
-o smtpd_tls_security_level = enkripsi
# Port "Submission" akan membutuhkan TLS, alih-alih menjadikannya opsional
-o smtpd_sasl_auth_enable = ya
# ... dan juga memungkinkan pengguna untuk masuk.
# -o smtpd_reject_unlisted_recipient = tidak
# -o smtpd_client_restrictions = $ mua_client_restrictions
# -o smtpd_helo_restrictions = $ mua_helo_restrictions
# -o smtpd_sender_restrictions = $ mua_sender_restrictions
# Keempat opsi ini dapat dikomentari; jika diaktifkan, mereka akan melakukannya
# mengharapkan Anda untuk menetapkan aturan pembatasan khusus di 'main.cf', tetapi
# defaultnya baik-baik saja.
-o smtpd_recipient_restrictions = permit_sasl_authenticated, tolak
# Default recipient_restrictions memeriksa alamat IP dan
# $ mydestination. Untuk port "Submission", izinkan semuanya selama
# saat pengguna masuk, tetapi tolak semua surat anonim.
-o milter_macro_daemon_name = ORIGINATING
# Jika nanti Anda memutuskan untuk membuat proxy DKIM atau semacamnya, ini akan memungkinkan
# untuk membedakan email yang dikirim pengguna dari yang masuk.
# Ini bagian dari konfigurasi default, oleh karena itu termasuk di sini juga.
Jika Anda memiliki klien email yang memerlukan port "implisit SSL" gaya lama (tcp / 465), Anda dapat menghapus komentar pada smtps
baris master.cf
- jika Anda melakukannya, pertahankan pengaturan yang serupa dengan submission
port.
8. Akhirnya siapkan alias untuk akun Anda, dengan mengedit /etc/aliases
. The postmaster
alias pada dasarnya diperlukan; itu adalah titik kontak jika ada masalah dengan server email Anda. Menunjuk root
dan alias serupa lainnya juga bagus.
Format dasar didokumentasikan dalam alias (5):
postmaster: root
admin: root
root: diti
kra: diti
Gunakan postalias
atau newaliases
untuk memperbarui basis data hash /etc/aliases.db
setiap kali Anda mengedit file ini.
Sekarang, Anda masih memiliki satu akun diti
sejauh Postfix dan Dovecot diperhatikan, tetapi surat yang dikirim kra@...
juga diteruskan ke sana. Beberapa klien email (mis. Thunderbird) mendukung banyak "identitas" atau "personas" untuk satu server email, sehingga Anda dapat memilih di antara berbagai alamat "Dari:".
Itu saja. Saya mungkin kembali dengan instruksi untuk procmail, domain virtual, SPF, dan / atau DKIM nanti.