Izpratne par SMTP porta pārsūtīšanu:
SMTP savienojumu pārsūtīšana dažādiem domēniem uz dažādiem viena servera iekšējiem portiem var būt sarežģīta, it īpaši, ja abiem pasta serveriem ir jāizmanto 25. ports. Šai iestatīšanai ir nepieciešama metode, lai ienākošo SMTP trafiku novirzītu uz atbilstošo iekšējo portu, pamatojoties uz domēnu.
Šajā rokasgrāmatā mēs izpētām, kā sasniegt šo konfigurāciju, un apspriežam rīkus, kas var atvieglot šo procesu. Neatkarīgi no tā, vai izmantojat Nginx, HAProxy vai citus risinājumus, mērķis ir efektīvi pārvaldīt SMTP savienojumus bez portu konfliktiem.
Pavēli | Apraksts |
---|---|
upstream | Definē Nginx aizmugursistēmas serveru grupu slodzes līdzsvarošanai. |
proxy_pass | Norāda aizmugursistēmas serveri, uz kuru jānosūta pieprasījums Nginx. |
acl | Definē piekļuves kontroles sarakstu HAProxy nosacījumam maršrutēšanai. |
hdr(host) | Pārbauda HTTP resursdatora galveni HAProxy, lai tā atbilstu noteiktam domēnam. |
use_backend | Novirza trafiku uz noteiktu aizmugursistēmu, pamatojoties uz HAProxy nosacījumiem. |
transport_maps | Norāda kartēšanas failu domēna specifiskiem transporta iestatījumiem programmā Postfix. |
postmap | Ģenerē bināro jaucējkartes failu no vienkārša teksta faila Postfix. |
Detalizēts SMTP pārsūtīšanas risinājumu skaidrojums
Iepriekš minētajos piemēros sniegtie skripti parāda, kā novirzīt SMTP savienojumus dažādiem domēniem uz konkrētiem iekšējiem portiem, izmantojot tādus rīkus kā Nginx, HAProxy un Postfix. Pirmajā skriptā mēs izmantojam upstream direktīvu Nginx, lai definētu aizmugursistēmas serverus katram domēnam. The proxy_pass pēc tam direktīva norāda, uz kuru aizmugursistēmas serveri pārsūtīt savienojumu, pamatojoties uz domēna nosaukumu. Tas ļauj 25. portā ienākošo SMTP trafiku novirzīt uz dažādiem iekšējiem portiem katram domēnam.
Otrais skripts līdzīgai funkcionalitātei izmanto HAProxy. The acl komanda izveido piekļuves kontroles sarakstu, lai tas atbilstu ienākošajam domēnam, izmantojot hdr(host) komandu. Atkarībā no domēna, use_backend komanda novirza trafiku uz atbilstošo aizmugursistēmas serveri. Trešajā skriptā Postfix ir konfigurēts, lai izmantotu transporta kartes failu, ko definē transport_maps parametrs. Šis fails kartē katru domēnu ar noteiktu iekšējo portu un postmap komanda apkopo transporta karti formātā, ko var izmantot Postfix. Šie risinājumi nodrošina, ka SMTP trafiks tiek pareizi novirzīts uz paredzēto pasta serveri bez portu konfliktiem.
SMTP savienojumu novirzīšana, pamatojoties uz domēnu
Nginx izmantošana ar straumes moduli
stream {
upstream mail_backend_abc {
server 127.0.0.1:26;
}
upstream mail_backend_xyz {
server 127.0.0.1:27;
}
server {
listen 25;
proxy_pass mail_backend_abc;
server_name abc.com;
}
server {
listen 25;
proxy_pass mail_backend_xyz;
server_name xyz.com;
}
}
HAProxy konfigurēšana SMTP porta pārsūtīšanai
Izmantojot HAProxy konfigurāciju
frontend smtp_frontend
bind *:25
acl host_abc hdr(host) -i abc.com
acl host_xyz hdr(host) -i xyz.com
use_backend smtp_backend_abc if host_abc
use_backend smtp_backend_xyz if host_xyz
backend smtp_backend_abc
server smtp_abc 127.0.0.1:26
backend smtp_backend_xyz
server smtp_xyz 127.0.0.1:27
SMTP pārsūtīšanas pārvaldība, izmantojot Postfix transporta kartes
Postfix konfigurācija
/etc/postfix/main.cf:
transport_maps = hash:/etc/postfix/transport
/etc/postfix/transport:
abc.com smtp:[127.0.0.1]:26
xyz.com smtp:[127.0.0.1]:27
Run the following command to update the transport map:
postmap /etc/postfix/transport
Restart Postfix:
systemctl restart postfix
Uzlabotas SMTP portu pārsūtīšanas metodes
Vēl viens svarīgs aspekts, kas jāņem vērā, pārsūtot SMTP savienojumus, ir SSL/TLS izmantošana, lai nodrošinātu e-pasta saziņu. SSL/TLS ieviešana nodrošina, ka starp klientu un serveri pārsūtītie dati tiek šifrēti, nodrošinot papildu drošības līmeni. Lai apstrādātu šifrētus SMTP savienojumus, ar SSL moduli varat izmantot tādus rīkus kā stunnel vai Nginx. Konfigurējot šos rīkus, jūs varat atšifrēt ienākošo savienojumu un pēc tam pārsūtīt to uz atbilstošo iekšējo portu, tādējādi saglabājot drošību, vienlaikus panākot vēlamo porta pārsūtīšanu.
Turklāt uzraudzība un reģistrēšana ir būtiska, lai uzturētu uzticamu un drošu e-pasta servera iestatījumu. Tādus rīkus kā Fail2Ban var izmantot, lai pārraudzītu žurnālfailus un aizliegtu IP adreses, kas liecina par ļaunprātīgām darbībām, piemēram, atkārtotiem neveiksmīgiem pieteikšanās mēģinājumiem. Šo drošības pasākumu apvienošana ar iepriekš apspriestajiem portu pāradresācijas risinājumiem nodrošina stabilu un drošu e-pasta infrastruktūru, kas spēj efektīvi apstrādāt vairākus domēnus vienā serverī.
Bieži uzdotie jautājumi un atbildes par SMTP porta pārsūtīšanu
- Kā es varu pārsūtīt SMTP savienojumus vairākiem domēniem vienā serverī?
- Varat izmantot tādus rīkus kā Nginx Ar stream module, HAProxy, vai Postfix ar transport maps lai pārsūtītu SMTP savienojumus uz dažādiem iekšējiem portiem, pamatojoties uz domēnu.
- Vai Nginx var apstrādāt šifrētus SMTP savienojumus?
- Jā, Nginx var apstrādāt šifrētus SMTP savienojumus, izmantojot SSL module lai atšifrētu ienākošo savienojumu un pēc tam pārsūtītu to uz atbilstošo aizmugursistēmas serveri.
- Kāda ir loma upstream direktīva Nginx?
- The upstream direktīva definē aizmugursistēmas serveru grupu Nginx, ļaujot norādīt, kur trafiks jāpārsūta.
- Kā darbojas proxy_pass direktīvs darbs Nginx?
- The proxy_pass Direktīva nosaka aizmugursistēmas serveri, uz kuru jānosūta pieprasījums, pamatojoties uz tādiem nosacījumiem kā domēna nosaukums.
- Kāda ir funkcija acl komanda HAProxy?
- The acl komanda HAProxy izveido piekļuves kontroles sarakstu, kas atbilst konkrētiem nosacījumiem, piemēram, domēnu nosaukumiem, maršrutēšanas lēmumiem.
- Kā darbojas transport_maps parametru darbs Postfix?
- The transport_maps parametrs Postfix norāda kartēšanas failu, kas nosaka, kā dažādu domēnu pasts ir jānovirza uz konkrētiem iekšējiem portiem.
- Kāda komanda tiek izmantota, lai kompilētu transporta kartes failu programmā Postfix?
- The postmap komanda tiek izmantota, lai apkopotu transporta kartes failu binārā formātā, ko var izmantot Postfix.
- Kāpēc uzraudzība ir svarīga SMTP serveriem?
- Uzraudzība ir ļoti svarīga, lai atklātu un novērstu ļaunprātīgas darbības, nodrošinātu e-pasta servera uzticamību un uzturētu drošību, izmantojot tādus rīkus kā Fail2Ban.
Pēdējās domas par SMTP pārsūtīšanu:
SMTP savienojumu pārsūtīšana dažādiem domēniem uz konkrētiem iekšējiem portiem tajā pašā serverī ir iespējams risinājums, izmantojot tādus rīkus kā Nginx, HAProxy un Postfix. Šīs metodes ļauj efektīvi pārvaldīt trafiku un novērst portu konfliktus, nodrošinot vairāku pasta serveru netraucētu darbību. Turklāt drošības pasākumu un uzraudzības rīku iekļaušana uzlabo servera uzticamību un drošību. Ievērojot šīs vadlīnijas, administratori var efektīvi pārvaldīt un mērogot savu pasta servera infrastruktūru.