Postfix + Dovecot + Squirrelmail at mga lokal na gumagamit - SME Networks

Pangkalahatang index ng serye: Mga Network ng Computer para sa mga SME: Panimula

Ang artikulong ito ay ang pagpapatuloy at huli sa mga miniserye:

Kamusta mga kaibigan at kaibigan!

Los Mga mahilig nais nilang magkaroon ng kanilang sariling mail server. Hindi nila nais na gumamit ng mga server kung saan ang "Privacy" ay nasa pagitan ng mga marka ng tanong. Ang taong namamahala sa pagpapatupad ng serbisyo sa iyong maliit na server ay hindi isang dalubhasa sa paksa at sa una ay susubukan na mai-install ang core ng isang hinaharap at kumpletong mail server. Iyon ba ang "mga equation" upang makagawa ng isang Buong Mailserver ay medyo mahirap unawain at ilapat. 😉

Mga anotasyon sa margin

  • Kinakailangan upang maging malinaw tungkol sa kung aling mga pagpapaandar ang bawat programa na kasangkot sa isang Mailserver ay gumaganap. Bilang isang paunang gabay ay nagbibigay kami ng isang buong serye ng mga kapaki-pakinabang na mga link na may ipinahayag na layunin na sila ay binisita.
  • Ang pagpapatupad nang manu-mano at mula sa simula ng isang Kumpletong Serbisyo ng Mail ay isang nakakapagod na proseso, maliban kung ikaw ay isa sa "Pinili" na gumaganap ng ganitong uri ng gawain araw-araw. Ang isang Mail Server ay karaniwang binubuo ng iba't ibang mga programa na hiwalay na hawakan SMTP, POP / IMAP, Lokal na Imbakan ng Mga Mensahe, mga gawaing nauugnay sa paggamot ng SPAM, Antivirus, atbp. LAHAT ng mga programang ito ay dapat makipag-usap nang tama sa bawat isa.
  • Walang sukat na umaangkop sa lahat o "pinakamahusay na kasanayan" sa kung paano pamahalaan ang mga gumagamit; saan at kung paano mag-imbak ng mga mensahe, o kung paano gawin ang lahat ng mga sangkap na gumana bilang isang solong buo.
  • Ang pagpupulong at pag-ayos ng isang Mailserver ay madalas na maging kasuklam-suklam sa mga bagay tulad ng mga pahintulot sa file at mga may-ari, pagpili kung aling gumagamit ang magiging singil sa isang tiyak na proseso, at sa maliliit na error na ginawa sa ilang esoteric config file.
  • Maliban kung alam mo nang husto kung ano ang iyong ginagawa, ang resulta ay magiging isang walang katiyakan o bahagyang hindi gumaganang Mail Server. Na sa pagtatapos ng pagpapatupad Hindi ito gumana, posibleng ito ang pinakamaliit sa mga kasamaan.
  • Mahahanap namin sa Internet ang isang mahusay na bilang ng mga recipe sa kung paano gumawa ng isang Mail Server. Isa sa pinaka kumpleto -sa aking personal na opinyon- ay ang inalok ng may-akda Ivar Abrahamamsen sa ikalabintatlong edisyon ng Enero 2017 «Paano mag-set up ng isang mail server sa isang sistema ng GNU / Linux".
  • Inirerekumenda rin namin na basahin ang artikulo «Isang Mailserver sa Ubuntu 14.04: Postfix, Dovecot, MySQL«, o "Isang Mailserver sa Ubuntu 16.04: Postfix, Dovecot, MySQL".
  • Totoo Ang pinakamahusay na dokumentasyon hinggil sa bagay na ito ay matatagpuan sa Ingles.
    • Kahit na hindi namin kailanman ginawa ang isang Mailserver na tapat na ginabayan ng Paano ... na nabanggit sa naunang talata, ang simpleng katotohanan na sundin ito nang sunud-sunod ay magbibigay sa amin ng napakahusay na ideya kung ano ang kakaharapin natin.
  • Kung nais mong magkaroon ng isang kumpletong Mailserver sa ilang hakbang lamang, maaari mong i-download ang imahe iRedOS-0.6.0-CentOS-5.5-i386.iso, o maghanap ng isang mas moderno, maging iRedOS o iRedMail. Ito ang paraan na personal kong inirerekumenda.

Mag-i-install at mai-configure namin:

Ito ay mananatiling dapat gawin:

Hindi bababa sa mga sumusunod na serbisyo ay mananatiling maipatupad:

  • postgrey: Mga patakaran sa server ng postfix para sa Mga Gray na Listahan at tanggihan ang Junk Mail.
  • Amavisd-bago: script na lumilikha ng isang interface sa pagitan ng MTA, at mga scanner ng virus at mga filter ng nilalaman.
  • Clamav Antivirus: suite ng antivirus
  • SpamAssassin: i-extract ang Junk Mail
  • labaha (pyzor): Nakukuha ang SPAM sa pamamagitan ng isang ipinamahagi at nagtutulungan na network. Ang Vipul Razor network ay nagpapanatili ng isang na-update na katalogo ng paglaganap ng spam o junk mail.
  • Naitala ng DNS ang "DomainKeys Identified Mail" o DKIM.

Mga package postgrey, amavisd-bago, clamav, spamassassin, labaha y pyzor Ang mga ito ay matatagpuan sa mga repository ng programa. Mahahanap din namin ang programa openkim.

  • Ang wastong pagdeklara ng mga tala ng DNS na "SPF" at "DKIM" ay mahalaga kung hindi namin nais na mailagay lamang ang aming mail server, na ideklarang hindi kanais-nais o isang tagagawa ng SPAM o Junk Mail, ng iba pang mga serbisyo sa mail tulad ng Gmail, Yako naman, Hotmail, atbp.

Paunang pagsusuri

Tandaan na ang artikulong ito ay isang pagpapatuloy ng iba na nagsisimula sa Squid + Pagpapatotoo ng PAM sa CentOS 7.

Ang Conn32 LAN interface ay konektado sa Panloob na Network

[root @ linuxbox ~] # nano / etc / sysconfig / network-scripts / ifcfg-ens32
DEVICE=ens32
ONBOOT=yes
BOOTPROTO=static
HWADDR=00:0c:29:da:a3:e7
NM_CONTROLLED=no
IPADDR=192.168.10.5
NETMASK=255.255.255.0
GATEWAY=192.168.10.1
DOMAIN=desdelinux.fan
DNS1=127.0.0.1
ZONE = pampubliko

[root @ linuxbox ~] # ifdown ens32 && ifup ens32

Ang Conn34 WAN interface na konektado sa Internet

[root @ linuxbox ~] # nano / etc / sysconfig / network-scripts / ifcfg-ens34
DEVICE = ens34 ONBOOT = yes BOOTPROTO = static HWADDR = 00: 0c: 29: da: a3: e7 NM_CONTROLLED = no IPADDR = 172.16.10.10 NETMASK = 255.255.255.0 # Ang ADSL router ay konektado sa interface na ito na may # ang sumusunod na address IP GATEWAY = 172.16.10.1 DOMAIN = desdelinux.fan DNS1 = 127.0.0.1
ZONE = panlabas

Resolusyon ng DNS mula sa LAN

[root @ linuxbox ~] # cat /etc/resolv.conf search mula sa linux.fan nameserver 127.0.0.1 nameserver 172.16.10.30 [root @ linuxbox ~] # host mail
Ang mail.desdelinux.fan ay isang alias para sa linuxbox.desdelinux.fan. Ang linuxbox.desdelinux.fan ay may address sa 192.168.10.5 linuxbox.desdelinux.fan mail ay pinangangasiwaan ng 1 mail.desdelinux.fan.

[root @ linuxbox ~] # host mail.fromlinux.fan
Ang mail.desdelinux.fan ay isang alias para sa linuxbox.desdelinux.fan. Ang linuxbox.desdelinux.fan ay may address sa 192.168.10.5 linuxbox.desdelinux.fan mail ay pinangangasiwaan ng 1 mail.desdelinux.fan.

Resolusyon ng DNS mula sa Internet

