Installige Debian 9-sse täielik Postfixi ja veebimeiliga meiliserver


See õpetus juhendab teid täieliku postiserveri installimise ja seadistamise kohta Debian 9 väljalaske Postfixiga. Samuti käsitletakse Dovecoti abil kontode postkastide konfigureerimist, et kirju IMAP-protokolli kaudu alla laadida ja koostada. Kasutajad kasutavad posti käsitlemiseks Rainloopi veebimeili liidest postikasutaja agentina.

  1. Debian 9 minimaalne installimine
  2. Staatiline IP-aadress, mis on konfigureeritud võrguliidese jaoks
  3. kohalik või avalikult registreeritud domeeninimi.

Selles õpetuses kasutame meiliserveri seadistamiseks eradomeeni kontot, mis on konfigureeritud ainult faili/etc/hosts kaudu, ilma et ükski DNS-server oleks seotud DNS-i lahenduse käsitlemisega.

1. toiming: Debiani Postfixi meiliserveri esialgsed konfiguratsioonid

1. Esimese sammuna logige oma arvutisse sisse rootõigusega kontoga või otse juurkasutajaga ja veenduge, et teie Debiani süsteem oleks uusimate turvapaikade ning tarkvara ja pakettide väljaannetega kursis, väljastades järgmise käsu.

# apt-get update 
# apt-get upgrade 

2. Järgmisel etapil installige järgmised tarkvarapaketid, mida kasutatakse süsteemi haldamiseks, väljastades järgmise käsu.

# apt-get install curl net-tools bash-completion wget lsof nano

3. Järgmisena avage oma lemmiktekstiredaktoriga redigeerimiseks fail /etc/host.conf ja lisage faili algusse järgmine rida, et DNS-i eraldusvõime saaks kõigepealt lugeda hostifaili.

order hosts,bind
multi on

4. Järgmisena seadistage oma arvuti FQDN ja lisage oma domeeninimi ja oma süsteemi FQDN/etc/hosts-faili. Domeeni ja FQDN-i nime lahendamiseks kasutage oma süsteemi IP-aadressi, nagu on näidatud alloleval ekraanipildil.

Asendage vastavalt IP-aadress ja domeen. Seejärel taaskäivitage masin, et hosti nimi õigesti rakendada.

# hostnamectl set-hostname mail.linux-console.net
# echo "192.168.0.102 linux-console.net mail.linux-console.net" >> /etc/hosts
# init 6

5. Pärast taaskäivitamist kontrollige, kas hostinimi on õigesti konfigureeritud, väljastades järgmised käsusarjad. Domeeninimi, FQDN, hostinimi ja süsteemi IP-aadress tuleks tagastada käsu hostname abil.

# hostname
# hostname -s
# hostname -f
# hostname -A
# hostname -i
# cat /etc/hostname 

6. Kontrollige ka seda, kas domeen vastab kohalikele päringutele õigesti, väljastades järgmised käsud. Pange tähele, et domeen ei taasesita teie võrgu teiste süsteemide väljastatud kaugpäringutele, kuna me ei kasuta DNS-serverit.

Domeen peaks aga vastama teistest süsteemidest, kui lisate domeeninime käsitsi nende/etc/hosts faili. Pange tähele ka seda, et faili/etc/hosts lisatud domeeni DNS-i eraldusvõime ei toimi dig-käskude kaudu.

# getent ahosts mail.linux-console.net
# ping linux-console.net
# ping mail.linux-console.net

2. samm: installige Debiani Postfixi meiliserver

7. Kõige olulisem tarkvara, mis on vajalik meiliserveri nõuetekohaseks toimimiseks, on MTA agent. MTA on server-klient arhitektuuris ehitatud tarkvara, mis vastutab posti edastamise eest meiliserverite vahel.

Selles juhendis kasutame postiedastusagendina Postfixi. Postfixi installimiseks Debianisse ametlikest hoidlatest käivitage järgmine käsk.

# apt-get install postfix

8. Postfixi installiprotsessi käigus esitatakse teile rida küsimusi. Esimesel viipal valige Postfixi seadistamise üldtüübiks suvand Interneti-sait ja vajutage jätkamiseks klahvi [sisestusklahv] ning lisage seejärel oma domeeninimi süsteemi meilinimele, nagu on näidatud järgmistes ekraanipiltides.

3. samm: konfigureerige Debianis Postfixi meiliserver

9. Järgmisena varundage Postfixi põhikonfiguratsioonifail ja konfigureerige oma domeeni jaoks Postfix järgmiste käskude abil.

