Kuidas SMTP-ühendusi erinevatesse portidesse edastada

Kuidas SMTP-ühendusi erinevatesse portidesse edastada
Kuidas SMTP-ühendusi erinevatesse portidesse edastada

SMTP-pordi edastamise mõistmine:

Erinevate domeenide SMTP-ühenduste edastamine sama serveri erinevatesse sisemistesse portidesse võib olla keeruline, eriti kui mõlemad meiliserverid peavad kasutama porti 25. See seadistus nõuab meetodit, mis suunab sissetuleva SMTP-liikluse domeenipõhisesse sobivasse sisemisse porti.

Selles juhendis uurime, kuidas seda konfiguratsiooni saavutada, ja arutame tööriistu, mis võivad seda protsessi hõlbustada. Olenemata sellest, kas kasutate Nginxi, HAProxyt või muid lahendusi, on eesmärk tõhusalt hallata oma SMTP-ühendusi ilma pordikonfliktideta.

Käsk Kirjeldus
upstream Määrab Nginxi taustaserverite rühma koormuse tasakaalustamiseks.
proxy_pass Määrab taustaserveri, kuhu päring tuleb Nginxis saata.
acl Määratleb juurdepääsu kontrolli loendi HAProxys tingimusliku marsruutimise jaoks.
hdr(host) Kontrollib HAProxy HTTP-hosti päist, et see vastaks konkreetsele domeenile.
use_backend Suunab liikluse HAProxy tingimuste alusel määratud taustaprogrammi.
transport_maps Määrab Postfixis domeenipõhiste transpordisätete vastendusfaili.
postmap Loob Postfixi jaoks lihttekstifailist binaarse räsikaardifaili.

SMTP edastamislahenduste üksikasjalik selgitus

Ülaltoodud näidetes toodud skriptid näitavad, kuidas suunata erinevate domeenide SMTP-ühendused ümber konkreetsetesse sisemistesse portidesse, kasutades selliseid tööriistu nagu Nginx, HAProxy ja Postfix. Esimeses skriptis kasutame upstream direktiiv Nginxis, et määratleda iga domeeni jaoks taustaserverid. The proxy_pass direktiiv määrab seejärel domeeninime põhjal, millisele taustaserverile ühendus edastada. See võimaldab sissetulevat SMTP-liiklust pordis 25 suunata iga domeeni erinevatesse sisemistesse portidesse.

Teine skript kasutab sarnaste funktsioonide jaoks HAProxyt. The acl käsk loob juurdepääsu kontrolli loendi, et see sobiks sissetuleva domeeniga, kasutades hdr(host) käsk. Sõltuvalt domeenist, use_backend käsk suunab liikluse vastavasse taustaserverisse. Kolmandas skriptis on Postfix konfigureeritud kasutama transpordikaardi faili, mille on määratlenud transport_maps parameeter. See fail kaardistab iga domeeni konkreetse sisemise pordiga ja postmap käsk koostab transpordikaardi vormingusse, mida Postfix saab kasutada. Need lahendused tagavad, et SMTP-liiklus suunatakse õigesti ettenähtud meiliserverisse ilma pordikonfliktideta.

SMTP-ühenduste ümbersuunamine domeeni alusel

Nginxi kasutamine koos voomooduliga

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 seadistamine SMTP-pordi edastamiseks

HAProxy konfiguratsiooni kasutamine

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 edastamise haldamine Postfixi transpordikaartidega

Postfixi konfiguratsioon

/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

Täiustatud SMTP-pordi edastamise tehnikad

Teine oluline aspekt, mida SMTP-ühenduste edastamisel arvestada, on SSL-i/TLS-i kasutamine meilisuhtluse kaitsmiseks. SSL/TLS-i rakendamine tagab kliendi ja serveri vahel edastatavate andmete krüpteerimise, pakkudes täiendavat turvakihti. Krüptitud SMTP-ühenduste haldamiseks saate SSL-mooduliga kasutada tööriistu, nagu stunnel või Nginx. Nende tööriistade konfigureerimisega saate sissetuleva ühenduse dekrüpteerida ja seejärel vastavasse sisemisse porti edastada, säilitades seeläbi turvalisuse ja saavutades soovitud pordi edastamise.