buzz @ sysadmin: ~ $ host mail.fromlinux.fan 172.16.10.30
Paggamit ng server ng domain: Pangalan: 172.16.10.30 Address: 172.16.10.30 # 53 Mga alias: mail.desdelinux.fan ay isang alias para sa desdelinux.fan.
mula sa linux.fan ay may address na 172.16.10.10
ang desdelinux.fan mail ay pinangangasiwaan ng 10 mail.desdelinux.fan.

Mga problema sa paglutas ng hostname na "desdelinux.fan" nang lokal

Kung mayroon kang mga problema sa paglutas ng hostname «fromlinux.fan" galing sa LAN, subukang bigyan ng puna ang linya ng file /etc/dnsmasq.conf kung saan ito ay idineklara local = / mula sa linux.fan /. Pagkatapos, i-restart ang Dnsmasq.

[root @ linuxbox ~] # nano /etc/dnsmasq.conf # Komento ang linya sa ibaba:
# local = / desdelinux.fan /

[root @ linuxbox ~] # service dnsmasq restart
Ang pag-redirect sa / bin / systemctl restart dnsmasq.service

[root @ linuxbox ~] # serbisyo katayuan dnsmasq

[root @ linuxbox ~] # host mula sa linux.fan
Ang desdelinux.fan ay may address na 172.16.10.10 ang desdelinux.fan mail ay pinangangasiwaan ng 10 mail.desdelinux.fan.

Postfix at Dovecot

Ang napakalawak na dokumentasyon ng Postfix at Dovecot ay matatagpuan sa:

[root @ linuxbox ~] # ls /usr/share/doc/postfix-2.10.1/
bounce.cf.default LICENSE README-Postfix-SASL-RedHat.txt COMPATIBILITY main.cf.default na TLS_ACKNOWLEDGEMENTS mga halimbawa README_FILES TLS_LICENSE

[root @ linuxbox ~] # ls /usr/share/doc/dovecot-2.2.10/
AUTHORS COPYING.MIT dovecot-openssl.cnf BALITA wiki COPYING ChangeLog halimbawa-config README COPYING.LGPL dokumentasyon.txt mkcert.sh solr-schema.xml

Sa CentOS 7, ang Postfix MTA ay na-install bilang default kapag pinili namin ang pagpipiliang Infrastructure Server. Dapat naming i-verify na pinapayagan ng konteksto ng SELinux ang pagsusulat sa Potfix sa lokal na pila ng mensahe:

[root @ linuxbox ~] # getsebool -a | grep postfix
postfix_local_write_mail_spool -> on

Mga pagbabago sa FirewallD

Gamit ang graphic na interface upang mai-configure ang FirewallD, dapat naming tiyakin na ang mga sumusunod na serbisyo at port ay pinagana para sa bawat Zone:

# ----------------------------------------------- -----
# Mga Pag-aayos sa FirewallD
# ----------------------------------------------- -----
# firewall
# Public zone: http, https, imap, pop3, mga serbisyo ng smtp
# Public zone: port 80, 443, 143, 110, 25

# Panlabas na zone: http, https, imap, pop3s, mga serbisyo ng smtp
# Panlabas na zone: mga port 80, 443, 143, 995, 25

Nag-install kami ng Dovecot at mga kinakailangang programa

[root @ linuxbox ~] # yum install dovecot mod_ssl procmail telnet

Minimum na pagsasaayos ng Dovecot

[root @ linuxbox ~] # nano /etc/dovecot/dovecot.conf
protocol = imap pop3 lmtp
makinig = *, ::
pag-login_greeting = Dovecot ay handa na!

Malinaw naming hindi pinagana ang pagpapatotoo ng plaintext ng Dovecot:

[root @ linuxbox ~] # nano /etc/dovecot/conf.d/10-auth.conf 
huwag paganahin ang_plaintext_auth = oo

Idineklara namin ang Pangkat na may mga kinakailangang pribilehiyo upang makipag-ugnay sa Dovecot, at ang lokasyon ng mga mensahe:

[root @ linuxbox ~] # nano /etc/dovecot/conf.d/10-mail.conf
mail_location = mbox: ~ / mail: INBOX = / var / mail /% u
mail_privileged_group = mail
mail_access_groups = mail

Mga sertipiko para sa Dovecot

Awtomatikong bumubuo ang Dovecot ng iyong mga sertipiko ng pagsubok batay sa data sa file /etc/pki/dovecot/dovecot-openssl.cnf. Upang magkaroon ng mga bagong sertipiko na nabuo alinsunod sa aming mga kinakailangan, dapat naming isagawa ang mga sumusunod na hakbang:

[root @ linuxbox ~] # cd / etc / pki / dovecot /
[root @ linuxbox dovecot] # nano dovecot-openssl.cnf
[req] default_bits = 1024 encrypt_key = oo nakikilala_name = req_dn x509_extensions = cert_type prompt = hindi [req_dn] # bansa (2 titik ng code) C = CU # Pangalan ng Estado o Lalawigan (buong pangalan) ST = Cuba # Pangalan ng Lokalidad (hal. lungsod ) L = Habana # Organisasyon (hal. Kumpanya) O = FromLinux.Fan # Pangalan ng Yunit ng Organisasyon (hal. Seksyon) OU = Mga mahilig sa # Karaniwang Pangalan (* .example.com posible rin) CN = *. Desdelinux.fan # E -mail contact emailAddress=buzz@desdelinux.fan [cert_type] nsCertType = server

Inaalis namin ang mga sertipiko ng pagsubok

[root @ linuxbox dovecot] # rm certs / dovecot.pem 
rm: tanggalin ang regular na file na "certs / dovecot.pem"? (y / n) y
[root @ linuxbox dovecot] # rm pribado / dovecot.pem 
rm: tanggalin ang regular na file na "pribado / dovecot.pem"? (y / n) y

Kinokopya at isinasagawa namin ang script mkcert.sh mula sa direktoryo ng dokumentasyon

[root @ linuxbox dovecot] # cp /usr/share/doc/dovecot-2.2.10/mkcert.sh. [root @ linuxbox dovecot] # bash mkcert.sh 
Bumubuo ng isang 1024 bit RSA pribadong key ...... ++++++ ................ ++++++ pagsulat ng bagong pribadong key sa '/ etc / pki / dovecot / private / dovecot.pem '----- subject = /C=CU/ST=Cuba/L=Habana/O=DesdeLinux.Fan/OU=Entusiasts/CN=*.desdelinux.fan/emailAddress= buzz@desdelinux.fan SHA1 Fingerprint = 5F: 4A: 0C: 44: EC: EC: EF: 95: 73: 3E: 1E: 37: D5: 05: F8: 23: 7E: E1: A4: 5A

[root @ linuxbox dovecot] # ls -l certs /
kabuuang 4 -rw -------. 1 ugat ng ugat 1029 Mayo 22 16:08 dovecot.pem
[root @ linuxbox dovecot] # ls -l pribado /
kabuuang 4 -rw -------. 1 ugat ng ugat 916 Mayo 22 16:08 dovecot.pem

[root @ linuxbox dovecot] # service dovecot restart
[root @ linuxbox dovecot] # katayuan ng dovecot ng serbisyo

Mga sertipiko para sa Postfix

[root @ linuxbox ~] # cd / etc / pki / tls / [root @ linuxbox tls] # openssl req -sha256 -x509 -nodes -newkey rsa: 4096 -days 1825 \ -out certs / desdelinux.fan.crt -keyout pribado / desdelinux.fan.key

Bumubuo ng isang 4096 bit RSA pribadong key ......... ++ .. ++ pagsulat ng bagong pribadong key sa 'pribado / domain.tld.key' ----- Hihilingin sa iyo na magpasok ng impormasyon isasama sa iyong kahilingan sa sertipiko. Ang papasok ka na ay ang tinatawag na Distinguished Name o isang DN. Mayroong ilang mga patlang ngunit maaari kang mag-iwan ng ilang mga blangko Para sa ilang mga patlang magkakaroon ng isang default na halaga, Kung ipinasok mo ang '.', Ang patlang ay iwanang blangko. ----- Pangalan ng Bansa (2 titik ng code) [XX]: Pangalan ng Estado ng CU o Lalawigan (buong pangalan) []: Cuba Pangalan ng Lokal (hal, lungsod) [Default na Lungsod]: Pangalan ng Organisasyon ng Habana (hal, kumpanya) [ Default Company Ltd]: desdeLinux.Fan Pangalan ng Yunit ng Organisasyon (hal, seksyon) []: Entusiasts Karaniwang Pangalan (hal, iyong pangalan o hostname ng iyong server) []: desdelinux.fan Email Address []: buzz@desdelinux.fan