# cp /etc/postfix/main.cf{,.backup}
# nano /etc/postfix/main.cf

Nüüd konfigureerige Postfixi konfiguratsioon failis main.cf, nagu näidatud.

# See /usr/share/postfix/main.cf.dist for a commented, more complete version

smtpd_banner = $myhostname ESMTP
biff = no
# appending .domain is the MUA's job.
append_dot_mydomain = no
readme_directory = no

# See http://www.postfix.org/COMPATIBILITY_README.html -- default to 2 on
# fresh installs.
compatibility_level = 2

# TLS parameters
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
smtpd_use_tls=yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache

# See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for
# information on enabling SSL in the smtp client.

smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination
myhostname = mail.debian.lan

mydomain = debian.lan

alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases

#myorigin = /etc/mailname
myorigin = $mydomain

mydestination = $myhostname, $mydomain, localhost.$mydomain, localhost
relayhost = 
mynetworks = 127.0.0.0/8, 192.168.1.0/24
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
#inet_protocols = all
inet_protocols = ipv4

home_mailbox = Maildir/

# SMTP-Auth settings
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
smtpd_sasl_local_domain = $myhostname
smtpd_recipient_restrictions = permit_mynetworks,permit_auth_destination,permit_sasl_authenticated,reject

Asendage muutjad myhostname, mydomain ja mynetworks, et need vastaksid teie enda konfiguratsioonidele.

Postfixi peamise konfiguratsioonifaili tühjendamiseks ja võimalike vigade kontrollimiseks võite käivitada käsu postconf -n, nagu on näidatud alloleval ekraanipildil.

# postconf -n

10. Kui kõik konfiguratsioonid on paigas, taaskäivitage Postfixi deemon muudatuste rakendamiseks ja teenuse töötamise kontrollimiseks, kontrollides käsku netstat, kontrollides, kas Postfixi põhiteenus on porti 25 siduv.

# systemctl restart postfix
# systemctl status postfix
# netstat -tlpn

3. samm: testige Postfixi meiliserverit Debianis

11. Selleks et testida, kas postfix saab posti edastamisega hakkama, installige esmalt pakett mailutils järgmise käsu abil.

# apt-get install mailutils

12. Seejärel saatke posti käsurea utiliidi abil kiri juurkontole ja kontrollige, kas kiri õnnestus edastada, väljastades alloleva käsu, et kontrollida posti järjekorda ja loetleda juurkataloogi Maildirdir sisu.

# echo "mail body"| mail -s "test mail" root
# mailq
# mail
# ls Maildir/
# ls Maildir/new/
# cat Maildir/new/[TAB]

13. Samuti saate kontrollida, millisel viisil postiteenust postfix-teenusega käsitseti, kontrollides järgmise logi abil postilogi faili sisu.

# tailf /var/log/mail.log

4. samm: installige ja seadistage Dovecot IMAP Debiani

14. E-posti kohaletoimetamise agent, mida me selles juhendis e-kirjade kohalikule adressaadi postkastidesse edastamiseks kasutame, on Dovecot IMAP. IMAP on 143 ja 993 (SSL) pordil töötav protokoll, mis vastutab paljude e-posti klientide kirjade lugemise, kustutamise või teisaldamise eest.

IMAP-protokoll kasutab ka sünkroonimist, et tagada iga kirja koopia salvestamine serverisse ja võimaldab kasutajatel luua e-kirjade sortimiseks serveris mitu kataloogi ja teisaldada kirjad sellesse kataloogi.

POP3 protokolli puhul see nii ei ole. POP3-protokoll ei võimalda kasutajatel teie meilide sortimiseks serveris mitu kataloogi luua. Meilide haldamiseks on ainult postkasti kaust.

Dovecoti tuumaserveri ja Dovecoti IMAP-paketi installimiseks Debianisse käivitage järgmine käsk.

# apt install dovecot-core dovecot-imapd

15. Kui Dovecot on teie süsteemi installitud, avage redigeerimiseks allpool olevad dovecot-failid ja tehke järgmised muudatused. Esiteks avage fail /etc/dovecot/dovecot.conf, otsige järgmine rida ja eemaldage kommentaar:

listen = *, ::

16. Järgmisena avage redigeerimiseks /etc/dovecot/conf.d/10-auth.conf ning leidke ja muutke allolevad read nii, et need näeksid välja nagu allpool väljavõte.

disable_plaintext_auth = no
auth_mechanisms = plain login

17. Avage fail /etc/dovecot/conf.d/10-mail.conf ja lisage järgmine rida, et kasutada e-kirjade salvestamiseks Mbox-vormingu asemel Maildir'i asukohta.

