gtemata.com

Cum se configurează Sendmail

Acest articol descrie modul de configurare a gestionării poștei electronice după înregistrarea unui domeniu. Sendmail este un software pentru gestionarea e-mail-urilor pentru Unix / Linux. Spre deosebire de alte programe de poștă electronică, Sendmail nu este un Agent de utilizator de mail (MUA). Este pur și simplu un program de livrare.

Sendmail este un server de mail (agent de transfer de mesaje, MTA). Furnizorii de rețele utilizează serviciul Sendmail pentru a trimite poștă către utilizatorii locali sau alte rețele.

paşi

Metoda 1

Descărcați Sendmail
1
Descărcați Sendmail. Este posibil ca un mesaj automat scurt să fie trimis cu o indicație a versiunii curente. Instrucțiunile descrise mai jos sunt pentru versiunile 8.10.0 sau mai noi.
  • 2
    Generați și instalați Sendmail pentru computerul dvs. În cele mai multe cazuri, înseamnă decomprima distribuția, citirea fișierelor README și sendmail / README și tastarea Generate în directorul Sendmail. Pentru mai multe detalii, consultați fișierul INSTALL din directorul rădăcină al distribuției.
  • Metoda 2

    Setați Sendmail
    1
    Este important să înțelegeți că Sendmail utilizează informații de la sistemul de nume de domeniu (DNS) pentru a asocia adresele IP cu cutiile poștale corespunzătoare.
  • 2
    Alegeți un nume de domeniu disponibil. În exemplul nostru, vom folosi yourdomain.com.
  • 3
    Configurați DNS pe serverul dvs. Definiți două mașini ca servere de nume de domenii primare și secundare. Se presupune că știți cum să faceți acest lucru - dacă nu, vă recomandăm să citiți cartea "DNS și BIND" (a patra ediție) de O`Reilly Media. Familiarizați-vă cu conceptul de BIND înainte de a continua.
  • 4
    Configurați înregistrările MX pentru domeniul dvs. (Notă: Înregistrările CNAME nu pot fi utilizate). Înregistrările MX sunt explicate în cartea Sendmail de către O`Reilly Media - a doua ediție oferă o prezentare generală în § 15.3 și descrie modul de configurare a acestora în § 21.3. A treia ediție, pe de altă parte, explică totul în § 9.3. Există două opțiuni pentru înregistrările MX:
  • 5
    Determinați metoda de conectare:
  • Dacă serverul dvs. de poștă electronică care vă va difuza noul domeniu are o conexiune la Internet cu program integral, acesta ar trebui să fie gazda primară MX pentru domeniul dvs. Cu această configurație, înregistrările MX vor fi astfel:
  • yourdomain.com. În MX 10 yourmailserver.yourdomain.com.
  • În caz contrar, va trebui să căutați altă mașină pentru a coada corespondența domeniului dvs. atunci când nu sunteți conectat (ă). Mai întâi trebuie să obțineți permisiunea de la proprietarul calculatorului. Această mașină trebuie să fie configurată pentru a permite transmiterea către domeniul dvs. Dacă rulați deja Sendmail, va trebui pur și simplu să adăugați domeniul în fișier relee-domenii din acea mașină. Apoi, va trebui să indicați înregistrările dvs. MX acelei mașini. De exemplu:
  • yourdomain.com. În MX 10 yourmailserver.yourdomain.com.
  • yourdomain.com. IN MX 20 othermailserver.otherdomain.com.

  • 6
    Acum serverele de nume de domeniu sunt configurate. Înregistrați-vă domeniul folosind unul dintre registrele. Când vă înregistrați, informați registrul cu privire la cele două servere de nume de domeniu, astfel încât domeniul să indice către serverul dvs.
  • Metoda 3

    Configurați Sendmail
    1
    citit tot dosarul cf / README. Acesta vă va oferi instrucțiuni despre cum să creați un fișier .mc în director cf / cf. Dosarul mailserver.mc de obicei va fi astfel:
    • devia (-1) DNL
    • #
    • # Acest fișier conține definițiile globale pentru domenii.com
    • #
    • devia (0) DNL
    • VERSIONID (`@ (#) mailserver.mc 1.0 (yourdomain.com) 5/1/97 `)
    • Ostype (solaris2) DNL
    • DOMENIU (yourdomain.com) DNL
    • FEATURE ("virtusertable", "dbm / etc / mail / virtusertable") dnl
    • MAILER DNL (local)
    • MAILER (smtp) DNL

    • Sistemul tău actual va fi înlocuit de solaris2.
  • 2
    Un fișier tipic cf / domeniu / yourdomain.com.m4 va fi mai mult sau mai puțin așa:
  • devia (-1) DNL
  • #
  • # Acest fișier conține definițiile globale pentru domenii.com
  • #
  • devia (0) DNL
  • VERSIONID (`@ (#) yourdomain.com.m4 1.0 (yourdomain.com) 5/1/97 `)
  • FEATURE ( `use_cw_file„) DNL
  • 3
    Ar putea avea și alții caracteristică ()e e define ()„S. Tabelul virtual al utilizatorilor este punctul cheie al tuturor acestor lucruri.
  • 4


    Generați fișierul /etc/mail/sendmail.cf din dosar mailserver.mc, apoi tastați:
  • cd sendmail-VERSION / cf / cf
  • / Construiți mailserver.cf
  • cp mailserver.cf /etc/mail/sendmail.cf
  • 5
    Creați tabelul de utilizatori virtuali. Acest lucru este descris în detaliu în cartea Sendmail: § 19.6.28 în a doua ediție, sau § 4.8.51 în a treia Edition- aici este o privire de ansamblu. Tabelul este o bază de date care stabilește o corespondență între adresele virtuale și adresele reale. Creați un fișier text în care fiecare linie are o pereche cheie / valoare, separate de un spațiu. De exemplu:

  • Exemplul 1:
  • [email protected] jschmoe
  • [email protected] [email protected]
  • @ yourdomain.com jschmoe
  • În acest prim exemplu, adresa [email protected] vor fi trimise utilizatorului local jschmoe- [email protected] acesta va fi trimis utilizatorului de la distanță [email protected], și orice e-mail către yourdomain.com va fi, de asemenea, trimis la jschmoe.

  • Exemplul 2:
  • [email protected] jschmoe% 3
  • [email protected] &eroare npsp: nouser Nu există un astfel de utilizator aici
  • [email protected] lista dvs. de domenii
  • @ yourdomain.com% [email protected]
  • În acest al doilea exemplu, adresa [email protected] vor fi trimise utilizatorului local jschmoe 3% (citiți nota 3 de mai jos pentru o explicație a semnificației% 3), adresa [email protected] va reveni la eroarea indicată, adresa [email protected] vor fi trimise utilizatorului local domeniuldvs-list (veți utiliza în cele din urmă fișierul de aliasuri pentru a redirecționa) și orice alt utilizator a yourdomain.com vor fi trimise unui utilizator de la distanță cu același nume a othercompany.com.
  • 6
    Dacă aveți un utilizator local, spuneți sam, și nu există nici o cheie pentru [email protected] și nici o cheie de captură pentru @ yourdomain.com, atunci sendmail va reveni la utilizatorul local sam în procesul de redirecționare [email protected]. Pentru a evita acest lucru, trebuie să utilizați o cheie de captură sau o cheie explicită pentru [email protected]- exemplul de mai sus Eroare: nouser ar putea fi util în acest caz.
  • 7
    Dacă doriți ca o adresă virtuală să fie redirecționată către mai multe adrese reale, trebuie să o faceți indirect. Trebuie să aveți adresa virtuală care redirecționează către un alias local, apoi să redirecționați aliasul local către grupul de adrese dorit. De exemplu, în tabelul de utilizatori virtuali:
  • [email protected] localjoe

    astfel încât în ​​fișierul de aliasuri:
  • localjoe: [email protected], [email protected]
  • În exemplul de mai sus:
  • [email protected] jschmoe% 3
  • 8
    3% este conservarea părții opționale +detaliu din adresa originală. În general, + detaliu înseamnă că, atunci când sendmail primește o adresă de tip + Detaliu domeniu utilizator @, dacă domeniul este în clasa w (vezi pasul 7 de mai sus), sendmail verificați dacă user + detaliu acesta poate fi redirecționat. În caz contrar, reveniți la un utilizator simplu. Pe scurt:
  • [email protected]
  • [email protected]
  • [email protected]

    dacă totul se potrivește cu intrarea de mai sus, cu 3% păstrând partea de nimic +detaliu, +foo și +reallylongextrapart respectiv.
  • Sunt permise mai multe domenii, iar adresele virtuale din fiecare domeniu sunt independente. De exemplu, ați putea avea:
  • [email protected] localjoe
  • [email protected] [email protected]
  • [email protected] localjoe
  • [email protected] eroare: nouser Nu există un astfel de utilizator aici
  • 9
    Pentru cei care administrează mai multe domenii, ar fi mai bine să aibă fiecare domeniu de listă într-un fișier separat, iar apoi a scrie un scenariu de scurt pentru a înlănțui toate fișierele într-un tabel utilizator virtual Master. Dar mergem prea departe - acesta este pasul următor ...
  • Metoda 4

    Construiți tabelul utilizatorului sendmail
    1
    Construiți tabela virtuală a utilizatorilor. Dacă este localizat fișierul text al tabelului utilizator virtual fișierul sursă, și dacă utilizați tipul baza de date dbm, utilizați comanda:
    • makemap dbm / etc / mail / virtusertable < fișierul sursă
    • Notă: dacă ați construit sendmail cu newdb în loc de NDBM, apoi în rândul de mai sus utilizați hash în loc de dbm.
    • Aceasta creează unul sau mai multe fișiere non-text (de obicei /etc/mail/virtusertable.dir și /etc/mail/virtusertable.pag, sau /etc/mail/virtusertable.db), dar în realitate nu se schimbă / Etc / e-mail / virtusertable. De aceea, aceasta este locația recomandată pentru fișierul sursă.
    • Dacă doriți să schimbați harta utilizatorilor locali pentru e-mailurile de ieșire, va trebui să adăugați asistență pentru tabele generice în fișierul dvs. .mc:
    • FEATURE ("genericstable", "dbm / etc / mail / genericstable") dnl
    • GENERICS_DOMAIN_FILE ( `/ etc / poștă / generice-domenii) DNL
    • Și va trebui să creați / Etc / e-mail / genericstable așa este / Etc / e-mail / virtusertable mai sus, doar că coloanele sunt inversate:
    • jschmoe [email protected]

    Metoda 5

    Adăugați nume de domenii la sendmail
    1
    Adăugați toate numele de domenii noi în clasă w de sendmail. De obicei, acest lucru se face adăugând o linie a / Etc / e-mail /-gazdă-nume locale (/etc/sendmail.cw în versiunea anterioară 8.10) cu valoarea fiecărui nume de domeniu. De asemenea, dacă utilizați genericstable, va trebui să adăugați fiecare domeniu pe care doriți să îl schimbați / Etc / poștă / generice-domenii.
  • 2
    Reporniți o SIGNUP sendmail.
  • 3
    Nu trebuie să reporniți sendmail după schimbarea tabelelor de utilizatori virtuale sau generice, dar numai după editare /etc/mail/sendmail.cf sau fișierul de tip de tip / Etc / e-mail /-gazdă-nume locale.
  • Un pas suplimentar este necesar pentru gazdele care nu sunt întotdeauna conectate. După cum sa menționat în secțiunea privind configurarea MX, dacă utilizați o altă gazdă la coadă e-mail în timp atunci când nu sunteți conectat, va trebui să impună livrarea corespondenței acumulate pe serverul de e-mail secundară. Pentru a face acest lucru, atunci când serverul principal se conectează, trebuie să executați scriptul etrn.pl localizat în director contrib a distribuției sendmail:
  • etrn.pl secundar-mx-gazdă yourdomain.com
  • Este recomandabil să îl inserați la sfârșitul scriptului de pornire pe toate MX primar. Este util în special ca o completare a oricărui script care inițializează conexiunea MXs primar fără conexiuni full-time.
  • În acest moment, ați terminat setările și persoanele ar trebui să poată trimite e-mailuri către adrese @ yourdomain.com.
  • Metoda 6

    Verificați fișierul de configurare
    1
    Testați-vă configurația și verificați dacă totul funcționează așa cum ar trebui, înainte de a face public noul nume de domeniu și adresele de e-mail pentru domeniul respectiv. Dacă lucrurile nu funcționează așa cum ar trebui, faceți un test cu modul sendmail:

    Sfaturi

    • Ce face el sendmail:
    • El asculta pe porturile de rețea pentru orice mesaje.
    • Sortați e-mailul și livrați-l local sau pe alte servere.
    • Adăugați e-mailuri la fișiere sau canalizați-le în alte programe.
    • Acumulați mesajele (dacă livrarea imediată nu funcționează).
    • Conversia adreselor de e-mail către / de la nume de utilizatori sau gestionarea listelor de distribuție.
    • citește "norme" pentru a gestiona poșta specială, astfel încât să puteți identifica spam-ul sau să verificați corectitudinea.
    • Dacă ați construit sendmail cu newdb în loc de NDBM, în linia de mai sus va trebui să utilizați hashes în loc de dbm.
    Distribuiți pe rețelele sociale:

    înrudit