Minimal na pagsasaayos ng Postfix

Nagdagdag kami sa dulo ng file / etc / alias ang susunod:

ugat: buzz

Upang magkabisa ang mga pagbabago isinasagawa namin ang sumusunod na utos:

[root @ linuxbox ~] # newaliases

Ang pagsasaayos ng Postifx ay maaaring gawin sa pamamagitan ng direktang pag-edit ng file /etc/postfix/main.cf o sa utos postconf -e pag-iingat na ang lahat ng parameter na nais naming baguhin o idagdag ay makikita sa isang solong linya ng console:

  • Dapat ideklara ng bawat isa ang mga pagpipiliang naiintindihan at kailangan nila!.
[root @ linuxbox ~] # postconf -e 'myhostname = desdelinux.fan'
[root @ linuxbox ~] # postconf -e 'mydomain = desdelinux.fan'
[root @ linuxbox ~] # postconf -e 'myorigin = $ mydomain'
[root @ linuxbox ~] # postconf -e 'inet_interfaces = lahat'
[root @ linuxbox ~] # postconf -e 'mydestination = $ myhostname, localhost. $ mydomain, localhost, $ mydomain, mail. $ mydomain, www. $ mydomain, ftp. $ mydomain'

[root @ linuxbox ~] # postconf -e 'mynetworks = 192.168.10.0/24, 172.16.10.0/24, 127.0.0.0/8'
[root @ linuxbox ~] # postconf -e 'mailbox_command = / usr / bin / procmail -a "$ EXTENSION"'
[root @ linuxbox ~] # postconf -e 'smtpd_banner = $ myhostname ESMTP $ mail_name ($ mail_version)'

Nagdagdag kami sa dulo ng file /etc/postfix/main.cf ang mga pagpipilian na ibinigay sa ibaba. Upang malaman ang kahulugan ng bawat isa sa kanila, inirerekumenda naming basahin ang kasamang dokumentasyon.

biff = hindi
append_dot_mydomain = hindi
delay_warning_time = 4h
readme_directory = hindi
smtpd_tls_cert_file = / etc / pki / certs / desdelinux.fan.crt
smtpd_tls_key_file = / etc / pki / private / desdelinux.fan.key
smtpd_use_tls = oo
smtpd_tls_session_cache_database = btree: $ {data_directory} / smtpd_scache
smtp_tls_session_cache_database = btree: $ {data_directory} / smtp_scache
smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination

# Maximum na laki ng mailbox 1024 megabytes = 1 g at g
mailbox_size_limit = 1073741824

tatanggap_delimiter = +
maximal_queue_lifetime = 7d
header_check = regexp: / etc / postfix / header_check
body_check = regexp: / etc / postfix / body_check

# Mga account na nagpapadala ng isang kopya ng papasok na mail sa isa pang account
tatanggap_bcc_maps = hash: / etc / postfix / accounts_ forwarding_copy

Ang mga sumusunod na linya ay mahalaga upang matukoy kung sino ang maaaring magpadala ng mail at relay sa iba pang mga server, upang hindi namin sinasadyang ma-configure ang isang "bukas na relay" na nagpapahintulot sa mga hindi napatunayan na mga gumagamit na magpadala ng mail. Dapat naming konsultahin ang mga pahina ng tulong sa Postfix upang maunawaan kung ano ang ibig sabihin ng bawat pagpipilian.

  • Dapat ideklara ng bawat isa ang mga pagpipiliang naiintindihan at kailangan nila!.
smtpd_helo_restrictions = permit_mynetworks,
 warn_if_reject menolak_non_fqdn_hostname,
 rej_invalid_hostname,
 permiso

smtpd_sender_restrictions = permit_sasl_authenticated,
 permit_mynetworks,
 warn_if_reject menolak_non_fqdn_sender,
 accept_unknown_sender_domain,
 tanggihan_unauth_pipelining,
 permiso

smtpd_client_restrictions = deny_rbl_client sbl.spamhaus.org,
 tanggihan ang_rbl_client blackholes.easynet.nl

# TANDAAN: Ang pagpipiliang "check_policy_service inet: 127.0.0.1: 10023"
# ay nagbibigay-daan sa programa ng Postgrey, at hindi namin ito dapat isama
# kung hindi man ay gagamitin namin ang Postgrey

smtpd_recipient_restrictions = tolong_unauth_pipelining,
 permit_mynetworks,
 permit_sasl_authenticated,
 accept_non_fqdn_recipient,
 accept_unknown_recipient_domain,
 rej_unauth_destination,
 check_policy_service inet: 127.0.0.1: 10023,
 permiso

smtpd_data_restrictions = rej_unauth_pipelining

smtpd_relay_restrictions = rej_unauth_pipelining,
 permit_mynetworks,
 permit_sasl_authenticated,
 accept_non_fqdn_recipient,
 accept_unknown_recipient_domain,
 rej_unauth_destination,
 check_policy_service inet: 127.0.0.1: 10023,
 permiso
 
smtpd_helo_required = oo
smtpd_delay_reject = oo
huwag paganahin ang_vrfy_command = oo

Lumilikha kami ng mga file / etc / postfix / body_check y / etc / postfix / accounts_forwarding_copy, at baguhin ang file / etc / postfix / header_check.

  • Dapat ideklara ng bawat isa ang mga pagpipiliang naiintindihan at kailangan nila!.
[root @ linuxbox ~] # nano / etc / postfix / body_checks
# Kung ang file na ito ay nabago, hindi kinakailangan # upang magpatakbo ng postmap # Upang masubukan ang mga patakaran, patakbuhin bilang root: # postmap -q 'sobrang bagong v1agra' regexp: / etc / postfix / body_check
# Dapat bumalik: # Tanggihan ang Rule # 2 Anti-Spam na Katawan ng Mensahe
/ viagra / Tanggihan ang Panuntunan # 1 Anti Spam ng katawan ng mensahe
/ sobrang bagong v [i1] agra / Tanggihan ang Rule # 2 Anti-Spam message body

[root @ linuxbox ~] # nano / etc / postfix / accounts_ forwarding_copy
# Pagkatapos ng pagbabago, dapat mong isagawa: # postmap / etc / postfix / accounts_ forwarding_copy
# at ang file ay nilikha o sinusukat: # /etc/postfix/accounts_forwarding_copy.db
# ------------------------------------------ # Isang solong account upang maipasa ang isa Kopya ng BCC # BCC = Black Carbon Copy # Halimbawa: # webadmin@desdelinux.fan buzz@desdelinux.fan

[root @ linuxbox ~] # postmap / etc / postfix / accounts_ forwarding_copy

