Postfix + Dovecot + Squirrelmail και τοπικοί χρήστες - SMB Networks

Γενικός δείκτης της σειράς: Δίκτυα υπολογιστών για ΜΜΕ: Εισαγωγή

Συγγραφέας: Federico Antonio Valdes Toujague

Αυτό το άρθρο είναι η συνέχεια και το τελευταίο των μίνι σειρών:

Γεια σας φίλοι και φίλοι!

Ο Λάτρεις θέλουν να έχουν το δικό τους διακομιστή αλληλογραφίας. Δεν θέλουν να χρησιμοποιούν διακομιστές όπου το "Απόρρητο" βρίσκεται ανάμεσα στα ερωτηματικά. Ο υπεύθυνος για την εφαρμογή της υπηρεσίας στον μικρό σας διακομιστή δεν είναι ειδικός στο θέμα και αρχικά θα προσπαθήσει να εγκαταστήσει τον πυρήνα ενός μελλοντικού και πλήρους διακομιστή αλληλογραφίας. Είναι ότι οι "εξισώσεις" για να φτιάξετε ένα Full Mailserver είναι λίγο δύσκολο να κατανοήσετε και να εφαρμόσετε. 😉

Σχολιασμοί περιθωρίου

  • Είναι απαραίτητο να είμαστε σαφείς σχετικά με τις λειτουργίες που εκτελεί κάθε πρόγραμμα που συμμετέχει σε έναν διακομιστή Mailserver. Ως αρχικός οδηγός δίνουμε μια ολόκληρη σειρά χρήσιμων συνδέσμων με τον δηλωμένο σκοπό που επισκέπτονται.
  • Η μη αυτόματη εφαρμογή και από το μηδέν μια ολοκληρωμένη υπηρεσία αλληλογραφίας είναι μια κουραστική διαδικασία, εκτός εάν είστε ένας από τους "Επιλεγμένους" που εκτελούν αυτό το είδος εργασίας καθημερινά. Ο διακομιστής αλληλογραφίας αποτελείται γενικά από διάφορα προγράμματα που χειρίζονται ξεχωριστά SMTP, ΚΡΌΤΟΣ / IMAP, Τοπική αποθήκευση μηνυμάτων, εργασίες που σχετίζονται με τη θεραπεία του SPAM, Antivirus κ.λπ. ΟΛΑ αυτά τα προγράμματα πρέπει να επικοινωνούν μεταξύ τους σωστά.
  • Δεν υπάρχει κανένα μέγεθος που να ταιριάζει σε όλες ή "βέλτιστες πρακτικές" σχετικά με τον τρόπο διαχείρισης των χρηστών. πού και πώς να αποθηκεύετε μηνύματα ή πώς να κάνετε όλα τα στοιχεία να λειτουργούν ως ένα σύνολο.
  • Η συναρμολόγηση και η βελτιστοποίηση ενός Mailserver τείνει να είναι ενοχλητική σε θέματα όπως δικαιώματα και κάτοχοι αρχείων, επιλέγοντας ποιος χρήστης θα είναι υπεύθυνος για μια συγκεκριμένη διαδικασία και σε μικρά σφάλματα που έγιναν σε κάποιο εσωτερικό αρχείο διαμόρφωσης.
  • Εάν δεν γνωρίζετε πολύ καλά τι κάνετε, το τελικό αποτέλεσμα θα είναι ένας ανασφαλής ή ελαφρώς μη λειτουργικός διακομιστής αλληλογραφίας. Ότι στο τέλος της εφαρμογής Δεν λειτουργεί, θα είναι πιθανώς το λιγότερο από τα κακά.
  • Μπορούμε να βρούμε στο Διαδίκτυο μια καλή συνταγή σχετικά με τον τρόπο δημιουργίας διακομιστή αλληλογραφίας Ένα από τα πιο ολοκληρωμένα -κατά την προσωπική μου γνώμη- είναι αυτό που προσφέρει ο συγγραφέας ivar abrahamsen στη δέκατη τρίτη έκδοση του Ιανουαρίου 2017 «Πώς να ρυθμίσετε έναν διακομιστή αλληλογραφίας σε ένα σύστημα GNU / Linux".
  • Σας προτείνουμε επίσης να διαβάσετε το άρθρο «Ένας διακομιστής Mailser στο Ubuntu 14.04: Postfix, Dovecot, MySQL«, ή "Ένας διακομιστής Mailser στο Ubuntu 16.04: Postfix, Dovecot, MySQL".
  • Αληθής. Η καλύτερη τεκμηρίωση σχετικά με αυτό θα βρεθεί στα Αγγλικά.
    • Παρόλο που ποτέ δεν κάνουμε έναν Mailserver που καθοδηγείται πιστά από το Πως να… που αναφέρθηκε στην προηγούμενη παράγραφο, το απλό γεγονός ότι το ακολουθούμε βήμα προς βήμα θα μας δώσει μια πολύ καλή ιδέα για το τι θα αντιμετωπίσουμε.
  • Εάν θέλετε να έχετε έναν πλήρη Mailserver σε λίγα μόνο βήματα, μπορείτε να κατεβάσετε την εικόνα iRedOS-0.6.0-CentOS-5.5-i386.isoή αναζητήστε ένα πιο μοντέρνο, είτε είναι το iRedOS είτε iRedMail. Είναι ο τρόπος που προσωπικά προτείνω.

Πρόκειται να εγκαταστήσουμε και να διαμορφώσουμε:

Απομένει να γίνει:

Τουλάχιστον οι ακόλουθες υπηρεσίες θα παραμείνουν σε εφαρμογή:

  • μεταγκρι: Πολιτικές διακομιστή Postfix για γκρίζες λίστες και απόρριψη ανεπιθύμητης αλληλογραφίας.
  • Amavisd-νέο: σενάριο που δημιουργεί μια διεπαφή μεταξύ του MTA και των σαρωτών ιών και των φίλτρων περιεχομένου.
  • Clamav Antivirus: antivirus σουίτα
  • SpamAssassin: εξαγωγή ανεπιθύμητης αλληλογραφίας
  • ξυράφι (Πύζορ): Λήψη SPAM μέσω κατανεμημένου και συνεργατικού δικτύου. Το δίκτυο Vipul Razor διατηρεί έναν ενημερωμένο κατάλογο διάδοσης ανεπιθύμητων μηνυμάτων ή ανεπιθύμητης αλληλογραφίας.
  • Εγγραφή DNS "DomainKeys Identified Mail" ή επέκταση dkim.

Πακέτα postgrey, amavisd-new, clamav, spamassassin, ξυράφι y pyzor Βρίσκονται στα αποθετήρια του προγράμματος. Θα βρούμε επίσης το πρόγραμμα Οπεντκίμ.

  • Η σωστή δήλωση των εγγραφών DNS "SPF" και "DKIM" είναι απαραίτητη εάν δεν θέλουμε ο διακομιστής αλληλογραφίας μας να τεθεί σε λειτουργία, να κηρυχθεί ανεπιθύμητος ή ένας παραγωγός SPAM ή Junk Mail, από άλλες υπηρεσίες αλληλογραφίας όπως Gmail, Yαχο, Hotmail, και τα λοιπά.

Αρχικοί έλεγχοι

Θυμηθείτε ότι αυτό το άρθρο είναι συνέχεια άλλων που ξεκινούν από Έλεγχος ταυτότητας Squid + PAM στο CentOS 7.

Η διεπαφή LAN Ens32 είναι συνδεδεμένη στο εσωτερικό δίκτυο