Lisaks on jälgimine ja logimine olulised usaldusväärse ja turvalise meiliserveri seadistuse säilitamiseks. Selliseid tööriistu nagu Fail2Ban saab kasutada logifailide jälgimiseks ja IP-aadresside keelamiseks, mis näitavad pahatahtlikku tegevust, näiteks korduvaid ebaõnnestunud sisselogimiskatseid. Nende turvameetmete kombineerimine varem käsitletud pordiedastuslahendustega tagab tugeva ja turvalise e-posti infrastruktuuri, mis suudab tõhusalt hallata mitut domeeni ühes serveris.

Levinud küsimused ja vastused SMTP-pordi edastamise kohta

  1. Kuidas ma saan edastada SMTP-ühendusi mitme domeeni jaoks ühes serveris?
  2. Võite kasutada selliseid tööriistu nagu Nginx koos stream module, HAProxy, või Postfix koos transport maps SMTP-ühenduste edastamiseks erinevatesse sisemistesse portidesse vastavalt domeenile.
  3. Kas Nginx saab hakkama krüptitud SMTP-ühendustega?
  4. Jah, Nginx saab krüptitud SMTP-ühendustega hakkama, kasutades SSL module sissetuleva ühenduse dekrüpteerimiseks ja seejärel vastavasse taustaserverisse edastamiseks.
  5. Mis roll on upstream direktiiv Nginxis?
  6. The upstream direktiiv määratleb Nginxi taustaserverite rühma, võimaldades teil määrata, kuhu liiklus tuleks edastada.
  7. Kuidas toimib proxy_pass direktiiv töötab Nginxis?
  8. The proxy_pass direktiiv määrab taustaserveri, kuhu päring tuleb saata, võttes aluseks sellised tingimused nagu domeeninimi.
  9. Mis on funktsioon acl käsk HAProxys?
  10. The acl käsk HAProxy loob juurdepääsu kontrolli loendi, mis vastab konkreetsetele tingimustele, näiteks domeeninimedele, marsruutimisotsuste jaoks.
  11. Kuidas toimib transport_maps parameetrid töötavad Postfixis?
  12. The transport_maps parameeter Postfixis määrab vastendusfaili, mis määrab, kuidas erinevate domeenide e-kirjad tuleks suunata konkreetsetesse sisemistesse portidesse.
  13. Millist käsku kasutatakse Postfixis transpordikaardi faili koostamiseks?
  14. The postmap käsku kasutatakse transpordikaardi faili kompileerimiseks binaarvormingusse, mida Postfix saab kasutada.
  15. Miks on jälgimine SMTP-serverite jaoks oluline?
  16. Jälgimine on väga oluline pahatahtlike tegevuste tuvastamiseks ja ennetamiseks, meiliserveri töökindluse tagamiseks ja turvalisuse säilitamiseks selliste tööriistade abil nagu Fail2Ban.

Viimased mõtted SMTP edastamise kohta:

Erinevate domeenide SMTP-ühenduste edastamine sama serveri konkreetsetesse sisemistesse portidesse on teostatav lahendus, kasutades selliseid tööriistu nagu Nginx, HAProxy ja Postfix. Need meetodid võimaldavad tõhusat liikluskorraldust ja hoiavad ära pordikonfliktid, tagades mitme meiliserveri tõrgeteta töö. Lisaks suurendab turvameetmete ja jälgimistööriistade kaasamine serveri töökindlust ja turvalisust. Neid juhiseid järgides saavad administraatorid oma meiliserveri infrastruktuuri tõhusalt hallata ja skaleerida.