[root @ linuxbox ~] # nano / etc / postfix / header_check
# Idagdag sa dulo ng file # HINDI KAILANGAN ang Postmap dahil ang mga ito ay Regular na Pagpapahayag
/ ^ Paksa: =? Big5? / Tanggihan ang pag-encode ng Intsik na hindi tinanggap ng server na ito
/ ^ Paksa: =? EUC-KR? / Tanggihan ang pag-encode ng Korea na hindi pinapayagan ng server na ito
/ ^ Paksa: ADV: / Tanggihan ang mga ad na hindi tinanggap ng server na ito
/ ^^From:.*\@.*\.cn/ Tanggihan HINDI pinapayagan ang mail na Tsino dito
/^From:.*\@.*\.kr/ Tanggihan HINDI pinapayagan ang koreo mail dito
/ ^^From:.*\@.*\.tr/ Tanggihan, Paumanhin, hindi pinapayagan ang mail na Turkish dito
/^From:.*\@.*\.ro/ Tanggihan HINDI pinapayagan dito ang Romanian mail
/ ^^(Received|Message-IdagwayX-(MaileromiaSender)):.*\b(AutoMailagwayE-BroadcasterflixEmailer Platinum | Thunder Server | eMarksman | Extractor | e-Merge | mula sa stealth [^.] | Global Messenger | GroupMaster | Mailcast | MailKing | Match10 | MassE-Mail | massmail \ .pl | News Breaker | Powermailer | Quick Shot | Ready Aim Fire | WindoZ | WorldMerge | Yourdora | Lite) \ b / Tanggihan HINDI pinapayagan ang mga mass mailer.
/ ^ Mula sa: "spammer / Tanggihan
/ ^ Mula sa: "spam / Tanggihan
/ ###Paksa :.*viagra/ TANGGALIN
# Mapanganib na mga extension
/ name = [^> Iluminación * \. (bat | cmd | exe | com | pif | reg | scr | vb | vbe | vbs) / Tanggihan ANG Tanggihan Hindi kami tumatanggap ng mga kalakip na may mga extension na ito

Sinusuri namin ang syntax, i-restart ang Apache at Postifx, at paganahin at simulan ang Dovecot

[root @ linuxbox ~] # post check
[root @ linuxbox ~] #

[root @ linuxbox ~] # systemctl i-restart ang httpd
[root @ linuxbox ~] # systemctl status httpd

[root @ linuxbox ~] # systemctl i-restart ang postfix
[root @ linuxbox ~] # systemctl status postfix

[root @ linuxbox ~] # systemctl status dovecot
● dovecot.service - Dovecot IMAP / POP3 email server Loaded: load (/usr/lib/systemd/system/dovecot.service; hindi pinagana; preset ng vendor: hindi pinagana) Aktibo: hindi aktibo (patay)

[root @ linuxbox ~] # systemctl paganahin ang dovecot
[root @ linuxbox ~] # systemctl simulan ang dovecot
[root @ linuxbox ~] # systemctl restart dovecot
[root @ linuxbox ~] # systemctl status dovecot

Mga pagsusuri sa antas ng console

  • Napakahalaga bago magpatuloy sa pag-install at pagsasaayos ng iba pang mga programa, upang gawin ang minimum na kinakailangang mga tseke ng mga serbisyo ng SMTP at POP.

Lokal mula sa server mismo

Nagpadala kami ng isang email sa lokal na gumagamit Legolas.

[root @ linuxbox ~] # echo "Hello. Ito ay isang mensahe sa pagsubok" | mail -s "Test" legolas

Suriin namin ang mailbox ng Legolas.

[root @ linuxbox ~] # openssl s_client -crlf -connect 127.0.0.1aktos110 -starttls pop3

Pagkatapos ng mensahe Handa na ang Dovecot! magpatuloy kami:

---
+ OK Handa na ang Dovecot!
USER legolas + OK PASS legolas + OK Mag-log in. STAT + OK 1 559 LIST + OK 1 mga mensahe: 1 559. RETR 1 + OK 559 octets Return-Path: X-Original-To: legolas Delivered-To: legolas@desdelinux.fan Natanggap: ng desdelinux.fan (Postfix, mula sa userid 0) id 7EA22C11FC57; Lun, 22 Mayo 2017 10:47:10 -0400 (EDT) Petsa: Lun, 22 Mayo 2017 10:47:10 -0400 Para sa: legolas@desdelinux.fan Paksa: Pagsubok ng User-Agent: Heirloom mailx 12.5 7/5 / 10 MIME-Bersyon: 1.0 Uri ng Nilalaman: teksto / payak; charset = us-ascii Content-Transfer-Encoding: 7bit Message-Id: <20170522144710.7EA22C11FC57@desdelinux.fan> Mula sa: root@desdelinux.fan (root) Kumusta. Ito ay isang mensahe ng pagsubok. TAPOS NA TAPOS
[root @ linuxbox ~] #

Mga remote mula sa isang computer sa LAN

Magpadala tayo ng isa pang mensahe sa Legolas mula sa ibang computer sa LAN. Tandaan na ang seguridad ng TLS ay HINDI mahigpit na kinakailangan sa loob ng SME Network.

buzz @ sysadmin: ~ $ sendemail -f buzz@deslinux.fan \
-t legolas@desdelinux.fan \
-u "Hello" \
-m "Pagbati ni Legolas mula sa iyong kaibigan na si Buzz" \
-s mail.desdelinux.fan -o tls = hindi
Mayo 22 10:53:08 sysadmin sendemail [5866]: Matagumpay na naipadala ang email!

Kung susubukan nating kumonekta telnet Mula sa isang host sa LAN - o mula sa Internet, siyempre - hanggang sa Dovecot, ang sumusunod ay mangyayari dahil hindi namin pinagana ang pagpapatotoo ng plaintext:

buzz @ sysadmin: ~ $ telnet mail.fromlinux.fan 110Subok ng 192.168.10.5 ...
Nakakonekta sa linuxbox.fromlinux.fan. Ang character na makatakas ay '^]'. + OK Handa na ang Dovecot! legolas ng gumagamit
-ERR [AUTH] Ang pagpapatotoo ng Plaintext ay hindi pinapayagan sa mga hindi ligtas (SSL / TLS) na mga koneksyon.
umalis + OK Pag-log out sa Koneksyon sarado ng banyagang host.
buzz @ sysadmin: ~ $

Dapat nating gawin ito openssl. Ang kumpletong output ng utos ay:

buzz @ sysadmin: ~ $ openssl s_client -crlf -connect mail.fromlinux.fanreto110 -starttls pop3
KONEKTADO (00000003)
lalim = 0 C = CU, ST = Cuba, L = Havana, O = FromLinux.Fan, OU = Mga mahilig, CN = * .fromlinux.fan, emailAddress = buzz@fromlinux.fan
error sa pag-verify: num = 18: sariling pirmadong sertipiko i-verify ang pagbalik: 1
lalim = 0 C = CU, ST = Cuba, L = Havana, O = FromLinux.Fan, OU = Mga mahilig, CN = * .fromlinux.fan, emailAddress = buzz@fromlinux.fan i-verify ang pagbalik: 1
--- Certificate chain 0 s: /C=CU/ST=Cuba/L=Habana/O=DesdeLinux.Fan/OU=Entusiasts/CN = *. Desdelinux.fan/emailAddress=buzz@desdelinux.fan i: / C =CU/ST=Cuba/L=Habana/O=DesdeLinux.Fan/OU=Entusiasts/CN=*.desdelinux.fan/emailAddress=buzz@desdelinux.fan --- Sertipiko ng server ----- BEGIN CERTIFICATE-- --- MIICyzCCAjSgAwIBAgIJAKUHI / 2ZD + MeMA0GCSqGSIb3DQEBBQUAMIGbMQswCQYD VQQGEwJDVTENMAsGA1UECBMEQ3ViYTEPMA0GA1UEBxMGSGFiYW5hMRcwFQYDVQQK Ew5EZXNkZUxpbnV4LkZhbjEUMBIGA1UECxMLRW50dXNpYXN0YXMxGTAXBgNVBAMU ECouZGVzZGVsaW51eC5mYW4xIjAgBgkqhkiG9w0BCQEWE2J1enpAZGVzZGVsaW51 eC5mYW4wHhcNMTcwNTIyMjAwODEwWhcNMTgwNTIyMjAwODEwWjCBmzELMAkGA1UE BhMCQ1UxDTALBgNVBAgTBEN1YmExDzANBgNVBAcTBkhhYmFuYTEXMBUGA1UEChMO RGVzZGVMaW51eC5GYW4xFDASBgNVBAsTC0VudHVzaWFzdGFzMRkwFwYDVQQDFBAq LmRlc2RlbGludXguZmFuMSIwIAYJKoZIhvcNAQkBFhNidXp6QGRlc2RlbGludXgu ZmFuMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC7wckAiNNfYSz5hdePzKuZ Bnk m2MMuhGDvwrDSPDEcVutznbZSgJ9bvTo445TR + + + nBmqxzJbpc OZ80lujS2hP XR7E9eWIXxr4fP4HpRrCA8NxlthEsapVMSHW + lnPBqF2b / Bt2eYyR7g JhtlP6gRG V57MmgL8BdYAJLvxqxDIxQIDAQABoxUwEzARBglghkgBhvhCAQEEBAMCBkAwDQYJ KoZIhvcNAQEFBQADgYEAAuYU1nIXTbXtddW + QkLskum7ESryHZonKOCelfn2vnRl 8oAgHg7Hbtg / e6sR / W9m3DObP5DEp3lolKKIKor7ugxtfA4PBtmgizddfDKKMDql LT + MV5 / DP1pjQbxTsaLlZfveNxfLRHkQY13asePy4fYJFOIZ4OojDEGQ6 / VQBI8 = ----- ----- END CERTIFICATE subject = / C = CU / ST = Cuba / L = Havana / O = DesdeLinux.Fan /OU=Entusiasts/CN=*.desdelinux.fan/emailAddress=buzz@desdelinux.fan na nagbigay = / C = CU / ST = Cuba / L = Habana / O = DesdeLinux.Fan / OU = Entusiasts / CN = *. Desdelinux .fan / emailAddress = buzz @ desdelinux.fan --- Walang mga pangalan ng sertipiko ng client CA na ipinadala Server Temp Key: ECDH, secp384r1, 384 bits --- Nabasa ng handshake ng SSL ang 1342 bytes at nakasulat na 411 bytes --- Bago, TLSv1 / SSLv3 , Ang Cipher ay ECDHE-RSA-AES256-GCM-SHA384 Ang pampublikong susi ng server ay 1024 bit Secure Renegotiation AY sinusuportahan ang Kompresyon: WALANG Pagpapalawak: WALANG SSL-Session: Protocol: TLSv1.2 Cipher: ECDHE-RSA-AES256-GCM-SHA384 Session- ID: C745B4A0236204E16234CB15DC9CDBC3D084125FF5989F5DB6C5295BF4E2D73A Session-ID-ctx: Master-Key : 1904D204C564B76361CEA50373F8879AF793AF7D7506C04473777F6F3503A9FD919CD1F837BC67BFF29E309F352526F5 Key-Arg: Wala Krb5 Principal: Wala PSK 300 identity: Wala PSK identity hint: HS 0000F4F3A8FD29CD7F4BC63BFF72E7F6F4 Key-Arg: Wala Krb7 Principal: Wala 1 PSK identity: Wala PSK identity hint: HS XNUMX TLS session XNUMX seconds XNUMX f Nonec XNUMX ticket session XNUMX f XNUMX na segundo XNUMX FXNUMXFXNUMX ticket ec XNUMXe XNUMXc N:.) zOcr ... O .. ~.
 0010 - 2c d4 be a8 be 92 2e ae-98 7e 87 6d 45 c5 17 a8, ........ ~ .mE ...
 0020 - db 3a 86 80 df 8b dc 8d-f8 1f 68 6e db a7 e3 86 .: ........ hn ....
 0030 - 08 35 e5 eb 98 b8 a4 98-68 b1 ea f7 72 f7 c1 79 .5 ...... h ... r..y 0040 - 89 4a 28 e3 85 a4 8b da-e9 7a 29 c7 77 bf 22 0d .J (...... z) .w. ".
 0050 - bd 5c f6 61 8c a1 14 bd-cb 31 27 66 7a dc 51 28. \. A ..... 1'fz.Q (0060 - b7 de 35 bd 2b 0f d4 ec-d3 e0 14 c8 65 03 b1 35 ..5. + ....... e..5 0070 - 38 34 f8 de 48 da ae 31-90 bd f6 b0 e6 9c cf 19 84..H..1 ..... ...
 0080 - f5 42 56 13 88 b0 8c db-aa ee 5a d7 1b 2c dd 71 .BV ....... Z ..,. Q 0090 - 7a f1 03 70 90 94 c9 0a-62 e5 0f 9c bf dc 3c a0 z..p .... b ..... <.

