“Linux” -da wirtual domen ulanyjylary bilen “Postfiks” we “Dovecot” -y nädip sazlamaly - 2-nji bölüm
Bu tapgyryň öňki makalasynda, phpMyAdmin ulanyp, poçta serweri maglumat bazasyny nädip gurmalydygyny we dolandyrmalydygyny düşündirdik.
- MariaDB bilen Postfiks poçta serwerini we kepderi guruň - 1-nji bölüm
Indi e-poçta ibermegi we almagy hakykata öwürjek içerki programmalary düzmegiň wagty geldi: Postfiks we Dovecot (degişlilikde çykýan we gelýän hatlary dolandyrmak üçin).
Postfiks poçta serwerini sazlamak
“Postfiks” -i düzüp başlamazdan ozal, “Täze Postfiks ulanyjylary üçin maglumatlar” atly bölüme aýratyn üns berip, bu ýerdäki adam sahypalaryna göz aýlamak gowy bolardy. Şeýle etseňiz, bu gollanma bilen bilelikde amal etmek has aňsat bolar.
Birnäçe söz bilen, Postfiks üçin iki konfigurasiýa faýlynyň bardygyny bilmelisiňiz:
- /etc/postfix/main.cf (Postfiks konfigurasiýa parametrleri, has giňişleýin maglumat üçin adama 5 poçta salgysyna serediň).
- /etc/postfix/master.cf (Postfiks ussady daemon konfigurasiýasy, has giňişleýin maglumat üçin 5 adama serediň).
/etc/postfix/main.cf
-da aşakdaky setirleri tapyň (ýa-da zerur bolsa goşuň) we aşakda görkezilen bahalara laýyk gelýändigine göz ýetiriň:
append_dot_mydomain = no biff = no config_directory = /etc/postfix dovecot_destination_recipient_limit = 1 message_size_limit = 4194304 readme_directory = no smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache smtpd_banner = $myhostname ESMTP $mail_name (CentOS) smtpd_tls_cert_file = /etc/pki/dovecot/certs/dovecot.pem smtpd_tls_key_file = /etc/pki/dovecot/private/dovecot.pem smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache smtpd_use_tls = yes virtual_transport = dovecot smtpd_sasl_type = dovecot smtpd_sasl_path = private/auth
Indiki üç sazlama aýratyn ähmiýete eýe. Sary reňkde görkezilen faýllarda Postfiksiň Domain_tbl, Ulanyjylar_tbl we Alias_tbl tablisalaryna girişini düzeris:
virtual_mailbox_domains = mysql:/etc/postfix/mariadb-vdomains.cf virtual_mailbox_maps = mysql:/etc/postfix/mariadb-vusers.cf virtual_alias_maps = mysql:/etc/postfix/mariadb-valias.cf
Döredip, aşakdaky mazmuny goýsaňyz, ýokardaky dürli faýl atlaryny saýlap bilersiňiz. Iki ýagdaýda-da 1-nji bölümde dba ulanyjysy üçin saýlan parolyňyz bilen “PassPword” -yňyzy çalşyň, ýa-da aşakdaky ulanyjy we parol üçin “MariaDB” kök şahsyýetnamalaryny ulanyp bilersiňiz.
Şeýle hem, e-poçta serweri maglumatlar bazasynyň we 1-nji bölümde döredilen tablisalaryň takyk atlaryny ulanýandygyňyza göz ýetiriň.
/etc/postfix/mariadb-vdomains.cf
-da:
user = dba password = YourPassword hosts = 127.0.0.1 dbname = EmailServer_db query = SELECT 1 FROM Domains_tbl WHERE DomainName='%s'
/etc/postfix/mariadb-vusers.cf
-da:
user = dba password = YourPassword hosts = 127.0.0.1 dbname = EmailServer_db query = SELECT 1 FROM Users_tbl WHERE Email='%s'
/etc/postfix/mariadb-valias.cf
-da:
user = dba password = YourPassword hosts = 127.0.0.1 dbname = EmailServer_db query = SELECT Destination FROM Alias_tbl WHERE Source='%s'
Netijede, bu faýllara rugsatlary 640-a üýtgetmegi ýatdan çykarmaň:
# chmod 640 /etc/postfix/mariadb-vdomains.cf # chmod 640 /etc/postfix/mariadb-vusers.cf # chmod 640 /etc/postfix/mariadb-valias.cf
Ulanyjy köküne we topar postfiksine eýeçilik:
# chown root:postfix /etc/postfix/mariadb-vdomains.cf # chown root:postfix /etc/postfix/mariadb-vusers.cf # chown root:postfix /etc/postfix/mariadb-valias.cf
Ondan soň, ygtybarly birikmeleri işjeňleşdirmek üçin /etc/postfix/master.cf
-da aşakdaky sazlamalaryň (ýa-da zerur bolsa goşulýandygyna) göz ýetirmeli:
submission inet n - n - - smtpd -o syslog_name=postfix/submission -o smtpd_tls_security_level=encrypt -o smtpd_sasl_auth_enable=yes -o smtpd_reject_unlisted_recipient=no -o smtpd_recipient_restrictions=permit_sasl_authenticated,reject -o milter_macro_daemon_name=ORIGINATING pickup unix n - n 60 1 pickup cleanup unix n - n - 0 cleanup qmgr unix n - n 300 1 qmgr tlsmgr unix - - n 1000? 1 tlsmgr rewrite unix - - n - - trivial-rewrite bounce unix - - n - 0 bounce defer unix - - n - 0 bounce trace unix - - n - 0 bounce verify unix - - n - 1 verify flush unix n - n 1000? 0 flush proxymap unix - - n - - proxymap proxywrite unix - - n - 1 proxymap smtp unix - - n - - smtp relay unix - - n - - smtp showq unix n - n - - showq error unix - - n - - error retry unix - - n - - error discard unix - - n - - discard local unix - n n - - local #virtual unix - n n - - virtual lmtp unix - - n - - lmtp anvil unix - - n - 1 anvil scache unix - - n - 1 scache
Bellik: -o
opsiýasy bilen başlaýan setirlerdäki indentasiýa möhümdir; bolmasa postfiks barlagy ýalňyşlygy yzyna getirer:
Üýtgeşmeleri ýazdyrmazdan ozal faýlyň aşagyna aşakdaky setirleri goşuň:
dovecot unix - n n - - pipe flags=DRhu user=vmail:vmail argv=/usr/libexec/dovecot/deliver -f ${sender} -d ${recipient}
Bu pursatda, “Postfix” -iň maglumatlar bazasynyň tablisalaryna we 1-nji bölümde döreden domenlerimize, hasaplaryna we lakamlaryna girip biljekdigini barlamak zerurdyr.
Munuň üçin “Postfix” buýrugyny ulanarys, “Postfix” tablisalar bilen aragatnaşygy barlamak üçin peýdaly bir zat, “Postfix” iş wagtynda gözlär, ýöne ilki bilen postfiksi täzeden açmaly bolarys:
# systemctl postfix restart # postmap -q linuxnewz.com mysql:/etc/postfix/mariadb-vdomains.cf # postmap -q someotherdomain.com mysql:/etc/postfix/mariadb-vdomains.cf # postmap -q [email mysql:/etc/postfix/mariadb-vusers.cf # postmap -q [email mysql:/etc/postfix/mariadb-vusers.cf # postmap -q [email mysql:/etc/postfix/mariadb-vusers.cf # postmap -q [email mysql:/etc/postfix/mariadb-valias.cf
Aşakdaky suratda maglumatlar bazasyndaky bar ýazgylar üçin 1-iň yzyna gaýtarylandygyny görüp bileris. Otherwiseogsam, ekrana hiç zat görkezilmeýär. Lakam barlanylanda, lakamyň kartalaşdyrylan hakyky e-poçta hasabynyň yzyna gaýtarylandygyny belläň:
Her e-poçta hasaby üçin kesgitlenen şahsyýet maglumatlaryna garşy tassyklamaýandygymyzy unutmaň, diňe Postfiksiň maglumatlar bazasyndaky ýazgylary tapmak ukybyny barlaýarys.
Şeýlelik bilen, ýokardakydan üýtgeşik netije alsaňyz, mariadb-vdomains.cf, mariadb-vusers.cf we mariadb-valias.cf (ýa-da şol faýllara jaň etmek islän zadyňyzda) ulanyjy/parol jübütini ulanýandygyňyza göz ýetiriň. ).
Kepderi sazlamak
Dovecot, IMAP/POP3 serweri hökmünde, Thunderbird ýa-da Outlook ýaly Poçta Ulanyjy Agenti (MUA, ýa-da müşderi hökmünde hem tanalýar) arkaly ulanyjylara öz poçtalaryna girmek üçin birnäçe mysal görkezmek üçin ýol açýar.
Başlamak üçin, e-poçtalary dolandyrmak üçin ulanyjy we topar döredeliň (e-poçta hasaplarymyz ulgam ulanyjysy bilen baglanyşykly däldigi üçin bize gerek bolar). Ulanylmaýan we köp mukdarda bolýança başga bir UID we GID (aşakda edişimiz ýaly 5000-den başga) ulanyp bilersiňiz:
# groupadd -g 5000 vmail # useradd -g vmail -u 5000 vmail -d /home/vmail -m
“Dovecot” sazlamalary birnäçe konfigurasiýa faýllaryna bölünýär (aşakdaky setirleriň tertipsizdigine göz ýetiriň we/ýa-da aşakda görkezilen sazlamalara laýyk redaktirläň).
/etc/dovecot/dovecot.conf
-da:
!include_try /usr/share/dovecot/protocols.d/*.protocol protocols = imap pop3 lmtp !include conf.d/*.conf !include_try local.conf
/etc/dovecot/conf.d/10-auth.conf
-da (diňe SQL arkaly tassyklamany işlediň we beýleki tanamak usullaryny düşündirişli goýuň):
disable_plaintext_auth = yes auth_mechanisms = plain login !include auth-sql.conf.ext
/etc/dovecot/conf.d/auth-sql.conf.ext
-da (e-poçta salgylaryny yourdomain.com atly bukjanyň içinde/home/vmail-de saklarys, eger döretmeli bolsaňyz ýok. Biziň ýagdaýymyzda şol domen üçin e-poçtalary dolandyrmak üçin mkdir /home/vmail/linuxnewz.com etdik):
passdb { driver = sql args = /etc/dovecot/dovecot-sql.conf.ext } userdb { driver = static args = uid=vmail gid=vmail home=/home/vmail/%d/%n/Maildir }
Ulanyjy hasaplary üçin aýratyn gutular şeýle hasaplar üçin e-poçta ilkinji gezek alnanda dörediler.
/etc/dovecot/conf.d/10-mail.conf
-da:
mail_location = maildir:/home/vmail/%d/%n/Maildir namespace inbox { inbox = yes } mail_privileged_group = mail mbox_write_locks = fcntl
/etc/dovecot/conf.d/10-master.conf
-da:
service imap-login { inet_listener imap { port = 143 } inet_listener imaps { } } service pop3-login { inet_listener pop3 { port = 110 } inet_listener pop3s { } } service lmtp { unix_listener /var/spool/postfix/private/dovecot-lmtp { mode = 0600 user = postfix group = postfix } } service auth { unix_listener /var/spool/postfix/private/auth { mode = 0666 user = postfix group = postfix } unix_listener auth-userdb { mode = 0600 user = vmail } user = dovecot } service auth-worker { user = vmail } service dict { unix_listener dict { } }
/etc/dovecot/conf.d/10-ssl.conf
-da (CA tarapyndan gol çekilen şahadatnamany ulanmagy meýilleşdirýän bolsaňyz, şahadatnamany we esasy ýollary çalşyň):
ssl = required ssl_cert = </etc/pki/dovecot/certs/dovecot.pem ssl_key = </etc/pki/dovecot/private/dovecot.pem
/etc/dovecot/dovecot-sql.conf.ext
maglumat bazasyna maglumatlaryňyzy we 1-nji bölümde döredilen administratiw ulanyjynyň şahsyýet maglumatlaryny giriziň.
Üns beriň: parolyňyzda ýyldyz belgisi (#)
bar bolsa, aşakdaky mysalda görkezilişi ýaly birikdiriş setirini ýapmaly bolarsyňyz:
driver = mysql connect = "host=127.0.0.1 dbname=EmailServer_db user=dba password=PassWith#Here" default_pass_scheme = SHA512-CRYPT password_query = SELECT Email as User, password FROM Users_tbl WHERE Email='%u';
Mundan başga-da, “Dovecot” -yň “kod” /etc/dovecot/conf.d/10-logging.conf daky “Postfiks” -den aýry bolmagy üçin ýazgyny düzüp bilersiňiz:
log_path = /var/log/dovecot.log
Netijede, “Dovecot” gündeliginiň ulanyjy kepderi üçin elýeterlidigine göz ýetiriň:
# chown vmail:dovecot /var/log/dovecot.log # chmod 660 /var/log/dovecot.log
Postifiks konfigurasiýasyny barlaň we düzediň we Firewall-da SMTP, POP3 we IMAP-y işlediň
“Postfix” we/ýa-da “Dovecot” -y düzeniňizde haýsydyr bir mesele bilen ýüzbe-ýüz bolsaňyz, kömek soramak üçin ähli konfigurasiýa faýllaryny ibermegiň ýerine, konfigurasiýa gysgaça mazmunyny (diňe belliksiz setirler) alyp bilersiňiz:
# postconf –n # Summary for /etc/postfix/main.cf # postconf –M # Summary for /etc/postfix/master.cf # doveconf –n # Summary of all configuration files for Dovecot
Mundan başga-da, e-poçta gutularyny diňe vmail tarapyndan okalýandygyna göz ýetiriň:
# chown –R vmail:vmail /home/vmail
Konfigurasiýa faýllaryny vmail we kepderi ulanyjylar hem okamaly:
# chown -R vmail:dovecot /etc/dovecot # chmod -R o-rwx /etc/dovecot
Netijede, diwar diwary arkaly SMTP, POP3 we IMAP-y işledýändigiňize göz ýetiriň:
# firewall-cmd --add-port=143/tcp # firewall-cmd --add-port=143/tcp --permanent # firewall-cmd --add-port=110/tcp # firewall-cmd --add-port=110/tcp --permanent # firewall-cmd --add-port=587/tcp # firewall-cmd --add-port=587/tcp --permanent
“Thunderbird” -i “Postfiks” üçin e-poçta müşderisi hökmünde sazlaň
E-poçta aragatnaşygynda ulanylýan portlar üçin gorag diwaryndan girip, e-poçta müşderisini sazlamagyň wagty geldi. [E-poçta bilen goralan] we degişli paroly, mail.linuxnewz.com bilen bilelikde IMAP (ýa-da POP3) we SMTP serweri ulanyp, şeýle hasabyňyza e-poçta iberip we kabul edip başlarys:
Ygtybarly 3-nji tarap tarapyndan gol çekilmedik şahadatnamany ulanýandygyňyz üçin görkezilen duýduryş habaryny arkaýyn äsgermezlik edip bilersiňiz:
Gysga synag e-poçta düzeliň we Ibermek düwmesine basalyň:
Çykýan serwer üçin öz-özüne gol çekilen şahadatnamany kabul etmek soralanda, öňküsi ýaly tassyklaň:
Ahyrynda, iberilen e-poçta alandygyňyzy ýa-da ýokdugyňyzy görmek üçin niýetlenen e-poçta gidiň. Şeýle bolsa, oňa jogap beriň we deslapky e-poçta gutusyna iberilendigini ýa-da ýokdugyny görüň (başgaça, näsazlyklary düzetmek üçin/var/log/maillog-daky Postfiks gündeligine ýa-da Dovecot gündeligine serediň) :
Indi işleýän “Postfix” we “Dovecot” e-poçta serweriňiz bar we e-poçta iberip we alyp başlap bilersiňiz.
Gysgaça mazmun
Bu makalada Linux serweriňizdäki e-poçta traffigini dolandyrmak üçin Postfix we Dovecot-y nädip sazlamalydygyny düşündirdik. Bu makalada görkezilişi ýaly bir zat işlemese, Dovecot resminamalaryny barlamak üçin wagt sarp ediň.
“Postfix” poçta serwerini gurmak aňsat iş bolmasa-da, her ulgam dolandyryjysy üçin peýdaly tejribe bolandygyny ýadyňyzdan çykarmaň.
Dokumentleri öwreneniňizden soň, Postfiks we/ýa-da Dovecot bilen göreşýän bolsaňyz, aşakdaky düşündiriş formuny ulanyp bize bellik goýup bilersiňiz we size kömek etmäge şat bolarys (onlaýn ammar hyzmatyna ýüklemegi ýatdan çykarmaň) Postfiks we kepderi konfigurasiýasy, bu makalada görkezilişi ýaly postconf we kepderi bilen ulanylýar).