Mengapa menghantar melalui port 587 dan 465
Port 25 ialah port untuk menyerahkan e-mel antara pelayan mel. Jika menghantar terus dari pelayan ke pelayan mel penerima, anda perlu mengurus sendiri reputasi IP, DNS songsang hingga pengurusan jumlah penghantaran, dan e-mel dari IP pelayan baharu mudah masuk ke folder spam.
Port 587 dan 465 ialah port penyerahan tempat pengguna yang telah log masuk menyerahkan e-mel. Log masuk ke perkhidmatan penghantaran e-mel dengan nama pengguna dan kata laluan lalu serahkan e-mel, maka pelayan penghantar dengan reputasi terurus yang menyampaikannya. Ini cara paling pasti supaya e-mel seperti pengesahan pendaftaran, lupa kata laluan dan pemberitahuan pesanan sampai ke peti masuk.
- Port 587: bersambung dalam teks biasa kemudian memulakan penyulitan dengan STARTTLS. Port yang digunakan secara lalai oleh kebanyakan perkhidmatan dan program.
- Port 465: bersambung dengan penyulitan TLS dari awal. Dalam skrin tetapan sering dipaparkan sebagai SSL atau SSL/TLS.
Memilih perkhidmatan penghantaran e-mel
Perkhidmatan penghantaran e-mel secara amnya ada dua. Pertama, perkhidmatan e-mel transaksi yang menghantar e-mel pemberitahuan laman web dan aplikasi dalam jumlah besar; kedua, ciri SMTP akaun e-mel syarikat atau peribadi yang sudah anda gunakan. Apa pun pilihannya, sediakan sahaja empat maklumat di bawah dan persediaan tetapan selesai.
- Alamat pelayan SMTP: contohnya smtp.example.com
- Port: 587 (STARTTLS) atau 465 (SSL/TLS)
- Nama pengguna: ID atau alamat e-mel yang diberikan perkhidmatan
- Kata laluan: kata laluan khas SMTP atau kunci API daripada perkhidmatan
Bagi kedai dalam talian atau perkhidmatan dengan jumlah penghantaran besar, perkhidmatan e-mel transaksi memudahkan kerana mengurus log penghantaran, pengendalian lantunan hingga pengurusan berhenti melanggan. Untuk beberapa pemberitahuan sahaja, SMTP akaun e-mel sudah memadai.
Menyemak sambungan SMTP dari pelayan
Sebelum menetapkan, pastikan sambungan dari pelayan ke perkhidmatan penghantaran berfungsi dengan baik. Arahan di bawah hanya menyemak sambungan dan tidak menghantar e-mel.
nc -vz smtp.example.com 587
openssl s_client -starttls smtp -connect smtp.example.com:587 -crlf -quiet
openssl s_client -connect smtp.example.com:465 -crlf -quietJika baris pertama memaparkan succeeded atau open, dan arahan openssl memaparkan ucapan pelayan yang bermula dengan 220, semuanya sudah sedia. Keluar dengan Ctrl+C. Jika arahan nc tiada, pasang dengan apt install -y netcat-openbsd dalam Ubuntu dan Debian, atau dnf install -y nmap-ncat dalam AlmaLinux.
Menyambungkan Postfix ke perkhidmatan penghantaran
Untuk menghimpunkan e-mel daripada program pelayan, pemberitahuan cron dan arahan mail di satu tempat, tetapkan Postfix sebagai geganti yang menyerahkan kepada perkhidmatan penghantaran. Semua e-mel di dalam pelayan keluar dengan log masuk melalui port 587.
Langkah 1. Pemasangan
apt install -y postfix libsasl2-modules mailutilsSemasa pemasangan ditanya jenis konfigurasi mel, pilih Internet Site, dan isi nama mel dengan domain anda. Dalam AlmaLinux 10, pasang dengan dnf install -y postfix cyrus-sasl-plain s-nail dan hidupkan dengan systemctl enable --now postfix.
Langkah 2. Tetapan geganti
postconf -e 'relayhost = [smtp.example.com]:587'
postconf -e 'smtp_sasl_auth_enable = yes'
postconf -e 'smtp_sasl_password_maps = texthash:/etc/postfix/sasl_passwd'
postconf -e 'smtp_sasl_security_options = noanonymous'
postconf -e 'smtp_tls_security_level = encrypt'
postconf -e 'inet_interfaces = loopback-only'inet_interfaces = loopback-only menjadikan pelayan hanya menerima e-mel yang dihantar dari dalam pelayan, jadi pelayan ini tidak boleh digunakan pihak luar sebagai geganti mel.
Langkah 3. Simpan maklumat log masuk
echo '[smtp.example.com]:587 SMTP_USER:SMTP_PASSWORD' > /etc/postfix/sasl_passwd
chmod 600 /etc/postfix/sasl_passwd
systemctl restart postfixJika perkhidmatan menggunakan port 465, tukar port dalam relayhost dan sasl_passwd kepada 465 dan tambah satu baris postconf -e 'smtp_tls_wrappermode = yes'.
Langkah 4. Uji hantar dan semak log
echo "VPS mail test" | mail -s "Test from VPS" you@example.com
postqueue -p
journalctl -t postfix/smtp -n 20Jika status=sent kelihatan dalam log, bermakna perkhidmatan penghantaran sudah menerima e-mel. postqueue -p memaparkan senarai e-mel yang belum keluar. Jika maklumat log masuk sudah dibetulkan, jalankan systemctl restart postfix kemudian hantar semula dengan postqueue -f.
Tetapan SMTP dalam WordPress dan aplikasi
Kebanyakan laman web dan aplikasi mempunyai ruangan tetapan SMTP, jadi boleh terus disambungkan ke perkhidmatan penghantaran tanpa Postfix di pelayan. Untuk WordPress, pasang plugin SMTP dan masukkan nilai di bawah, maka e-mel pendaftaran dan lupa kata laluan dihantar melalui perkhidmatan itu.
- Hos SMTP: alamat perkhidmatan penghantaran
- Penyulitan: TLS (STARTTLS) untuk port 587, SSL untuk port 465
- Port: 587 atau 465
- Pengesahan: aktifkan, masukkan nama pengguna dan kata laluan
- Alamat pengirim: alamat dalam domain anda (contohnya no-reply@example.com)
Aplikasi Node.js, PHP dan Python juga menetapkan pustaka e-mel dengan nilai yang sama. Jangan tulis kata laluan terus dalam kod, masukkan melalui pemboleh ubah persekitaran atau fail konfigurasi supaya kemas. Pemasangan WordPress ada dalam panduan pemasangan WordPress.
Menambah SPF, DKIM dan DMARC dalam DNS domain
Pelayan mel penerima menyemak melalui rekod DNS sama ada e-mel ini benar benar datang dari tempat yang dibenarkan oleh domain anda. Dengan memasang tiga rekod ini, kadar masuk ke peti masuk naik dengan ketara.
- SPF: senarai pelayan yang boleh menghantar e-mel domain anda. Masukkan nilai include daripada perkhidmatan penghantaran ke dalam satu rekod TXT.
- DKIM: tandatangan digital yang dilekatkan pada e-mel. Masukkan seperti sedia ada rekod TXT atau CNAME yang dijana di skrin perkhidmatan penghantaran.
- DMARC: menentukan cara mengendalikan e-mel yang gagal semakan SPF dan DKIM. Pada mulanya, mula dengan tetapan yang hanya menerima laporan seperti di bawah.
_dmarc.example.com TXT "v=DMARC1; p=none; rua=mailto:dmarc@example.com"Selepas beberapa minggu memantau laporan dan memastikan semua e-mel lulus, naikkan kepada p=quarantine, kemudian p=reject untuk mencegah penyamaran domain.
Menerima e-mel dan langkah seterusnya
Untuk menerima e-mel ke domain anda, masukkan rekod MX perkhidmatan hos e-mel ke domain. Jika e-mel masuk dikendalikan oleh hos e-mel dan e-mel pemberitahuan keluar oleh perkhidmatan penghantaran, pelayan boleh fokus pada laman web dan aplikasi.
Dengan menghantar melalui perkhidmatan penghantaran e-mel, walaupun pelayan dipindahkan atau dicipta baharu, cukup pindahkan beberapa baris tetapan dan semuanya diteruskan. Walaupun IP pelayan berubah, reputasi penghantaran kekal di pihak perkhidmatan, jadi kadar penghantaran e-mel tidak terjejas apabila laman dipindahkan ke lokasi lain.
Port lain boleh dibuka dengan bebas mengikut perkhidmatan anda. Cara membuka hanya port yang digunakan ada dalam panduan firewall asas, dan peraturan penggunaan pelayan ada dalam dasar penggunaan.