+ OK Handa na ang Dovecot!
USER legolas
+ OK lang
PASS legolas
+ OK Mag-log in.
LIST
+ OK 1 mga mensahe: 1 1021.
RETR 1
+ OK 1021 octets Return-Path: X-Original-To: legolas@desdelinux.fan Naihatid-Sa: legolas@desdelinux.fan Natanggap: mula sa sysadmin.desdelinux.fan (gateway [172.16.10.1]) ng desdelinux.fan (Postfix) kasama ang ESMTP id 51886C11E8C0 para sa ; Lun, 22 Mayo 2017 15:09:11 -0400 (EDT) Mensahe-ID: <919362.931369932-sendEmail@sysadmin> Mula sa: "buzz@deslinux.fan" Sa: "legolas@desdelinux.fan" Paksa: Kamusta Petsa: Lun, 22 Mayo 2017 19:09:11 +0000 X-Mailer: sendEmail-1.56 MIME-Bersyon: 1.0 Uri ng Nilalaman: multipart / nauugnay; hangganan = "---- MIME delimiter para sa sendEmail-365707.724894495" Ito ay isang mensahe na maraming bahagi sa format na MIME. Upang maipakita nang maayos ang mensaheng ito kailangan mo ng isang programang Email na sumunod sa MIME-Bersyon 1.0. ------ MIME delimiter para sa sendEmail-365707.724894495 Uri ng Nilalaman: teksto / payak; charset = "iso-8859-1" Content-Transfer-Encoding: 7bit Greetings Legolas mula sa iyong kaibigan na si Buzz ------ MIME delimiter para sa sendEmail-365707.724894495--.
Umalis
+ OK Pag-log out. sarado
buzz @ sysadmin: ~ $

Squirrelmail

Squirrelmail ay isang web client na nakasulat sa PHP. May kasamang katutubong suporta sa PHP para sa mga IMAP at SMTP na protokol, at nagbibigay ng maximum na pagiging tugma sa iba't ibang mga browser na ginagamit. Tumatakbo ito nang tama sa anumang IMAP server. Mayroon itong lahat ng mga pagpapaandar na kailangan mo mula sa isang email client kasama ang suporta ng MIME, address book at pamamahala ng folder.

[root @ linuxbox ~] # yum install squirrelmail
[root @ linuxbox ~] # serbisyo httpd i-restart

[root @ linuxbox ~] # nano /etc/squirrelmail/config.php
$ domain = 'desdelinux.fan';
$ imapServerAddress = 'mail.fromlinux.fan';
$ imapPort = 143;
$ smtpServerAddress = 'desdelinux.fan';

[root @ linuxbox ~] # service httpd reload

Patakaran sa Pagpapadala ng Patakaran sa DNS o tala ng SPF

Sa artikulo May kapangyarihan ang DNS Server NSD + Shorewall Nakita namin na ang "desdelinux.fan" Zone ay na-configure tulad ng sumusunod:

root @ ns: ~ # nano /etc/nsd/desdelinux.fan.zone
$ ORIGIN mula sa linux.fan. $ TTL 3H @ SA SOA ns.fromlinux.fan. ugat.fromlinux.fan. (1; serial 1D; i-refresh ang 1H; subukang muli ang 1W; mag-expire ng 3H); minimum o; Negatibong oras ng pag-cache upang mabuhay; @ SA NS ns.fromlinux.fan. @ SA MX 10 mail.fromlinux.fan.
@ IN TXT "v = spf1 a: mail.desdelinux.fan -all"
; ; Mag-log upang malutas ang mga query sa paghukay mula sa linux.fan @ IN A 172.16.10.10; ns SA Isang 172.16.10.30 mail SA CNAME mula sa linux.fan. chat SA CNAME mula sa linux.fan. www SA CNAME mula sa linux.fan. ; ; Ang mga tala ng SRV na nauugnay sa XMPP
_xmpp-server._tcp SA SRV 0 0 5269 mula sa linux.fan. _xmpp-client._tcp SA SRV 0 0 5222 mula sa linux.fan. _jabber._tcp SA SRV 0 0 5269 mula sa linux.fan.