[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 = δημόσιο

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

Η διασύνδεση Ens34 WAN είναι συνδεδεμένη στο Διαδίκτυο

[root @ linuxbox ~] # nano / etc / sysconfig / network-scripts / ifcfg-ens34
ΣΥΣΚΕΥΗ=ens34 ONBOOT=ναι BOOTPROTO=στατικός HWADDR=00:0c:29:da:a3:e7 NM_CONTROLLED=χωρίς IPADDR=172.16.10.10 NETMASK=255.255.255.0 # Η διεύθυνση ADSL # είναι συνδεδεμένη με αυτή τη διεπαφή # με αυτήν τη διεπαφή IP GATEWAY=172.16.10.1 DOMAIN=desdelinux.fan DNS1=127.0.0.1
ZONE = εξωτερικό

Ανάλυση DNS από το LAN

[root@linuxbox ~]# αναζήτηση cat /etc/resolv.conf desdelinux.fan nameserver 127.0.0.1 nameserver 172.16.10.30 [root@linuxbox ~]# host mail
ταχυδρομείο.desdelinuxΤο .fan είναι ένα ψευδώνυμο για το linuxbox.desdelinux.ανεμιστήρας. linuxbox.desdelinuxΤο .fan έχει διεύθυνση 192.168.10.5 linuxbox.desdelinuxΗ αλληλογραφία .fan διαχειρίζεται 1 αλληλογραφία.desdelinux.ανεμιστήρας.

[root@linuxbox ~]# hostmail.desdelinux.ανεμιστήρας
ταχυδρομείο.desdelinuxΤο .fan είναι ένα ψευδώνυμο για το linuxbox.desdelinux.ανεμιστήρας. linuxbox.desdelinuxΤο .fan έχει διεύθυνση 192.168.10.5 linuxbox.desdelinuxΗ αλληλογραφία .fan διαχειρίζεται 1 αλληλογραφία.desdelinux.ανεμιστήρας.

Ανάλυση DNS από το Διαδίκτυο

buzz@sysadmin:~$hostmail.desdelinux.ανεμιστήρας 172.16.10.30
Χρήση διακομιστή τομέα: Όνομα: 172.16.10.30 Διεύθυνση: 172.16.10.30#53 Ψευδώνυμα: mail.desdelinux.fan είναι ένα ψευδώνυμο για desdelinux.ανεμιστήρας.
desdelinuxΤο .fan έχει διεύθυνση 172.16.10.10
desdelinuxΗ αλληλογραφία .fan διαχειρίζεται 10 αλληλογραφία.desdelinux.ανεμιστήρας.

Προβλήματα επίλυσης ονόματος κεντρικού υπολογιστή τοπικά «desdelinux.ανεμιστήρας"

Εάν αντιμετωπίζετε προβλήματα με την επίλυση του ονόματος κεντρικού υπολογιστή «desdelinux.ανεμιστήρας" από το LAN, δοκιμάστε να σχολιάσετε τη γραμμή του αρχείου /etc/dnsmasq.conf όπου δηλώνεται τοπική=/desdelinux.ανεμιστήρας/. Στη συνέχεια, επανεκκινήστε το Dnsmasq.

[root @ linuxbox ~] # nano /etc/dnsmasq.conf # Σχολιάστε την παρακάτω γραμμή:
# local=/desdelinux.ανεμιστήρας/

[root @ linuxbox ~] # επανεκκίνηση υπηρεσίας dnsmasq
Ανακατεύθυνση στο / bin / systemctl επανεκκίνηση του dnsmasq.service

[root @ linuxbox ~] # κατάσταση dnsmasq υπηρεσίας

[root@linuxbox ~]# κεντρικός υπολογιστής desdelinux.ανεμιστήρας
desdelinuxΤο .fan έχει διεύθυνση 172.16.10.10
desdelinuxΗ αλληλογραφία .fan διαχειρίζεται 10 αλληλογραφία.desdelinux.ανεμιστήρας.

Postfix και Dovecot

Η πολύ εκτεταμένη τεκμηρίωση του Postfix και του Dovecot μπορείτε να βρείτε στη διεύθυνση:

[root @ linuxbox ~] # ls /usr/share/doc/postfix-2.10.1/
bounce.cf.default ΑΔΕΙΑ README-Postfix-SASL-RedHat.txt ΣΥΜΒΑΤΟΤΗΤΑ main.cf.default TLS_ACKNOWLEDGEMENTS παραδείγματα README_FILES TLS_LICENSE

[root @ linuxbox ~] # ls /usr/share/doc/dovecot-2.2.10/
ΣΥΓΓΡΑΦΕΙΣ COPYING.MIT dovecot-openssl.cnf NEWS wiki COPYING ChangeLog παράδειγμα-config README COPYING.LGPL documentation.txt mkcert.sh solr-schema.xml

Στο CentOS 7, το Postfix MTA εγκαθίσταται από προεπιλογή όταν επιλέγουμε την επιλογή ενός διακομιστή υποδομής. Πρέπει να ελέγξουμε ότι το περιβάλλον SELinux επιτρέπει την εγγραφή στο Potfix στην ουρά τοπικών μηνυμάτων:

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

Τροποποιήσεις στο FirewallD

Χρησιμοποιώντας τη γραφική διεπαφή για τη διαμόρφωση του FirewallD, πρέπει να διασφαλίσουμε ότι οι ακόλουθες υπηρεσίες και θύρες είναι ενεργοποιημένες για κάθε Ζώνη:

# ------------------------------------------------- -----
# Διορθώσεις στο FirewallD
# ------------------------------------------------- -----
# Τείχος προστασίας
# Δημόσια ζώνη: Υπηρεσίες http, https, imap, pop3, smtp
# Δημόσια ζώνη: θύρες 80, 443, 143, 110, 25

# Εξωτερική ζώνη: υπηρεσίες http, https, imap, pop3s, smtp
# Εξωτερική ζώνη: θύρες 80, 443, 143, 995, 25

Εγκαθιστούμε το Dovecot και τα απαραίτητα προγράμματα

[root @ linuxbox ~] # yum εγκατάσταση dovecot mod_ssl procmail telnet

Ελάχιστη διαμόρφωση Dovecot

[root @ linuxbox ~] # nano /etc/dovecot/dovecot.conf
πρωτόκολλα =imap pop3 lmtp
ακούω =*, ::
login_greeting = Το Dovecot είναι έτοιμο!

Απενεργοποιούμε ρητά τον έλεγχο ταυτότητας απλού κειμένου του Dovecot:

[root @ linuxbox ~] # nano /etc/dovecot/conf.d/10-auth.conf 
disable_plaintext_auth = ναι

Δηλώνουμε την Ομάδα με τα απαραίτητα προνόμια για αλληλεπίδραση με το Dovecot και τη θέση των μηνυμάτων:

[root @ linuxbox ~] # nano /etc/dovecot/conf.d/10-mail.conf
mail_location = mbox: ~ / mail: INBOX = / var / mail /% u
mail_privileged_group = αλληλογραφία
mail_access_groups = αλληλογραφία

Πιστοποιητικά για το Dovecot

Το Dovecot δημιουργεί αυτόματα τα πιστοποιητικά δοκιμής σας βάσει των δεδομένων του αρχείου /etc/pki/dovecot/dovecot-openssl.cnf. Για να δημιουργήσουμε νέα πιστοποιητικά σύμφωνα με τις απαιτήσεις μας, πρέπει να ακολουθήσουμε τα ακόλουθα βήματα:

[root @ linuxbox ~] # cd / etc / pki / dovecot /
[root @ linuxbox dovecot] # nano dovecot-openssl.cnf
[ req ] default_bits = 1024 encrypt_key = ναι διακεκριμένο_όνομα = req_dn x509_extensions = cert_type prompt = όχι [ req_dn ] # χώρα (κωδικός 2 γραμμάτων) C=CU # Όνομα πολιτείας ή επαρχίας (πλήρες όνομα) ST=Κούβα # Όνομα πόλης (π.χ. ) L=Havana # Οργανισμός (π.χ. εταιρεία) O=DesdeLinux.Fan # Οργανωτική μονάδα Όνομα (π.χ. ενότητα) OU=Enthusiasts # Common Name (*.example.com είναι επίσης δυνατό) CN=*.desdelinux.fan # Email επικοινωνίας emailAddress=buzz@desdelinux.fan [ cert_type ] nsCertType = διακομιστής

Καταργούμε τα πιστοποιητικά δοκιμής

[root @ linuxbox dovecot] # rm πιστοποιητικά / dovecot.pem 
rm: διαγραφή του κανονικού αρχείου "certs / dovecot.pem"; (y / n) y
[root @ linuxbox dovecot] # rm ιδιωτικό / dovecot.pem 
rm: διαγραφή του κανονικού αρχείου "private / dovecot.pem"; (y / n) y

Αντιγράφουμε και εκτελούμε το σενάριο mkcert.sh από τον κατάλογο τεκμηρίωσης

[root @ linuxbox dovecot] # cp /usr/share/doc/dovecot-2.2.10/mkcert.sh. [root @ linuxbox dovecot] # bash mkcert.sh 
Δημιουργία ιδιωτικού κλειδιού RSA 1024 bit ......++++++ ................++++++ εγγραφή νέου ιδιωτικού κλειδιού στο '/etc/ pki/dovecot/private/dovecot.pem' ----- θέμα= /C=CU/ST=Κούβα/L=Havana/O=DesdeLinux.Fan/OU=Enthusiasts/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 πιστοποιητικά /
σύνολο 4 -rw -------. 1 root root 1029 22 Μαΐου 16:08 dovecot.pem
[root @ linuxbox dovecot] # ls -l ιδιωτικό /
σύνολο 4 -rw -------. 1 root root 916 22 Μαΐου 16:08 dovecot.pem

[root @ linuxbox dovecot] # επανεκκίνηση υπηρεσίας dovecot
[root @ linuxbox dovecot] # κατάσταση υπηρεσίας dovecot

Πιστοποιητικά για 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 private/desdelinux.ανεμιστήρας.κλειδί

Δημιουργία ιδιωτικού κλειδιού RSA 4096 bit .........++ ..++ εγγραφή νέου ιδιωτικού κλειδιού στο 'private/domain.tld.key' ----- Θα σας ζητηθεί να εισαγάγετε πληροφορίες που θα ενσωματωθεί στο αίτημα πιστοποιητικού σας. Αυτό που πρόκειται να εισαγάγετε είναι αυτό που ονομάζεται Διακεκριμένο Όνομα ή DN. Υπάρχουν αρκετά πεδία αλλά μπορείτε να αφήσετε μερικά κενά Για ορισμένα πεδία θα υπάρχει μια προεπιλεγμένη τιμή. Εάν πληκτρολογήσετε '.', το πεδίο θα μείνει κενό. ----- Όνομα χώρας (κωδικός 2 γραμμάτων) [XX]: Όνομα πολιτείας ή επαρχίας CU (πλήρες όνομα) []:Κούβα Όνομα τοποθεσίας (π.χ. πόλη) [Προεπιλεγμένη πόλη]: Αβάνα Όνομα οργανισμού (π.χ. εταιρεία) [ Default Company Ltd]:DesdeLinux.Όνομα οργανωτικής μονάδας θαυμαστών (π.χ. ενότητα) []: Κοινό όνομα ενθουσιωδών (π.χ. το όνομά σας ή το όνομα κεντρικού υπολογιστή του διακομιστή σας) []:desdelinux.fan Διεύθυνση Email []:buzz@desdelinux.ανεμιστήρας

Ελάχιστη διαμόρφωση Postfix

Προσθέτουμε στο τέλος του αρχείου / etc / ψευδώνυμα το επόμενο:

root: buzz

Για να εφαρμοστούν οι αλλαγές εκτελούμε την ακόλουθη εντολή:

[root @ linuxbox ~] # newaliases

Η διαμόρφωση Postifx μπορεί να γίνει με άμεση επεξεργασία του αρχείου /etc/postfix/main.cf ή με εντολή postconf -ε προσέχοντας ότι όλες οι παράμετροι που θέλουμε να τροποποιήσουμε ή να προσθέσουμε αντικατοπτρίζονται σε μία μόνο γραμμή της κονσόλας:

  • Ο καθένας πρέπει να δηλώσει τις επιλογές που κατανοούν και χρειάζονται!.
[root@linuxbox ~]# postconf -e 'myhostname = desdelinux.ανεμιστήρας'
[root@linuxbox ~]# postconf -e 'mydomain = desdelinux.ανεμιστήρας'
[root @ linuxbox ~] # postconf -e 'myorigin = $ mydomain'
[root @ linuxbox ~] # postconf -e 'inet_interfaces = all'
[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)'

Προσθέτουμε στο τέλος του αρχείου /etc/postfix/main.cf τις επιλογές που δίνονται παρακάτω. Για να μάθετε το νόημα καθενός από αυτά, σας συνιστούμε να διαβάσετε τα συνοδευτικά έγγραφα.

biff = όχι
append_dot_mydomain = όχι
delay_warning_time = 4 ώρες
readme_directory = όχι
smtpd_tls_cert_file=/etc/pki/certs/desdelinux.fan.crt
smtpd_tls_key_file=/etc/pki/private/desdelinux.ανεμιστήρας.κλειδί
smtpd_use_tls = ναι
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_ορισμός

# Μέγιστο μέγεθος γραμματοκιβωτίου 1024 megabyte = 1 g και g
mailbox_size_limit = 1073741824

παραλήπτης_delimiter = +
maximal_queue_lifetime = 7δ
header_checks = regexp: / etc / postfix / header_checks
body_checks = regexp: / etc / postfix / body_checks

# Λογαριασμοί που στέλνουν αντίγραφο εισερχόμενης αλληλογραφίας σε άλλον λογαριασμό
penerima_bcc_maps = κατακερματισμός: / etc / postfix / accounts_ forwarding_copy

Οι ακόλουθες γραμμές είναι σημαντικές για να προσδιορίσετε ποιος μπορεί να στείλει αλληλογραφία και αναμετάδοση σε άλλους διακομιστές, έτσι ώστε να μην ρυθμίσουμε κατά λάθος ένα "ανοιχτό ρελέ" που επιτρέπει σε μη εξουσιοδοτημένους χρήστες να στέλνουν αλληλογραφία. Πρέπει να συμβουλευτούμε τις σελίδες βοήθειας του Postfix για να κατανοήσουμε τι σημαίνει κάθε επιλογή.

  • Ο καθένας πρέπει να δηλώσει τις επιλογές που κατανοούν και χρειάζονται!.
smtpd_helo_restrictions = allow_mynetworks,
 προειδοποίηση_αν_απορρίψει το απορρίψιμο_non_fqdn_hostname,
 απόρριψη_invalid_hostname,
 επιτρέπουν

smtpd_sender_restrictions = permit_sasl_autentent,
 perm_mynetworks,
 προειδοποίηση_αν_απορρίψει απορριπτικό_νον_fqdn_ αποστολέα,
 απόρριψη_unknown_sender_domain,
 απόρριψη_unauth_pipelining,
 επιτρέπουν

smtpd_client_restrictions = reject_rbl_client sbl.spamhaus.org
 απόρριψη_rbl_ πελάτη blackholes.easynet.nl

# ΣΗΜΕΙΩΣΗ: Η επιλογή "check_policy_service inet: 127.0.0.1: 10023"
# ενεργοποιεί το πρόγραμμα Postgrey και δεν πρέπει να το συμπεριλάβουμε
# διαφορετικά θα χρησιμοποιήσουμε το Postgrey

smtpd_recipient_restrictions = απόρριψη_unauth_pipelining,
 perm_mynetworks,
 άδεια_sasl_autenticated,
 απόρριψη_non_fqdn_recipient,
 απόρριψη_unknown_recipient_domain,
 απόρριψη_unauth_ προορισμός,
 check_policy_service inet: 127.0.0.1: 10023,
 επιτρέπουν

smtpd_data_restrictions = απόρριψη_unauth_pipelining

smtpd_relay_restrictions = απόρριψη_unauth_pipelining,
 perm_mynetworks,
 άδεια_sasl_autenticated,
 απόρριψη_non_fqdn_recipient,
 απόρριψη_unknown_recipient_domain,
 απόρριψη_unauth_ προορισμός,
 check_policy_service inet: 127.0.0.1: 10023,
 επιτρέπουν
 
smtpd_helo_required = ναι
smtpd_delay_reject = ναι
disable_vrfy_command = ναι

Δημιουργούμε τα αρχεία / etc / postfix / body_checks y / etc / postfix / account_forwarding_copyκαι τροποποιήστε το αρχείο / etc / postfix / header_checks.

  • Ο καθένας πρέπει να δηλώσει τις επιλογές που κατανοούν και χρειάζονται!.
[root @ linuxbox ~] # nano / etc / postfix / body_checks
# Εάν αυτό το αρχείο έχει τροποποιηθεί, δεν είναι απαραίτητο # να εκτελέσετε postmap # Για να ελέγξετε τους κανόνες, εκτελέστε ως root: # postmap -q 'super new v1agra' regexp: / etc / postfix / body_checks
# Πρέπει να επιστρέψετε: # REJECT Κανόνας # 2 Σώμα μηνυμάτων κατά των ανεπιθύμητων μηνυμάτων
/ viagra / REJECT Κανόνας # 1 Anti Spam του σώματος μηνυμάτων
/ super new v [i1] agra / REJECT Κανόνας # 2 Σώμα μηνυμάτων Anti Spam

[root @ linuxbox ~] # nano / etc / postfix / accounts_ forwarding_copy
# Μετά την τροποποίηση, πρέπει να εκτελέσετε: # postmap / etc / postfix / account_ forwarding_copy
# και το αρχείο δημιουργείται ή μετράται: # /etc/postfix/accounts_forwarding_copy.db
# ------------------------------------------ # ONE λογαριασμός για προώθηση ενός BCC αντίγραφο # BCC = Black Carbon Αντίγραφο # Παράδειγμα: # webadmin@desdelinux.fan buzz@desdelinux.ανεμιστήρας

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

[root @ linuxbox ~] # nano / etc / postfix / header_checks
# Προσθήκη στο τέλος του αρχείου # ΔΕΝ ΑΠΑΙΤΕΙΤΑΙ Postmap, καθώς είναι Κανονικές εκφράσεις
/ ^ Θέμα: =? Big5? / REJECT Κινεζική κωδικοποίηση δεν έγινε αποδεκτή από αυτόν τον διακομιστή
/ ^ Θέμα: =? EUC-KR? / REJECT Κορεατική κωδικοποίηση δεν επιτρέπεται από αυτόν τον διακομιστή
/ ^ Θέμα: ADV: / REJECT Δεν γίνονται δεκτές διαφημίσεις από αυτόν τον διακομιστή
/^From:.*\@.*\.cn/ ΑΠΑΝΤΗΣΗ Λυπούμαστε, δεν επιτρέπονται εδώ κινεζικά μηνύματα
/^From:.*\@.*\.kr/ REJECT Λυπούμαστε, δεν επιτρέπεται η αλληλογραφία της Κορέας εδώ
/^Από:
/^From:.*\@.*\.ro/ REJECT Λυπούμαστε, δεν επιτρέπεται η αλληλογραφία της Ρουμανίας εδώ
/^(Received|Message-Id|X-(Mailer|Sender)):.*\b(AutoMail|E-Broadcaster|Emailer Platinum | Thunder Server | eMarksman | Extractor | e-Merge | από stealth [^.] | Global Messenger | GroupMaster | Mailcast | MailKing | Match10 | MassE-Mail | massmail \ .pl | Breaker ειδήσεων | Powermailer | Quick Shot | Ready Aim Fire | WindoZ | WorldMerge | Yourdora | Lite) \ b / ΑΠΑΝΤΗΣΗ Δεν επιτρέπονται μαζικά mailers.
/ ^ Από: "spammer / REJECT
/ ^ Από: "spam / REJECT
/^Subject:.*viagra/ ΑΠΟΡΡΙΨΗ
# Επικίνδυνες επεκτάσεις
/ name = [^> Iluminación * \. (ρόπαλο | cmd | exe | com | pif | reg | scr | vb | vbe | vbs) / REJECT REJECT Δεν δεχόμαστε συνημμένα με αυτές τις επεκτάσεις

Ελέγξουμε τη σύνταξη, επανεκκινήστε το Apache και το Postifx και ενεργοποιούμε και ξεκινήσαμε το Dovecot

[root @ linuxbox ~] # έλεγχος μετά την επιδιόρθωση
[root @ linuxbox ~] #

[root @ linuxbox ~] # systemctl επανεκκίνηση httpd
[root @ linuxbox ~] # κατάσταση systemctl httpd

[root @ linuxbox ~] # systemctl επανεκκίνηση μετά την επιδιόρθωση
[root @ linuxbox ~] # κατάσταση συστήματος μετά την επιδιόρθωση

[root @ linuxbox ~] # systemctl κατάσταση dovecot
● dovecot.service - Διακομιστής email Dovecot IMAP / POP3 Φορτώθηκε: φορτωμένος (/usr/lib/systemd/system/dovecot.service; απενεργοποιημένος; προρυθμισμένος προμηθευτής: απενεργοποιημένος) Ενεργός: ανενεργός (νεκρός)

[root @ linuxbox ~] # systemctl ενεργοποιήστε το dovecot
[root @ linuxbox ~] # systemctl ξεκινήστε το dovecot
[root @ linuxbox ~] # systemctl επανεκκίνηση dovecot
[root @ linuxbox ~] # systemctl κατάσταση dovecot

Έλεγχοι σε επίπεδο κονσόλας

  • Είναι πολύ σημαντικό πριν συνεχίσετε με την εγκατάσταση και τη διαμόρφωση άλλων προγραμμάτων, να κάνετε τους ελάχιστους απαραίτητους ελέγχους των υπηρεσιών SMTP και POP.

Τοπική από τον ίδιο τον διακομιστή

Στέλνουμε ένα email στον τοπικό χρήστη Legolas.

[root @ linuxbox ~] # echo "Γεια σας. Αυτό είναι ένα δοκιμαστικό μήνυμα" | mail -s "Test" legolas

Ελέγουμε το γραμματοκιβώτιο του Λέγκολας.

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

Μετά το μήνυμα Το Dovecot είναι έτοιμο! προχωράμε:

---
+ ΟΚ Το Dovecot είναι έτοιμο!
USER legolas +OK PASS legolas +OK Είσοδος. STAT +OK 1 559 LIST +OK 1 μηνύματα: 1 559 . RETR 1 +OK 559 οκτάδες Return-Path:desdelinux.fan> X-Original-Προς: legolas Παράδοση-Προς: legolas@desdelinux.ανεμιστήρας Λήψη: από desdelinux.fan (Postfix, από το userid 0) id 7EA22C11FC57; Δευτ., 22 Μαΐου 2017 10:47:10 -0400 (EDT) Ημερομηνία: Δευτ., 22 Μαΐου 2017 10:47:10 -0400 Προς: legolas@desdelinux.fan Θέμα: Test User-Agent: Heirloom mailx 12.5 7/5/10 MIME-Έκδοση: 1.0 Περιεχόμενο-Τύπος: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Message-Id: <20170522144710.7EA22C11FC57@desdelinux.fan> Από: root@desdelinux.fan (root) Γεια σας. Αυτό είναι ένα δοκιμαστικό μήνυμα. ΤΕΛΕΙΩΣΕΤΕ
[root @ linuxbox ~] #

Τηλεχειριστήρια από έναν υπολογιστή στο LAN

Ας στείλουμε ένα άλλο μήνυμα στο Legolas από άλλον υπολογιστή στο LAN. Σημειώστε ότι η ασφάλεια TLS ΔΕΝ είναι απολύτως απαραίτητη στο δίκτυο SME.

buzz @ sysadmin: ~ $ sendemail -f buzz@deslinux.fan \
-t legolas@desdelinux.ανεμιστήρας\
-u "Γεια"
-μ "Χαιρετισμούς Legolas από τον φίλο σας Buzz" \
-s email.desdelinux.fan -o tls=no
22 Μαΐου 10:53:08 sysadmin sendemail [5866]: Το email εστάλη επιτυχώς!

Αν προσπαθήσουμε να συνδεθούμε telnet Από έναν κεντρικό υπολογιστή στο LAN - ή από το Διαδίκτυο, φυσικά - στο Dovecot, θα συμβούν τα εξής επειδή απενεργοποιούμε τον έλεγχο ταυτότητας απλού κειμένου:

buzz@sysadmin:~$ telnet mail.desdelinux.fan 110Trying 192.168.10.5...
Συνδεδεμένο στο linuxbox.desdelinux.ανεμιστήρας. Ο χαρακτήρας διαφυγής είναι '^]'. +OK Το Dovecot είναι έτοιμο! χρήστης legolas
-ERR [AUTH] Ο έλεγχος ταυτότητας Plaintext δεν επιτρέπεται σε μη ασφαλείς συνδέσεις (SSL / TLS).
quit + OK Αποσύνδεση Η σύνδεση έκλεισε από ξένο κεντρικό υπολογιστή.
buzz @ sysadmin: ~ $

Πρέπει να το πετύχουμε OpenSSL. Η πλήρης έξοδος της εντολής θα ήταν:

buzz@sysadmin:~$ openssl s_client -crlf -σύνδεση αλληλογραφίας.desdelinux.fan:110 -startls pop3
Συνδεδεμένο (00000003)
βάθος=0 C = CU, ST = Κούβα, L = Αβάνα, O = DesdeLinux.Fan, OU = Enthusiasts, CN = *.desdelinux.ανεμιστήρας, διεύθυνση ηλεκτρονικού ταχυδρομείου = buzz@desdelinux.ανεμιστήρας
επαλήθευση σφάλματος: num = 18: αυτο-υπογεγραμμένο πιστοποιητικό επιβεβαίωση επιστροφής: 1
βάθος=0 C = CU, ST = Κούβα, L = Αβάνα, O = DesdeLinux.Fan, OU = Enthusiasts, CN = *.desdelinux.ανεμιστήρας, διεύθυνση ηλεκτρονικού ταχυδρομείου = buzz@desdelinux.ανεμιστήρας επαλήθευση επιστροφής:1
--- Αλυσίδα πιστοποιητικών 0 s:/C=CU/ST=Κούβα/L=Havana/O=DesdeLinux.Fan/OU=Enthusiasts/CN=*.desdelinux.fan/emailAddress=buzz@desdelinux.ανεμιστήρας i:/C=CU/ST=Κούβα/L=Αβάνα/O=DesdeLinux.Fan/OU=Enthusiasts/CN=*.desdelinux.fan/emailAddress=buzz@desdelinux.fan
---
Server certificate
-----BEGIN CERTIFICATE-----
MIICyzCCAjSgAwIBAgIJAKUHI/2ZD+MeMA0GCSqGSIb3DQEBBQUAMIGbMQswCQYD
VQQGEwJDVTENMAsGA1UECBMEQ3ViYTEPMA0GA1UEBxMGSGFiYW5hMRcwFQYDVQQK
Ew5EZXNkZUxpbnV4LkZhbjEUMBIGA1UECxMLRW50dXNpYXN0YXMxGTAXBgNVBAMU
ECouZGVzZGVsaW51eC5mYW4xIjAgBgkqhkiG9w0BCQEWE2J1enpAZGVzZGVsaW51
eC5mYW4wHhcNMTcwNTIyMjAwODEwWhcNMTgwNTIyMjAwODEwWjCBmzELMAkGA1UE
BhMCQ1UxDTALBgNVBAgTBEN1YmExDzANBgNVBAcTBkhhYmFuYTEXMBUGA1UEChMO
RGVzZGVMaW51eC5GYW4xFDASBgNVBAsTC0VudHVzaWFzdGFzMRkwFwYDVQQDFBAq
LmRlc2RlbGludXguZmFuMSIwIAYJKoZIhvcNAQkBFhNidXp6QGRlc2RlbGludXgu
ZmFuMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC7wckAiNNfYSz5hdePzKuZ
m2MMuhGDvwrDSPDEcVutznbZSgJ9bvTo445TR+Bnk+OZ80lujS2hP+nBmqxzJbpc
XR7E9eWIXxr4fP4HpRrCA8NxlthEsapVMSHW+lnPBqF2b/Bt2eYyR7gJhtlP6gRG
V57MmgL8BdYAJLvxqxDIxQIDAQABoxUwEzARBglghkgBhvhCAQEEBAMCBkAwDQYJ
KoZIhvcNAQEFBQADgYEAAuYU1nIXTbXtddW+QkLskum7ESryHZonKOCelfn2vnRl
8oAgHg7Hbtg/e6sR/W9m3DObP5DEp3lolKKIKor7ugxtfA4PBtmgizddfDKKMDql
LT+MV5/DP1pjQbxTsaLlZfveNxfLRHkQY13asePy4fYJFOIZ4OojDEGQ6/VQBI8=
-----END CERTIFICATE-----
subject=/C=CU/ST=Cuba/L=Habana/O=DesdeLinux.Fan/OU=Enthusiasts/CN=*.desdelinux.fan/emailAddress=buzz@desdelinux.ανεμιστήρας εκδότης=/C=CU/ST=Κούβα/L=Αβάνα/O=DesdeLinux.Fan/OU=Enthusiasts/CN=*.desdelinux.fan/emailAddress=buzz@desdelinux.fan --- Δεν έχουν σταλεί ονόματα πιστοποιητικού πελάτη CA Κλειδί θερμοκρασίας διακομιστή: ECDH, secp384r1, 384 bit --- Η χειραψία SSL έχει διαβάσει 1342 byte και έχει γράψει 411 byte --- Νέο, TLSv1/SSLv3, Η κρυπτογράφηση είναι ECDHE-RSA-AES256 -Το δημόσιο κλειδί του διακομιστή GCM-SHA384 είναι 1024 bit Ασφαλής επαναδιαπραγμάτευση Υποστηρίζεται Συμπίεση: ΚΑΜΙΑ Επέκταση: ΚΑΝΕΝΑ SSL-Περίοδος: Πρωτόκολλο: TLSv1.2 Κωδικός: ECDHE-RSA-AES256-GCM-SHA384 Session-ID745ID-ID4C : Κύριο κλειδί: 0236204D16234C15B9CEA3F084125AF5989AF5D6C5295F4F2A73FD1904CD204F564BC76361BFF50373E8879F793 Αρ. Ταυτότητα κλειδιού: P7: : Κανένα εισιτήριο συνεδρίας TLS Υπόδειξη διάρκειας ζωής: 7506 (δευτερόλεπτα) Εισιτήριο περιόδου σύνδεσης TLS: 04473777 - 6e 3503a f9 919 1a 837f 67 29-ee f309 a352526 5f fc ec 5e 300c N:.)zOcr...O..~. 0000 - 4c d3 be a8 be 29 7e ae-4 63e 72 7d 6 c4 7 a1 ,.....~.mE... 0010 - db 2a 4 8 df 92b dc 2d-f98 7f 87 a 6 .:.......hn.... 45 - 5 17 e8 eb 0020 b3 a86 80-8 b8 ea f8 1 f68 c6 7 .3......h...r ..y 86 - 0030 08a 35 e5 98 a8 4b da-e98 68a 1 c7 72 bf 7 1d .J(......z).w.". 79 - bd 5c f0040 89 4c a28 3 bd-cb 85 4 8 9a dc 7 29 .\.a.....7'fz.Q( 77 - b22 of 0 bd 0050b 5f d6 ec-d61 e8 1 c14 31 27 b66 7 ..51.+.... ...e ..28 1 - 0060 7 f35 de 2 da ae 0-4 bd f3 b0 e14 8c cf 65 03..H..1........ 35 - f5 5 0070 38 34 b8 48c db-aa ee 31a d90 6b 0c dd 6 .BV.......Z..,.q 9 - 19a f84 1 0080 5 42 c56 13a-88 e0 8f 5c bf dc 7c a1 z..p.. ..b. ....< Χρόνος έναρξης: 2 Χρόνος λήξης: 71 (δευτ.) Επαλήθευση κωδικού επιστροφής: 0090 (αυτο υπογεγραμμένο πιστοποιητικό) ---.
+ ΟΚ Το Dovecot είναι έτοιμο!
Legolas ΧΡΗΣΤΗ
+ ΟΚ
ΠΑΛΙΑ legolas
+ OK Είσοδος.
ΚΑΤΑΛΟΓΟΣ
+ OK 1 μηνύματα: 1 1021.
ΕΠΙΣΤΡΟΦΗ 1
+OK 1021 octets Return-Path: X-Original-To: legolas@desdelinux.ανεμιστήρας Παράδοση-Προς: legolas@desdelinux.fan Λήψη: από το sysadmin.desdelinux.ανεμιστήρας (πύλη [172.16.10.1]) από desdelinux.fan (Postfix) με αναγνωριστικό ESMTP 51886C11E8C0 γιαdesdelinux.fan>; Δευτ., 22 Μαΐου 2017 15:09:11 -0400 (EDT) Αναγνωριστικό μηνύματος: <919362.931369932-sendEmail@sysadmin> Από: "buzz@deslinux.fan" Προς: "legolas@desdelinux.ανεμιστήρας"desdelinux.fan> Θέμα: Γεια σας Ημερομηνία: Δευτ., 22 Μαΐου 2017 19:09:11 +0000 X-Mailer: sendEmail-1.56 MIME-Έκδοση: 1.0 Τύπος περιεχομένου: πολυμερές/σχετικό; boundary="----Οριοθέτης MIME για sendEmail-365707.724894495" Αυτό είναι ένα μήνυμα πολλαπλών τμημάτων σε μορφή MIME. Για να εμφανίσετε σωστά αυτό το μήνυμα χρειάζεστε ένα πρόγραμμα email συμβατό με το MIME-Version 1.0. ------Οριοθέτης MIME για sendEmail-365707.724894495 Τύπος περιεχομένου: κείμενο/απλό; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Χαιρετισμοί Legolas από τον φίλο σας Buzz ------Οριοθέτη MIME για sendEmail-365707.724894495-- .
ΚΑΠΝΙΣΜΑ
+ OK Αποσύνδεση. κλειστό
buzz @ sysadmin: ~ $

Squirrelmail

Squirrelmail είναι ένας πελάτης Ιστού γραμμένος εξ ολοκλήρου σε PHP. Περιλαμβάνει εγγενή υποστήριξη PHP για τα πρωτόκολλα IMAP και SMTP και παρέχει τη μέγιστη συμβατότητα με τα διάφορα προγράμματα περιήγησης που χρησιμοποιούνται. Τρέχει σωστά σε οποιονδήποτε διακομιστή IMAP. Διαθέτει όλες τις λειτουργίες που χρειάζεστε από ένα πρόγραμμα-πελάτη email, συμπεριλαμβανομένης της υποστήριξης MIME, του βιβλίου διευθύνσεων και της διαχείρισης φακέλων.

[root @ linuxbox ~] # yum εγκαταστήστε το squirrelmail
[root @ linuxbox ~] # υπηρεσία επανεκκίνηση httpd

[root @ linuxbox ~] # nano /etc/squirrelmail/config.php
$domain = 'desdelinux.ανεμιστήρας';
$imapServerAddress = 'ταχυδρομείο.desdelinux.ανεμιστήρας';
$ imapPort = 143;
$smtpServerAddress = 'desdelinux.ανεμιστήρας';

[root @ linuxbox ~] # υπηρεσία φόρτωσης httpd

DNS Send Framenwork ή εγγραφή SPF

Στο άρθρο NSD Authoritarian DNS Server + Shorewall Είδαμε ότι η Ζώνη «desdelinuxΤο .fan» διαμορφώθηκε ως εξής:

root@ns:~# nano /etc/nsd/desdelinux.ανεμιστήρας.ζώνη
$ORIGIN desdelinux.ανεμιστήρας. $TTL 3H @ IN SOA αρ.desdelinux.ανεμιστήρας. ρίζα.desdelinux.ανεμιστήρας. (1; σειριακό 1D; ανανέωση 1H; επανάληψη 1W; λήξη 3H); ελάχιστο ή ? Αρνητικός χρόνος αποθήκευσης στην κρυφή μνήμη. @ ΣΕ NS ns.desdelinux.ανεμιστήρας. @ IN MX 10 email.desdelinux.ανεμιστήρας.
@ IN TXT "v=spf1 a:mail.desdelinux.ανεμιστήρας -όλα"
; ; Εγγραφή για επίλυση ερωτημάτων dig desdelinux.fan @ IN A 172.16.10.10 ; ns IN A 172.16.10.30 mail IN CNAME   desdelinux.ανεμιστήρας. chat IN CNAME   desdelinux.ανεμιστήρας. www ΣΕ CNAME   desdelinux.ανεμιστήρας. ; ; Εγγραφές SRV που σχετίζονται με το XMPP
_xmpp-server._tcp ΣΤΟ SRV 0 0 5269 desdelinux.ανεμιστήρας. _xmpp-client._tcp ΣΕ SRV 0 0 5222 desdelinux.ανεμιστήρας. _jabber._tcp ΣΕ SRV 0 0 5269 desdelinux.ανεμιστήρας.

Σε αυτό δηλώνεται το μητρώο:

@ IN TXT "v=spf1 a:mail.desdelinux.ανεμιστήρας -όλα"

Για να έχουμε την ίδια παράμετρο ρυθμισμένη για το δίκτυο SME ή LAN, πρέπει να τροποποιήσουμε το αρχείο διαμόρφωσης Dnsmasq ως εξής:

# Εγγραφές TXT. Μπορούμε επίσης να δηλώσουμε μια εγγραφή SPF txt-record=desdelinux.fan,"v=spf1 a:mail.desdelinux.ανεμιστήρας -όλα"

Στη συνέχεια επανεκκίνηση της υπηρεσίας:

[root @ linuxbox ~] # επανεκκίνηση υπηρεσίας dnsmasq
[root@linuxbox ~]# υπηρεσία dnsmasq status [root@linuxbox ~]# host -t αλληλογραφία TXT.desdelinux.ταχυδρομείο θαυμαστών.desdelinux.fan είναι ένα ψευδώνυμο για desdelinux.ανεμιστήρας.
desdelinux.fan περιγραφικό κείμενο "v=spf1 a:mail.desdelinux.ανεμιστήρας -όλα"

Αυτο-υπογεγραμμένα πιστοποιητικά και Apache ή httpd

Ακόμα κι αν το πρόγραμμα περιήγησής σας σας λέει ότι «Ο κάτοχος του ταχυδρομείο.desdelinux.ανεμιστήρας Έχετε ρυθμίσει σωστά τον ιστότοπό σας. Για να αποφευχθεί η κλοπή των πληροφοριών σας, ο Firefox δεν έχει συνδεθεί σε αυτόν τον ιστότοπο », το πιστοποιητικό που δημιουργήθηκε προηγουμένως ΕΙΝΑΙ ΙΣΧΥΕΙκαι θα επιτρέψει στα διαπιστευτήρια μεταξύ του πελάτη και του διακομιστή να ταξιδεύουν κρυπτογραφημένα, αφού αποδεχτούμε το πιστοποιητικό.

Αν θέλετε και ως τρόπος ενοποίησης των πιστοποιητικών, μπορείτε να δηλώσετε για το Apache τα ίδια πιστοποιητικά που δηλώσατε για το Postfix, το οποίο είναι σωστό.

[root @ linuxbox ~] # nano /etc/httpd/conf.d/ssl.conf
SSLCertificateFile /etc/pki/tls/certs/desdelinux.fan.crt
SSLCertificateKeyFile /etc/pki/tls/private/desdelinux.ανεμιστήρας.κλειδί

[root @ linuxbox ~] # httpd υπηρεσία επανεκκίνηση
[root @ linuxbox ~] # κατάσταση υπηρεσίας httpd

Όμιλος Diffie-Hellman

Το ζήτημα της ασφάλειας γίνεται όλο και πιο δύσκολο κάθε μέρα στο Διαδίκτυο. Μία από τις πιο κοινές επιθέσεις σε συνδέσεις SSL, είναι η αδιέξοδο και για να το υπερασπιστούμε είναι απαραίτητο να προσθέσουμε μη τυπικές παραμέτρους στη διαμόρφωση SSL. Για αυτό υπάρχει το RFC-3526 «Περισσότερα Modular Exponential (MODP) Ο Ντίφι-Χέλμαν ομάδες για ανταλλαγή κλειδιών Διαδικτύου (IKE)".

[root @ linuxbox ~] # cd / etc / pki / tls /
[root @ linuxbox tls] # openssl dhparam -out private / dhparams.pem 2048
[root @ linuxbox tls] # chmod 600 ιδιωτικό / dhparams.pem

Σύμφωνα με την έκδοση του Apache που έχουμε εγκαταστήσει, θα χρησιμοποιήσουμε το Diffie-Helman Group από το αρχείο /etc/pki/tls/dhparams.pem. Εάν πρόκειται για έκδοση 2.4.8 ή μεταγενέστερη, τότε θα πρέπει να προσθέσουμε στο αρχείο /etc/httpd/conf.d/ssl.conf η ακόλουθη γραμμή:

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

Η έκδοση Apache που χρησιμοποιούμε είναι:

[root @ linuxbox tls] # yum info httpd
Φορτωμένα πρόσθετα: ταχύτερος καθρέφτης, langpacks Φόρτωση ταχύτητας καθρέφτη από προσωρινά αποθηκευμένο hostfile Εγκατεστημένα πακέτα Όνομα: httpd Architecture: x86_64
Έκδοση: 2.4.6
Έκδοση: 45.el7.centos Μέγεθος: 9.4 M Αποθήκη: εγκατεστημένο Από αποθετήριο: Base-Repo Περίληψη: Apache HTTP Server URL: http://httpd.apache.org/ Άδεια: ASL 2.0 Περιγραφή: Ο διακομιστής Apache HTTP είναι ένας ισχυρός, αποτελεσματικός και επεκτάσιμος: διακομιστής ιστού.

Καθώς έχουμε μια έκδοση πριν από το 2.4.8, προσθέτουμε στο τέλος του πιστοποιητικού CRT που δημιουργήθηκε προηγουμένως, το περιεχόμενο της ομάδας Diffie-Helman:

[root @ linuxbox tls] # cat private / dhparams.pem >> πιστοποιητικά/desdelinux.fan.crt

Εάν θέλετε να ελέγξετε ότι οι παράμετροι DH προστέθηκαν σωστά στο πιστοποιητικό CRT, εκτελέστε τις ακόλουθες εντολές:

[root @ linuxbox tls] # cat private / dhparams.pem 
----- ΑΡΧΗ ΠΑΡΑΜΕΤΡΕΣ DH -----
MIIBCAKCAQEAnwfWSlirEuMwJft0hgAdB0km9d3qGGiErRXPfeZU+Tqp/ZFOCdzP
/O6NeXuHI4vnsTDWEAjXmpRzq/z1ZEWQa6j+l1PgTgk2XqaMViD/gN+sFPnx2EmV
keVcMDqG03gnmCgO9R4aLYT8uts5T6kBRhvxUcrk9Q7hIpGCzGtdgwaVf1cbvgOe
8kfpc5COh9IxAYahmNt+5pBta0SDlmoDz4Rk/4AFXk2mjpDYoizaYMPeIInGUzOv
/LE6Y7VVRY/BJG9EZ5pVYJPCruPCUHkhvm+r9Tt56slk+HE2d52uFRSDd2FxK3n3
cN1vJ5ogsvmHayWUjVUA18LLfGSxEFsc4wIBAg==
----- ΠΑΡΑΜΕΤΡΟΙ ΤΕΛΟΣ DH -----

[root@linuxbox tls]# πιστοποιητικά γάτας/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==
----- ΠΑΡΑΜΕΤΡΟΙ ΤΕΛΟΣ DH -----

Μετά από αυτές τις αλλαγές, πρέπει να επανεκκινήσουμε τις υπηρεσίες Postfix και httpd:

[root @ linuxbox tls] Επανεκκίνηση # υπηρεσίας μετά την επιδιόρθωση
[root @ linuxbox tls] # κατάσταση μετά την επιδιόρθωση υπηρεσίας
[root @ linuxbox tls] Επανεκκίνηση # υπηρεσίας httpd
[root @ linuxbox tls] # κατάσταση httpd υπηρεσίας

Η συμπερίληψη του Diffie-Helman Group στα πιστοποιητικά TLS μας μπορεί να κάνει τη σύνδεση μέσω HTTPS λίγο πιο αργή, αλλά η προσθήκη ασφάλειας αξίζει τον κόπο.

Έλεγχος του Squirrelmail

ΤΟΤΕ ότι τα πιστοποιητικά έχουν δημιουργηθεί σωστά και ότι ελέγχουμε τη σωστή λειτουργία τους, όπως κάναμε μέσω των εντολών της κονσόλας, δείξτε το πρόγραμμα περιήγησής σας στο URL http://mail.desdelinux.fan/webmail και θα συνδεθεί με τον πελάτη Ιστού αφού αποδεχτεί το αντίστοιχο πιστοποιητικό. Σημειώστε ότι, παρόλο που καθορίζετε το πρωτόκολλο HTTP, θα ανακατευθυνθεί σε HTTPS και αυτό οφείλεται στην προεπιλεγμένη διαμόρφωση που προσφέρει το CentOS για το Squirrelmail. Δείτε το αρχείο /etc/httpd/conf.d/squirrelmail.conf.

Σχετικά με τα γραμματοκιβώτια χρήστη

Το Dovecot δημιουργεί τα γραμματοκιβώτια IMAP στο φάκελο σπίτι κάθε χρήστη:

[root @ linuxbox ~] # ls -la /home/legolas/mail/.imap/
σύνολο 12 drwxrwx ---. 5 legolas mail 4096 22 Μαΐου 12:39. drwx ------. 3 legolas legolas 75 Μαΐου 22 11:34 .. -rw -------. 1 legolas legolas 72 22 Μαΐου 11:34 dovecot.mailbox.log -rw -------. 1 legolas legolas 8 Μαΐου 22:12 dovecot-uidvalidity -r - r - r--. 39 legolas legolas 1 Μαϊ 0 22:10 dovecot-uidvalidity.12f5922d1 drwxrwx ---. 1 legolas mail 2 Μάιος 56 22:10 INBOX drwx ------. 23 legolas legolas 2 Μάιος 56 22:12 Στάλθηκε drwx ------. 39 legolas legolas 2 Μαΐου 30:22 Σκουπίδια

Επίσης αποθηκεύονται στο / var / mail /

[root @ linuxbox ~] # λιγότερα / var / mail / legolas
Από MAILER_DAEMON Δευτ. 22 Μαΐου 10:28:00 2017 Ημερομηνία: Δευτ., 22 Μαΐου 2017 10:28:00 -0400 Από: Εσωτερικά δεδομένα συστήματος αλληλογραφίας Θέμα: ΜΗΝ ΔΙΑΓΡΑΨΕΤΕ ΑΥΤΟ ΤΟ ΜΗΝΥΜΑ -- ΕΣΩΤΕΡΙΚΑ ΔΕΔΟΜΕΝΑ ΦΑΚΕΛΟΥ Αναγνωριστικό μηνύματος: <1495463280@linuxbox> . Δημιουργείται αυτόματα από το λογισμικό συστήματος αλληλογραφίας. Εάν διαγραφεί, σημαντικά δεδομένα φακέλου θα χαθούν και θα δημιουργηθούν εκ νέου με την επαναφορά των δεδομένων στις αρχικές τιμές. Από root@desdelinux.fan Δευτ. 22 Μαΐου 10:47:10 2017 Return-Path:desdelinux.fan> X-Original-Προς: legolas Παράδοση-Προς: legolas@desdelinux.ανεμιστήρας Λήψη: από desdelinux.fan (Postfix, από το userid 0) id 7EA22C11FC57; Δευτ., 22 Μαΐου 2017 10:47:10 -0400 (EDT) Ημερομηνία: Δευτ., 22 Μαΐου 2017 10:47:10 -0400 Προς: legolas@desdelinux.fan Θέμα: Test User-Agent: Heirloom mailx 12.5 7/5/10 MIME-Έκδοση: 1.0 Περιεχόμενο-Τύπος: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Message-Id: <20170522144710.7EA22C11FC57@desdelinux.fan> Από: root@desdelinux.ανεμιστήρας (root) X-UID: 7 Κατάσταση: RO Γεια σας. Αυτό είναι ένα δοκιμαστικό μήνυμα από το buzz@deslinux.fan Δευτ. 22 Μαΐου 10:53:08 2017 Return-Path: X-Original-To: legolas@desdelinux.ανεμιστήρας Παράδοση-Προς: legolas@desdelinux.fan Λήψη: από το sysadmin.desdelinux.ανεμιστήρας (πύλη [172.16.10.1]) από desdelinux.fan (Postfix) με αναγνωριστικό ESMTP C184DC11FC57 γιαdesdelinux.fan>; Δευτ., 22 Μαΐου 2017 10:53:08 -0400 (EDT) Αναγνωριστικό μηνύματος: <739874.219379516-sendEmail@sysadmin> Από: "buzz@deslinux.fan" Προς: "legolas@desdelinux.ανεμιστήρας"desdelinux.fan> Θέμα: Γεια σας Ημερομηνία: Δευτ., 22 Μαΐου 2017 14:53:08 +0000 X-Mailer: sendEmail-1.56 MIME-Έκδοση: 1.0 Τύπος περιεχομένου: πολυμερές/σχετικό; boundary="----Οριοθέτης MIME για sendEmail-794889.899510057
/ var / mail / legolas

Περίληψη miniseries PAM

Εξετάσαμε τον πυρήνα ενός Mailserver και δώσαμε λίγη έμφαση στην ασφάλεια. Ελπίζουμε ότι το άρθρο χρησιμεύει ως σημείο εισόδου σε ένα θέμα τόσο περίπλοκο και ευάλωτο σε λάθη, καθώς είναι η μη αυτόματη εφαρμογή ενός διακομιστή αλληλογραφίας

Χρησιμοποιούμε έλεγχο ταυτότητας τοπικού χρήστη γιατί αν διαβάσουμε το αρχείο σωστά /etc/dovecot/conf.d/10-auth.conf, θα δούμε ότι στο τέλος περιλαμβάνεται -από προεπιλογή- το αρχείο ελέγχου ταυτότητας των χρηστών του συστήματος Συμπεριλάβετε auth-system.conf.ext. Αυτό ακριβώς το αρχείο μας λέει στην κεφαλίδα του ότι:

[root @ linuxbox ~] # λιγότερα /etc/dovecot/conf.d/auth-system.conf.ext
# Έλεγχος ταυτότητας για χρήστες συστήματος. Περιλαμβάνεται από το 10-auth.conf. # # # # Έλεγχος ταυτότητας PAM. Προτιμάται σήμερα από τα περισσότερα συστήματα.
# Το PAM χρησιμοποιείται συνήθως είτε με το userdb passwd είτε το userdb στατικό. # ΘΥΜΗΘΕΙΤΕ: Θα χρειαστεί να δημιουργήσετε το αρχείο /etc/pam.d/dovecot για έλεγχο ταυτότητας PAM #. passdb {driver = pam # [session = yes] [setcred = yes] [fail_show_msg = ναι] [max_requests = ] # [cache_key = ] [ ] #args = dovecot}

Και το άλλο αρχείο υπάρχει /etc/pam.d/dovecot:

[root @ linuxbox ~] # cat /etc/pam.d/dovecot 
#% Απαιτείται PAM-1.0 auth pam_nologin.so auth include password-auth account include password-auth session include password-auth

Τι προσπαθούμε να μεταφέρουμε σχετικά με τον έλεγχο ταυτότητας PAM;

  • Το CentOS, το Debian, το Ubuntu και πολλές άλλες διανομές Linux εγκαθιστούν το Postifx και το Dovecot με την τοπική πιστοποίηση ενεργοποιημένη από προεπιλογή.
  • Πολλά άρθρα στο Διαδίκτυο χρησιμοποιούν το MySQL - και πιο πρόσφατα το MariaDB - για την αποθήκευση χρηστών και άλλων δεδομένων σχετικά με το Mailserver. ΑΛΛΑ αυτοί είναι διακομιστές για χιλιάδες χρήστες, και όχι για ένα κλασικό δίκτυο ΜΜΕ με - ίσως - εκατοντάδες χρήστες.
  • Ο έλεγχος ταυτότητας μέσω PAM είναι απαραίτητος και επαρκής για την παροχή υπηρεσιών δικτύου εφόσον εκτελούνται σε έναν διακομιστή, όπως έχουμε δει σε αυτά τα miniseries.
  • Οι χρήστες που είναι αποθηκευμένοι σε μια βάση δεδομένων LDAP μπορούν να χαρτογραφηθούν σαν να ήταν τοπικοί χρήστες και ο έλεγχος ταυτότητας PAM μπορεί να χρησιμοποιηθεί για την παροχή υπηρεσιών δικτύου από διαφορετικούς διακομιστές Linux που λειτουργούν ως πελάτες LDAP στον κεντρικό διακομιστή ελέγχου ταυτότητας. Με αυτόν τον τρόπο, θα εργαζόμασταν με τα διαπιστευτήρια των χρηστών που είναι αποθηκευμένα στην κεντρική βάση δεδομένων του διακομιστή LDAP και ΔΕΝ θα ήταν απαραίτητο να διατηρηθεί μια βάση δεδομένων με τοπικούς χρήστες.

Μέχρι την επόμενη περιπέτεια!


Αφήστε το σχόλιό σας

Η διεύθυνση email σας δεν θα δημοσιευθεί. Τα υποχρεωτικά πεδία σημειώνονται με *

*

*

  1. Υπεύθυνος για τα δεδομένα: Miguel Ángel Gatón
  2. Σκοπός των δεδομένων: Έλεγχος SPAM, διαχείριση σχολίων.
  3. Νομιμοποίηση: Η συγκατάθεσή σας
  4. Κοινοποίηση των δεδομένων: Τα δεδομένα δεν θα κοινοποιούνται σε τρίτους, εκτός από νομική υποχρέωση.
  5. Αποθήκευση δεδομένων: Βάση δεδομένων που φιλοξενείται από τα δίκτυα Occentus (ΕΕ)
  6. Δικαιώματα: Ανά πάσα στιγμή μπορείτε να περιορίσετε, να ανακτήσετε και να διαγράψετε τις πληροφορίες σας.

  1.   lagarto dijo

    Πιστέψτε με ότι στην πράξη αυτή είναι μια διαδικασία που δίνει σε περισσότερους από έναν sysadmin σοβαρούς πονοκεφάλους, είμαι πεπεισμένος ότι στο μέλλον θα είναι ένας οδηγός αναφοράς για όποιον θέλει να διαχειριστεί τα emails τους, μια πρακτική περίπτωση που γίνεται σε ένα abc κατά την ενσωμάτωση postfix, dovecot, squirrelmail ..

    Ευχαριστώ πολύ για την αξιέπαινη συμβολή σας,

  2.   Darko dijo

    Γιατί να μην χρησιμοποιήσετε το Mailpile, όταν πρόκειται για ασφάλεια, με το PGP; Επίσης, το Roundcube έχει μια πολύ πιο διαισθητική διεπαφή και μπορεί επίσης να ενσωματώσει το PGP.

  3.   Μάρτιν dijo

    Πριν από 3 ημέρες διάβασα την ανάρτηση, ξέρω πώς να σας ευχαριστήσω. Δεν σκοπεύω να εγκαταστήσω έναν διακομιστή αλληλογραφίας, αλλά είναι πάντα χρήσιμο να δούμε τη δημιουργία πιστοποιητικών, χρήσιμων για άλλες εφαρμογές και αυτά τα σεμινάρια σχεδόν δεν λήγουν (ακόμη περισσότερο όταν χρησιμοποιείτε το CentOS).

  4.   Federico dijo

    Manuel Cillero: Ευχαριστούμε που συνδέσατε με και από το ιστολόγιό σας αυτό το άρθρο που αποτελεί τον ελάχιστο πυρήνα ενός διακομιστή αλληλογραφίας που βασίζεται στο Postfix και στο Dovecot.

    Σαύρα: Όπως πάντα, η αξιολόγησή σας είναι πολύ καλή. Ευχαριστώ.

    Darko: Σε σχεδόν όλα τα άρθρα μου, λέω λίγο πολύ ότι "Όλοι εφαρμόζουν τις υπηρεσίες με τα προγράμματα που τους αρέσουν περισσότερο." Ευχαριστώ για το σχόλιο.

    Martin: Σας ευχαριστώ επίσης που διαβάσατε το άρθρο και ελπίζω να σας βοηθήσει στην εργασία σας.

  5.   Ζώδιο Carburus dijo

    Υπέροχο φίλο του άρθρου Federico. Σας ευχαριστώ πολύ για ένα τόσο καλό μάθημα.

  6.   αρχαία dijo

    εξαιρετική αν και θα χρησιμοποιούσα "εικονικούς χρήστες" για να αποφύγω να δημιουργώ έναν χρήστη συστήματος κάθε φορά που προσθέτω ένα email, ευχαριστώ έμαθα πολλά νέα πράγματα και αυτός είναι ο τύπος ανάρτησης που περίμενα

  7.   Γουίλτον Άσεβεντο Ρεντέα dijo

    Καλησπέρα σας,

    Θα ενθαρρύνονταν να κάνουν το ίδιο με το διακομιστή καταλόγου fedora + postifx + dovecot + thunderbird ή outlook.

    Έχω ένα μέρος αλλά έχω κολλήσει, ευχαρίστως θα μοιραστώ το έγγραφο στην κοινότητα @desdelinux

  8.   phico dijo

    Δεν φαντάστηκα ότι θα έφτανε περισσότερες από 3000 επισκέψεις !!!

    Χαιρετισμούς Σαύρα!

  9.   Σκοτάδι dijo

    Εξαιρετικός συνάδελφος σεμιναρίου.
    Θα μπορούσατε να το κάνετε για το Debian 10 με χρήστες ενός Active Directory που είναι τοποθετημένοι στο Samba4 ;;;
    Φαντάζομαι ότι θα ήταν σχεδόν το ίδιο αλλά αλλάζοντας τον τύπο ελέγχου ταυτότητας.
    Η ενότητα που αφιερώνετε στη δημιουργία αυτο-υπογεγραμμένων πιστοποιητικών είναι πολύ ενδιαφέρουσα.