HELPER VPS

Menghantar e-mel dari VPS, menyambungkan perkhidmatan penghantaran SMTP melalui port 587 dan 465

Semua pelayan HELPER VPS menutup port 25 keluar untuk mencegah spam, jadi reputasi IP semua pelayan dalam rangkaian yang sama kekal bersih. Hantar e-mel melalui port 587 atau 465 perkhidmatan penghantaran e-mel supaya lebih mudah sampai ke peti masuk.

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.

Terminal
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 -quiet

Jika 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

Ubuntu, Debian
apt install -y postfix libsasl2-modules mailutils

Semasa 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

Terminal
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

Terminal
echo '[smtp.example.com]:587 SMTP_USER:SMTP_PASSWORD' > /etc/postfix/sasl_passwd
chmod 600 /etc/postfix/sasl_passwd
systemctl restart postfix

Jika 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

Terminal
echo "VPS mail test" | mail -s "Test from VPS" you@example.com
postqueue -p
journalctl -t postfix/smtp -n 20

Jika 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.
DNS TXT
_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.

Panduan berkaitan

Tetapan yang baik dilakukan selepas panduan ini.

Lihat semua panduan