Dito ipinahayag ang pagpapatala:

@ IN TXT "v = spf1 a: mail.desdelinux.fan -all"

Upang magkaroon ng parehong parameter na na-configure para sa SME Network o LAN, dapat naming baguhin ang Dnsmasq config file tulad ng sumusunod:

Mga tala ng # TXT. Maaari rin nating ideklara ang isang talaan ng SPF na txt-record = desdelinux.fan, "v = spf1 a: mail.desdelinux.fan -all"

Pagkatapos ay i-restart namin ang serbisyo:

[root @ linuxbox ~] # service dnsmasq restart
[root @ linuxbox ~] # service dnsmasq status [root @ linuxbox ~] # host -t TXT mail.fromlinux.fan mail.fromlinux.fan ay isang alias para sa fromlinux.fan. desdelinux.fan mapaglarawang teksto "v = spf1 a: mail.desdelinux.fan -all"

Mga Sertipiko at Apache na Signed ng Sarili o httpd

Kahit na sabihin sa iyo ng iyong browser na «Ang may-ari ng mail.fromlinux.fan Maling na-configure mo ang iyong website. Upang maiwasan ang iyong impormasyon na ninakaw, ang Firefox ay hindi kumonekta sa website na ito ”, ang dating nabuong sertipiko Ito ay may bisa, at papayagan ang mga kredensyal sa pagitan ng client at ng server na mag-encrypt ng paglalakbay, pagkatapos naming tanggapin ang sertipiko.

Kung nais mo, at bilang isang paraan upang mapag-isa ang mga sertipiko, maaari mong ideklara para sa Apache ang parehong mga sertipiko na iyong idineklara para sa Postfix, na tama.

[root @ linuxbox ~] # nano /etc/httpd/conf.d/ssl.conf
SSLCert CertificateFile /etc/pki/tls/certs/desdelinux.fan.crt
SSLCert CertificateKeyFile /etc/pki/tls/private/desdelinux.fan.key

[root @ linuxbox ~] # service httpd restart
[root @ linuxbox ~] # katayuan sa serbisyo httpd

Pangkat ng Diffie-Hellman

Ang paksa ng Seguridad ay nagiging mas mahirap araw-araw sa Internet. Isa sa mga pinaka-karaniwang pag-atake sa mga koneksyon SSLay ang logjam at upang ipagtanggol laban dito kinakailangan na magdagdag ng mga hindi pamantayang mga parameter sa pagsasaayos ng SSL. Para sa mga ito mayroong ang RFC-3526 «Mas Modular Exponential (MODP) Diffie–Hellman grupo para sa Internet Key Exchange (IKE)".

[root @ linuxbox ~] # cd / etc / pki / tls /
[root @ linuxbox tls] # openssl dhparam -out private / dhparams.pem 2048
[root @ linuxbox tls] # chmod 600 pribado / dhparams.pem

Ayon sa bersyon ng Apache na na-install namin, gagamitin namin ang Diffie-Helman Group mula sa file /etc/pki/tls/dhparams.pem. Kung ito ay isang bersyon 2.4.8 o mas bago, pagkatapos ay kakailanganin naming idagdag sa file /etc/httpd/conf.d/ssl.conf ang sumusunod na linya:

SSLOpenSSLConfCmd DHParameter "/etc/pki/tls/private/dhparams.pem"

Ang bersyon na Apache na ginagamit namin ay:

[root @ linuxbox tls] # yum info httpd
Mga na-load na plugin: pinakamabilis na mirror, langpacks Nilo-load ang mga bilis ng salamin mula sa naka-cache na hostfile Mga naka-install na package Pangalan: httpd Arkitektura: x86_64
Bersyon: 2.4.6
Paglabas: 45.el7.centos Laki: 9.4 M Repository: naka-install Mula sa repository: Buod ng Base-Repo: Apache HTTP Server URL: http://httpd.apache.org/ Lisensya: ASL 2.0 Paglalarawan: Ang Apache HTTP Server ay isang malakas , mahusay, at extensible: web server.

Dahil mayroon kaming isang bersyon bago ang 2.4.8, nagdagdag kami sa pagtatapos ng dating nabuong sertipiko ng CRT, ang nilalaman ng Pangkat ng Diffie-Helman:

[root @ linuxbox tls] # cat private / dhparams.pem >> certs / desdelinux.fan.crt

Kung nais mong suriin na ang mga parameter ng DH ay naidagdag nang tama sa sertipiko ng CRT, isagawa ang mga sumusunod na utos:

[root @ linuxbox tls] # cat private / dhparams.pem 
----- MAGSIMULA SA DH PARAMETERS -----
MIIBCAKCAQEAnwfWSlirEuMwJft0hgAdB0km9d3qGGiErRXPfeZU+Tqp/ZFOCdzP
/O6NeXuHI4vnsTDWEAjXmpRzq/z1ZEWQa6j+l1PgTgk2XqaMViD/gN+sFPnx2EmV
keVcMDqG03gnmCgO9R4aLYT8uts5T6kBRhvxUcrk9Q7hIpGCzGtdgwaVf1cbvgOe
8kfpc5COh9IxAYahmNt+5pBta0SDlmoDz4Rk/4AFXk2mjpDYoizaYMPeIInGUzOv
/LE6Y7VVRY/BJG9EZ5pVYJPCruPCUHkhvm+r9Tt56slk+HE2d52uFRSDd2FxK3n3
cN1vJ5ogsvmHayWUjVUA18LLfGSxEFsc4wIBAg==
----- END DH PARAMETERS -----