mail_location = maildir:~/Maildir

18. Viimane muudetav fail on /etc/dovecot/conf.d/10-master.conf. Siit otsige Postfix smtp-auth plokki ja tehke järgmine muudatus:

# Postfix smtp-auth
unix_listener /var/spool/postfix/private/auth {
  mode = 0666
  user = postfix
  group = postfix
 }

19. Pärast kõigi ülaltoodud muudatuste tegemist taaskäivitage Dovecoti deemon muudatuste kajastamiseks, kontrollige selle olekut ja kontrollige, kas Dovecot on seotud pordiga 143, väljastades alltoodud käsud.

# systemctl restart dovecot.service 
# systemctl status dovecot.service 
# netstat -tlpn

20. Kontrollige, kas meiliserver töötab korralikult, lisades süsteemi uue kasutajakonto ja kasutage telneti või netcati käsu abil SMTP-serveriga ühenduse loomiseks ja uue posti saatmiseks uuele lisatud kasutajale, nagu on näidatud allpool olevates väljavõtetes.

# adduser matie
# nc localhost 25
# ehlo localhost
mail from: root
rcpt to: matie
data
subject: test
Mail body
.
quit

21. Kontrollige, kas kiri on jõudnud uude kasutaja postkasti, lisades kasutaja kodukataloogi sisu, nagu on näidatud alloleval ekraanipildil.

# ls /home/test_mail/Maildir/new/

22. Samuti saate IMAP-protokolli kaudu ühenduse luua kasutaja postkastiga käsurealt, nagu on näidatud allpool väljavõttes. Uus kiri peaks olema kasutaja postkastis.

# nc localhost 143
x1 LOGIN matie user_password
x2 LIST "" "*"
x3 SELECT Inbox
x4 LOGOUT

5. samm: installige ja konfigureerige veebimeil Debianis

23. Kasutajad haldavad oma e-kirju Rainloopi veebimeili kliendi kaudu. Enne Rainloopi posti kasutajaagendi installimist installige esmalt Apache HTTP-server ja järgmised Rainloopi nõutavad PHP-moodulid, väljastades järgmise käsu.

# apt install apache2 php7.0 libapache2-mod-php7.0 php7.0-curl php7.0-xml

24. Pärast Apache veebiserveri installimist muutke kataloogitee/var/www/html/kataloog, eemaldage fail index.html ja väljastage järgmine käsk Rainloop Webmaili installimiseks.

# cd /var/www/html/
# rm index.html 
# curl -sL https://repository.rainloop.net/installer.php | php

25. Kui Rainloopi veebimeili klient on süsteemi installitud, navigeerige oma domeeni IP-aadressile ja logige sisse Rainloopi administraatori veebiliidesesse järgmiste vaikeandmetega:

http://192.168.0.102/?admin
User: admin
Password: 12345

26. Liikuge menüüsse Domeenid, vajutage nuppu Lisa domeen ja lisage oma domeeninime seaded, nagu on näidatud alloleval ekraanipildil.

27. Kui olete oma domeeniseaded lisanud, logige Ranloopi administraatori liidesest välja ja suunake brauser oma IP-aadressile, et e-posti kontoga veebimeili klienti sisse logida.

Kui olete edukalt Rainloopi veebimeili sisse loginud, peaksite nägema varem käsurealt saadetud e-kirja oma kausta Saabunud.

http://192.168.0.102
User: [email 
Pass: the matie password

27. Kasutaja kodukataloogi loomiseks uue kasutaja väljastatud käsu useradd lisamine lipuga -m . Kuid kõigepealt veenduge, et seadistaksite järgmise kasutaja käsuga muutuja Maildir iga kasutaja jaoks.

# echo 'export MAIL=$HOME/Maildir' >> /etc/profile
# useradd -m user3
# passwd user3

28. Kui soovite kogu juurte e-posti aadressi süsteemist ümber suunata konkreetsele kohalikule meilikontole, käivitage järgmised käsud. Kõik juurkontole ümbersuunatud või määratud kirjad edastatakse teie e-posti kasutajale, nagu on näidatud alloleval pildil.

# echo "root: test_mail" >> /etc/aliases
# newaliases

See on kõik! Olete oma ruumides edukalt installinud ja konfigureerinud meiliserveri, et kohalikud kasutajad saaksid e-kirjade kaudu suhelda. Kuid seda tüüpi posti konfiguratsioon pole mingil viisil turvatud ja soovitatav on see juurutada ainult teie täieliku kontrolli all olevate süsteemide ja võrkude väikeste seadistuste jaoks.