[root @ linuxbox tls] # cat certs / desdelinux.fan.crt 
-----BEGIN CERTIFICATE-----
MIIGBzCCA++gAwIBAgIJANd9FLCkDBfzMA0GCSqGSIb3DQEBCwUAMIGZMQswCQYD
VQQGEwJDVTENMAsGA1UECAwEQ3ViYTEPMA0GA1UEBwwGSGFiYW5hMRcwFQYDVQQK
DA5EZXNkZUxpbnV4LkZhbjEUMBIGA1UECwwLRW50dXNpYXN0YXMxFzAVBgNVBAMM
DmRlc2RlbGludXguZmFuMSIwIAYJKoZIhvcNAQkBFhNidXp6QGRlc2RlbGludXgu
ZmFuMB4XDTE3MDUyMjE0MDQ1MloXDTIyMDUyMTE0MDQ1MlowgZkxCzAJBgNVBAYT
AkNVMQ0wCwYDVQQIDARDdWJhMQ8wDQYDVQQHDAZIYWJhbmExFzAVBgNVBAoMDkRl
c2RlTGludXguRmFuMRQwEgYDVQQLDAtFbnR1c2lhc3RhczEXMBUGA1UEAwwOZGVz
ZGVsaW51eC5mYW4xIjAgBgkqhkiG9w0BCQEWE2J1enpAZGVzZGVsaW51eC5mYW4w
ggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCn5MkKRdeFYiN+xgGdsRn8
sYik9X75YnJcbeZrD90igfPadZ75ehtfYIxxOS+2U+omnFgr/tCKYUVJ50seq/lB
idcLP4mt7wMrMZUDpy1rlWPOZGKkG8AdStCYI8iolvJ4rQtLcsU6jhRzEXsZxfOb
O3sqc71yMIj5qko55mlsEVB3lJq3FTDQAY2PhXopJ8BThW1T9iyl1HlYpxj7OItr
/BqiFhxbP17Fpd3QLyNiEl+exVJURYZkvuZQqVPkFAlyNDh5I2fYfrI9yBVPBrZF
uOdRmT6jv6jFxsBy9gggcy+/u1nhlKssLBEhyaKfaQoItFGCAmevkyzdl1LTYDPY
ULi79NljQ1dSwWgraZ3i3ACZIVO/kHcOPljsNxE8omI6qNFWqFd1qdPH5S4c4IR1
5URRuwyVNffEHKaCJi9vF9Wn8LVKnN/+5zZGRJA8hI18HH9kF0A1sCNj1KKiB/xe
/02wTzR/Gbj8pkyO8fjVBvd/XWI8EMQyMc1gvtIAvZ00SAB8c1NEOCs5pt0Us6pm
1lOkgD6nl90Dx9p805mTKD+ZcvRaShOvTyO3HcrxCxOodFfZQCuHYuQb0dcwoK2B
yOwL77NmxNH1QVJL832lRARn8gpKoRAUrzdTSTRKmkVrOGcfvrCKhEBsJ67Gq1+T
YDLhUiGVbPXXR9rhAyyX2QIDAQABo1AwTjAdBgNVHQ4EFgQURGCMiLVLPkjIyGZK
UrZgMkO0X8QwHwYDVR0jBBgwFoAURGCMiLVLPkjIyGZKUrZgMkO0X8QwDAYDVR0T
BAUwAwEB/zANBgkqhkiG9w0BAQsFAAOCAgEAdy1tH1DwfCW47BNJE1DW8Xlyp+sZ
uYTMOKfNdnAdeSag1WshR6US6aCtU6FkzU/rtV/cXDKetAUIzR50aCYGTlfMCnDf
KKMZEPjIlX/arRwBkvIiRTU1o3HTniGp9d3jsRWD/AvB3rSus4wfuXeCoy7Tqc9U
FaXqnvxhF8/ptFeeCeZgWu16zyiGBqMj4ZaQ7RxEwcoHSd+OByg8E9IE2cYrWP2V
6P7hdCXmw8voMxCtS2s++VRd1fGqgGxXjXT8psxmY2MrseuTM2GyWzs+18A3VVFz
UXLD2lzeYs638DCMXj5/BMZtVL2a4OhMSYY4frEbggB3ZgXhDDktUb7YhnBTViM3
2sgJJOSTltOgAnyOPE0CDcyktXVCtu3PNUc+/AB3UemI9XCw4ypmTOMaIZ2Gl6Uo
pmTk41fpFuf8pqW3ntyu43lC5pKRBqhit6MoFGNOCvFYFBWcltpqnjsWfY2gG/b5
8D5HsedueqkAsVblKPBFpv1BB9X0HhBUYsrz8jNGZGbkgR4XQoIoLbQZHEB35APU
4yT1Lzc3jk34yZF5ntmFt3wETSWwJZ+0cYPw7n4E6vbs1C7iKAMQRVy+lI5f8XYS
YKfrieiPPdmQ22Zm2Tbkqi4zjJBWmstrw6ezzAQNaaAkiOiJIwvXU81KYsN37THh
Nf0/JsEjPklCugE=
-----END CERTIFICATE-----
-----BEGIN DH PARAMETERS-----
MIIBCAKCAQEAnwfWSlirEuMwJft0hgAdB0km9d3qGGiErRXPfeZU+Tqp/ZFOCdzP
/O6NeXuHI4vnsTDWEAjXmpRzq/z1ZEWQa6j+l1PgTgk2XqaMViD/gN+sFPnx2EmV
keVcMDqG03gnmCgO9R4aLYT8uts5T6kBRhvxUcrk9Q7hIpGCzGtdgwaVf1cbvgOe
8kfpc5COh9IxAYahmNt+5pBta0SDlmoDz4Rk/4AFXk2mjpDYoizaYMPeIInGUzOv
/LE6Y7VVRY/BJG9EZ5pVYJPCruPCUHkhvm+r9Tt56slk+HE2d52uFRSDd2FxK3n3
cN1vJ5ogsvmHayWUjVUA18LLfGSxEFsc4wIBAg==
----- END DH PARAMETERS -----

Matapos ang mga pagbabagong ito, dapat naming muling simulan ang mga serbisyo ng Postfix at httpd:

[root @ linuxbox tls] # serbisyo postfart restart
[root @ linuxbox tls] # serbisyo katayuan sa postfix
[root @ linuxbox tls] # serbisyo httpd i-restart
[root @ linuxbox tls] # serbisyo httpd status

Ang pagsasama ng Diffie-Helman Group sa aming mga sertipiko ng TLS ay maaaring gawing mas mabagal ang pagkonekta sa HTTPS, ngunit sulit ang pagsasama ng seguridad.

Sinusuri ang Squirrelmail

Despues na ang mga sertipiko ay nabuo nang tama at nasuri namin ang kanilang wastong pagpapatakbo tulad ng paggamit namin ng mga command ng console, ituro ang iyong ginustong browser sa URL http://mail.desdelinux.fan/webmail at makakonekta ito sa web client pagkatapos tanggapin ang kaukulang sertipiko. Tandaan na, kahit na tinukoy mo ang HTTP protocol, ire-redirect ito sa HTTPS, at ito ay dahil sa default na pagsasaayos na inaalok ng CentOS para sa Squirrelmail. Tingnan ang file /etc/httpd/conf.d/squirrelmail.conf.

Tungkol sa mga mailbox ng gumagamit

Lumilikha ang Dovecot ng mga mailbox ng IMAP sa folder bahay ng bawat gumagamit:

[root @ linuxbox ~] # ls -la /home/legolas/mail/.imap/
kabuuang 12 drwxrwx ---. 5 legolas mail 4096 Mayo 22 12:39. drwx ------. 3 legolas legolas 75 May 22 11:34 .. -rw -------. 1 legolas legolas 72 Mayo 22 11:34 dovecot.mailbox.log -rw -------. 1 legolas legolas Mayo 8 22 12:39 dovecot-uidvalidity -r - r - r--. 1 legolas legolas 0 Mayo 22 10:12 dovecot-uidvalidity.5922f1d1 drwxrwx ---. 2 legolas mail 56 May 22 10:23 INBOX drwx ------. 2 legolas legolas 56 May 22 12:39 Ipinadala drwx ------. 2 legolas legolas 30 Mayo 22 11:34 Basurahan

Ang mga ito ay naka-imbak din sa / var / mail /

[root @ linuxbox ~] # mas kaunti / var / mail / legolas
Mula MAILER_DAEMON Lun Mayo 22 10:28:00 2017 Petsa: Lun, 22 Mayo 2017 10:28:00 -0400 Mula sa: Panloob na Data ng Mail System Paksa: HUWAG TANGGALIN ANG MENSAHE NA ITO - FOLDER INTERNAL DATA Mensahe-ID: <1495463280 @ linuxbox> X-IMAP: 1495462351 0000000008 Katayuan: RO Ang teksto na ito ay bahagi ng panloob na format ng iyong mail folder, at hindi isang totoong mensahe . Ito ay awtomatikong nilikha ng software ng mail system. Kung tatanggalin, mawawala ang mahalagang data ng folder, at malilikha itong muli kasama ang pag-reset ng data sa mga paunang halaga. Mula sa root@desdelinux.fan Lun Mayo 22 10:47:10 2017 Return-Path: X-Original-To: legolas Delivered-To: legolas@desdelinux.fan Natanggap: ng desdelinux.fan (Postfix, mula sa userid 0) id 7EA22C11FC57; Lun, 22 Mayo 2017 10:47:10 -0400 (EDT) Petsa: Lun, 22 Mayo 2017 10:47:10 -0400 Para sa: legolas@desdelinux.fan Paksa: Pagsubok ng User-Agent: Heirloom mailx 12.5 7/5 / 10 MIME-Bersyon: 1.0 Uri ng Nilalaman: teksto / payak; charset = us-ascii Content-Transfer-Encoding: 7bit Message-Id: <20170522144710.7EA22C11FC57@desdelinux.fan> Mula sa: root@desdelinux.fan (root) X-UID: 7 Katayuan: RO Kumusta. Ito ay isang mensahe sa pagsubok Mula sa buzz@deslinux.fan Lun Mayo 22 10:53:08 2017 Return-Path: X-Original-To: legolas@desdelinux.fan Naihatid-To: legolas@desdelinux.fan Natanggap: mula sa sysadmin.desdelinux.fan (gateway [172.16.10.1]) ng desdelinux.fan (Postfix) kasama ang ESMTP id C184DC11FC57 para sa ; Lun, 22 Mayo 2017 10:53:08 -0400 (EDT) Mensahe-ID: <739874.219379516-sendEmail@sysadmin> Mula sa: "buzz@deslinux.fan" Sa: "legolas@desdelinux.fan" Paksa: Kamusta Petsa: Lun, 22 Mayo 2017 14:53:08 +0000 X-Mailer: sendEmail-1.56 MIME-Bersyon: 1.0 Uri ng Nilalaman: multipart / kaugnay; hangganan = "---- MIME delimiter para sa sendEmail-794889.899510057
/ var / mail / legolas

Buod ng mga minisery ng PAM

Tiningnan namin ang core ng isang Mailserver at naglagay ng kaunting diin sa seguridad. Inaasahan namin na ang artikulo ay nagsisilbing isang Entry Point sa isang paksa na kumplikado at madaling kapitan sa paggawa ng mga pagkakamali dahil ito ay ang pagpapatupad ng isang Mail Server nang manu-mano.

Gumagamit kami ng lokal na pagpapatotoo ng gumagamit dahil kung nabasa namin nang tama ang file /etc/dovecot/conf.d/10-auth.conf, makikita natin na sa huli kasama ito -bilang default- ang file ng pagpapatotoo ng mga gumagamit ng system ! isama ang auth-system.conf.ext. Tiyak na sinasabi sa amin ng file na ito sa header nito na:

[root @ linuxbox ~] # mas kaunti /etc/dovecot/conf.d/auth-system.conf.ext
# Pagpapatotoo para sa mga gumagamit ng system. Kasama mula sa 10-auth.conf. # # # # Pagpapatotoo ng PAM. Ginustong ngayon ng karamihan sa mga system.
Karaniwang ginagamit ang # PAM sa alinman sa userdb passwd o static ng userdb. # TANDAAN: Kakailanganin mo ang /etc/pam.d/dovecot file na nilikha para sa pagpapatotoo ng PAM # upang gumana talaga. passdb {driver = pam # [session = yes] [setcred = yes] [failure_show_msg = yes] [max_requests = ] # [cache_key = ] [ ] #args = dovecot}

At ang iba pang file ay mayroon /etc/pam.d/dovecot:

[root @ linuxbox ~] # cat /etc/pam.d/dovecot 
#% PAM-1.0 auth kinakailangan pam_nologin.kaya isama sa auth account kasama ang password-auth account session-auth session ang password-auth

Ano ang sinusubukan naming iparating tungkol sa pagpapatotoo ng PAM?

  • Ang CentOS, Debian, Ubuntu, at maraming iba pang mga pamamahagi ng Linux ay nag-install ng Postifx at Dovecot na may lokal na pagpapatotoo na pinagana bilang default.
  • Maraming mga artikulo sa Internet ang gumagamit ng MySQL - at mas kamakailan lamang MariaDB - upang maiimbak ang mga gumagamit at iba pang data tungkol sa isang Mailserver. NGUNIT ang mga ito ay mga server para sa Libu-libong mga Gumagamit, at hindi para sa isang klasikong SME Network na may - marahil - daan-daang mga gumagamit.
  • Ang pagpapatotoo sa pamamagitan ng PAM ay kinakailangan at sapat upang makapagbigay ng mga serbisyo sa network hangga't tumatakbo sila sa isang solong server tulad ng nakita natin sa mga minisery na ito.
  • Ang mga gumagamit na nakaimbak sa isang database ng LDAP ay maaaring ma-mapa na parang mga lokal na gumagamit, at magagamit ang pagpapatotoo ng PAM upang magbigay ng mga serbisyo sa network mula sa iba't ibang mga server ng Linux na kumikilos bilang mga kliyente ng LDAP para sa gitnang server ng pagpapatotoo. Sa ganitong paraan, gagana kami sa mga kredensyal ng mga gumagamit na nakaimbak sa gitnang database ng server ng LDAP, at HINDI mahalaga na mapanatili ang isang database sa mga lokal na gumagamit.

Hanggang sa susunod na pakikipagsapalaran!


Ang nilalaman ng artikulo ay sumusunod sa aming mga prinsipyo ng etika ng editoryal. Upang mag-ulat ng isang pag-click sa error dito.

9 na puna, iwan mo na ang iyo

Iwanan ang iyong puna

Ang iyong email address ay hindi nai-publish.

*

*

  1. Responsable para sa data: Miguel Ángel Gatón
  2. Layunin ng data: Kontrolin ang SPAM, pamamahala ng komento.
  3. Legitimation: Ang iyong pahintulot
  4. Komunikasyon ng data: Ang data ay hindi maiparating sa mga third party maliban sa ligal na obligasyon.
  5. Imbakan ng data: Ang database na naka-host ng Occentus Networks (EU)
  6. Mga Karapatan: Sa anumang oras maaari mong limitahan, mabawi at tanggalin ang iyong impormasyon.

  1.   butiki dijo

    Maniwala ka sa akin na sa pagsasagawa ito ay isang proseso na nagbibigay ng higit sa isang sysadmin matinding sakit ng ulo, kumbinsido ako na sa hinaharap ito ay magiging isang gabay na sanggunian para sa sinumang nais na pamahalaan ang kanilang mga email mismo, isang praktikal na kaso na nagiging sa isang abc kapag isinasama ang postfix, dovecot, squirrelmail ..

    Maraming salamat sa iyong kapuri-puri na kontribusyon,

  2.   Darko dijo

    Bakit hindi gamitin ang Mailpile, pagdating sa seguridad, kasama ang PGP? Gayundin ang Roundcube ay may isang mas madaling maunawaan na interface at maaari ring isama ang PGP.

  3.   Martin dijo

    3 araw na ang nakakaraan nabasa ko ang post, marunong ako magpasalamat sa iyo. Hindi ko balak mag-install ng isang mail server ngunit palaging kapaki-pakinabang na makita ang paglikha ng mga sertipiko, kapaki-pakinabang para sa iba pang mga application at ang mga tutorial na ito ay halos hindi mawawalan ng bisa (lalo na kapag gumagamit ka ng centOS).

  4.   Federico dijo

    Manuel Cillero: Salamat sa pag-link sa at mula sa iyong blog sa artikulong ito na kung saan ay ang pinakamaliit na core ng isang mail server batay sa Postfix at Dovecot.

    Kadal: Tulad ng nakasanayan, ang iyong pagsusuri ay napakahusay na natanggap. Salamat.

    Darko: Sa halos lahat ng aking mga artikulo sinasabi ko higit pa o mas kaunti na "Ang bawat tao'y nagpapatupad ng mga serbisyo sa mga program na pinaka gusto nila." Salamat sa komento.

    Martin: Salamat din sa iyo sa pagbabasa ng artikulo at inaasahan kong makakatulong ito sa iyong gawain.

  5.   Zodiac Carburus dijo

    Napakalaking artikulo ng kaibigang si Federico. Maraming salamat sa napakagandang tuto.

  6.   pamamana dijo

    mahusay bagaman gagamit ako ng "virtual na mga gumagamit" upang maiwasan ang pagkakaroon upang lumikha ng isang gumagamit ng system sa tuwing magdagdag ako ng isang email, salamat natutunan ko ng maraming mga bagong bagay at ito ang uri ng post na hinihintay ko

  7.   Willinton Acevedo Rueda dijo

    Magandang hapon,

    Maglakas-loob silang gawin ang pareho sa server ng direktoryo ng Fedora + postifx + dovecot + thunderbird o pananaw.

    Mayroon akong bahagi ngunit ako ay natigil, masisiyahan kong ibabahagi ang dokumento sa pamayanan ng @desdelinux

  8.   phico dijo

    Hindi ko naisip na aabot ito sa higit sa 3000 mga pagbisita !!!

    Pagbati Lizard!

  9.   madilim na dulo dijo

    Mahusay na kasamahan sa tutorial.
    Magagawa mo ba ito para sa Debian 10 sa mga gumagamit ng isang Aktibong Direktoryo na naka-mount sa Samba4 ???
    Akala ko magiging halos pareho ito ngunit binabago ang uri ng pagpapatotoo.
    Ang seksyon na iyong inilaan sa paglikha ng mga self-sign na sertipiko ay napaka-interesante.

bool (totoo)