Επιστροφή στο blog

Οδηγός Ρύθμισης Διακομιστή Αλληλογραφίας: Πώς να Χρησιμοποιήσετε τα Postfix, Dovecot, MySQL και SpamAssassin

Οδηγός Ρύθμισης Διακομιστή Αλληλογραφίας: Πώς να Χρησιμοποιήσετε τα Postfix, Dovecot, MySQL και SpamAssassin

Εισαγωγή

Στο Ubuntu 20.04, μπορείτε να χρησιμοποιήσετε εργαλεία όπως Postfix, Dovecot, MySQL, και SpamAssassin για να ρυθμίσετε έναν διακομιστή αλληλογραφίας. Η διαδικασία μπορεί να είναι μπερδεμένη για κάποιον που την επιχειρεί για πρώτη φορά. Αυτός ο οδηγός στοχεύει να απλοποιήσει τη διαδικασία ρύθμισης του διακομιστή αλληλογραφίας για εσάς με αναλυτικά βήματα. Στο τέλος αυτού του οδηγού, θα γνωρίζετε πώς να προσθέτετε εικονικούς τομείς, χρήστες και ψευδώνυμα. Τελικά, θα κάνετε τον εικονικό σας διακομιστή πιο ασφαλή από κέντρα ανεπιθύμητης αλληλογραφίας.

Προαπαιτούμενα

Πριν ξεκινήσετε με τη ρύθμιση του διακομιστή αλληλογραφίας, υπάρχουν ορισμένα προαπαιτούμενα που πρέπει να φροντίσετε. Αρχικά, βεβαιωθείτε ότι ο εικονικός ιδιωτικός σας διακομιστής έχει έναν τομέα που ανακατευθύνει στον διακομιστή σας. Πρέπει επίσης να εγκαταστήσετε και να ρυθμίσετε τη MySQL. Επιπλέον, πρέπει να έχετε έναν χρήστη με δικαιώματα root και να εγκαταστήσετε ένα πιστοποιητικό SSL. Τέλος, βεβαιωθείτε ότι το FQDN  έχει ρυθμιστεί και αναγνωριστεί.

Εάν εγκαταστήσετε τα πακέτα σας ως χρήστης root, θα έχετε όλα τα δικαιώματα. Γι' αυτό το συνιστούμε:

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

Βήμα 1: Εγκατάσταση πακέτων

Θα ξεκινήσουμε μαθαίνοντας πώς να εγκαθιστούμε πακέτα:

Όταν εμφανιστεί η ρύθμιση του Postfix, επιλέξτε το Internet Site:

Mail Server postfix config

Θα ερωτηθείτε για το όνομα System mail. Εδώ, μπορείτε να χρησιμοποιήσετε το FQDN ή τον κύριο τομέα:

postfix configuration 2

Βήμα 2: Δημιουργία βάσης δεδομένων MySQL, εικονικών τομέων, χρηστών και ψευδωνύμων

Στη συνέχεια, μόλις εγκατασταθούν όλα τα πακέτα, θα προχωρήσουμε στη ρύθμιση. Στόχος μας είναι να ρυθμίσουμε τρεις πίνακες. Ένας θα είναι για τους τομείς, ένας για τους χρήστες και ένας για τα ψευδώνυμα. Αυτοί θα στεγάζονται σε μια βάση δεδομένων MySQL που θα δημιουργήσουμε.

Ας υποθέσουμε ότι θέλουμε να ονομάσουμε τη βάση δεδομένων μας servermail. Είστε ελεύθεροι να χρησιμοποιήσετε το όνομα της επιλογής σας. Δείτε πώς θα τη δημιουργήσουμε:

Πρέπει να συνδεθείτε ως χρήστης root της MySQL:

Στη συνέχεια, εισαγάγετε τον κωδικό πρόσβασής σας. Μια επιτυχής προσπάθεια θα εμφανίσει αυτό ως αποτέλεσμα:

Στη συνέχεια, θα δημιουργήσουμε έναν νέο χρήστη ειδικά για τον έλεγχο ταυτότητας αλληλογραφίας. Δώστε την άδεια SELECT ως εξής:

Μετά από αυτό, επαναφορτώστε τα δικαιώματα της MySQL για να εφαρμόσετε τις άδειες με επιτυχία:

Στη συνέχεια, θα χρησιμοποιήσουμε τη βάση δεδομένων μας για να δημιουργήσουμε τους πίνακες και να εισαγάγουμε τα δεδομένα:

Θα δημιουργήσουμε ξεχωριστούς πίνακες για τους συγκεκριμένους τομείς που αναγνωρίζονται ως εξουσιοδοτημένοι τομείς:

Ο στόχος είναι να εισαγάγουμε χρήστες στον πίνακα. Επομένως, θα προσθέσουμε τη σχετική διεύθυνση email και τον κωδικό πρόσβαση. Έχετε υπόψη σας ότι πρέπει να συσχετίσετε κάθε χρήστη με έναν τομέα:

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

Μέχρι το τέλος αυτής της διαδικασίας, θα έχετε δημιουργήσει με επιτυχία τρεις πίνακες. Στη συνέχεια, πρέπει να εισαγάγουμε τα δεδομένα.

  • Εικονικοί Τομείς

Σε αυτήν την ενότητα, θα μάθουμε πώς να εισάγουμε τομείς μέσα στον virtual_domains πίνακα. Συγκεκριμένα, θα εστιάσουμε στο πώς να εισάγουμε τον κύριο τομέα (example.com) και το FQDN (hostname.example.com):

  • Εικονικά Email

Στη συνέχεια, εισαγάγετε τη διεύθυνση email και τους σχετικούς κωδικούς πρόσβασης για καθέναν από τους τομείς. Βεβαιωθείτε ότι όλες οι πληροφορίες έχουν αλλάξει με τις δικές σας συγκεκριμένες πληροφορίες:

  • Εικονικά Ψευδώνυμα

Τώρα μπορείτε να εισαγάγετε τη διεύθυνση email στην οποία θα προωθήσετε την άλλη διεύθυνση email. Η πρώτη είναι η πηγή ενώ η δεύτερη είναι ο προορισμός:

Στη συνέχεια, μπορείτε να βγείτε από τη MySQL:

Βήμα 3: Ρύθμιση του Postfix

Είναι σημαντικό να ρυθμίσετε το Postfix έτσι ώστε να μπορεί να διαχειρίζεται τις συνδέσεις SMTP. Πρέπει επίσης να μπορεί να στέλνει τα μηνύματα για όλους τους χρήστες που έχουν εισαχθεί στη βάση δεδομένων MySQL. Ας ξεκινήσουμε δημιουργώντας ένα αντίγραφο του προεπιλεγμένου αρχείου. Αυτό γίνεται για να μπορείτε εύκολα να επιστρέψετε στην προεπιλεγμένη ρύθμιση εάν και όταν χρειαστεί:

Τώρα ανοίξτε το αρχείο main.cf για να το τροποποιήσετε:

Ξεκινήστε σχολιάζοντας τις παραμέτρους TLS και στη συνέχεια προσθέστε οποιεσδήποτε άλλες παραμέτρους. Στο παράδειγμά μας, χρησιμοποιούμε τα δωρεάν πιστοποιητικά SSL. Μπορείτε, φυσικά, να αλλάξετε τη ρύθμιση ανάλογα με τις απαιτήσεις σας:

Στη συνέχεια, θα προσθέσετε αυτές τις παραμέτρους κάτω από τις ρυθμίσεις TLS:

Μετά από αυτό, πρέπει να σχολιάσουμε τις mydestination προεπιλεγμένες ρυθμίσεις. Στη συνέχεια, θα το αντικαταστήσουμε με localhost. Με αυτήν την αλλαγή, ο VPS θα μπορεί να χρησιμοποιήσει τους εικονικούς τομείς στον πίνακα MySQL:

Τώρα χρησιμοποιήστε αυτήν την εντολή για να επαληθεύσετε ότι η παράμετρος myhostname έχει οριστεί στο FQDN σας:

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

Τέλος, θα προσθέσουμε τις ακόλουθες παραμέτρους προκειμένου να πούμε στο Postfix να διαμορφώσει τους εικονικούς τομείς, τους χρήστες και τα ψευδώνυμα:

Για να βεβαιωθείτε ότι δεν υπάρχουν σφάλματα, συγκρίνετε αυτές τις αλλαγές με το ακόλουθο αρχείο:

https://www.dropbox.com/s/x9fpm9v1dr86gkw/etc-postfix-main.cf.txt

Μόλις ελεγχθούν όλα αυτά, θα δημιουργήσετε τρία αρχεία για να τα προσαρτήσετε στο αρχείο main.cf. Ο στόχος εδώ είναι να δώσουμε οδηγίες στο Postfix για το πώς να συνδεθεί με τη MySQL. Για να το κάνουμε αυτό, θα ξεκινήσουμε δημιουργώντας το αρχείο mysql-virtual-mailbox-domains.cf αρχείο. Φυσικά, στο αρχείο σας, θα κάνετε αλλαγές σύμφωνα με την προσωπική σας διαμόρφωση:

Στη συνέχεια, επανεκκινήστε το Postfix:

Πρέπει να βεβαιωθείτε ότι το Postfix είναι σε θέση να βρει τον τομέα σας. Για να το δοκιμάσετε αυτό, χρησιμοποιήστε αυτήν την εντολή:

Η εντολή θα επιστρέψει 1 εάν είναι επιτυχής. Σε αυτήν την περίπτωση, μπορείτε να προχωρήσετε δημιουργώντας το αρχείο mysql-virtual-mailbox-maps.cf αρχείο:

Επανεκκινήστε το Postfix άλλη μια φορά:

Και πάλι, θα βεβαιωθούμε ότι το Postfix είναι σε θέση να βρει την πρώτη διεύθυνση email. Για να το δοκιμάσετε αυτό, χρησιμοποιήστε την ακόλουθη εντολή:

Εάν είναι επιτυχής, θα λάβετε ως αποτέλεσμα την τιμή 1. Ως εκ τούτου, θα προχωρήσουμε στη δημιουργία του τελευταίου αρχείου:

Αυτό ολοκληρώνει τη ρύθμιση παραμέτρων μεταξύ Postfix και MySQL. Επανεκκινήστε το Postfix για να εφαρμοστεί:

Για να επιβεβαιώσετε ότι το Postfix βρίσκει πράγματι τα ψευδώνυμά σας, χρησιμοποιήστε αυτήν την εντολή:

Ιδανικά θα πρέπει να λάβετε το μήνυμα ηλεκτρονικού ταχυδρομείου που προωθείται στο ψευδώνυμο ως έξοδο. Μπορείτε επίσης να τροποποιήσετε το /etc/postfix/master.cf αρχείο έτσι αν θέλετε να συνδέσετε τη θύρα 587 με πελάτες ηλεκτρονικού ταχυδρομείου με ασφάλεια:

Δείτε πώς μπορείτε να καταργήσετε τα σχόλια από ορισμένες γραμμές και να προσθέσετε παραμέτρους:

Μερικές φορές, ίσως χρειαστεί να επανεκκινήσετε το Postfix για να επιβεβαιώσετε ότι η θύρα είναι ανοιχτή:

Αυτό το εργαλείο μπορεί να χρησιμοποιηθεί επίσης για τη σάρωση των θυρών του τομέα. Μπορείτε να το χρησιμοποιήσετε για να επαληθεύσετε ότι οι θύρες 25 και 587 είναι ανοιχτές.

Βήμα 4: Ρύθμιση παραμέτρων του Dovecot

Τώρα είναι η ώρα να ρυθμίσετε το Dovecot. Για αυτήν την ενότητα, θα πρέπει να αντιγράψουμε τα 7 αρχεία που θέλετε να τροποποιήσετε. Αυτό γίνεται για να διασφαλιστεί ότι μπορείτε να επαναφέρετε τις αλλαγές εάν χρειαστεί. Εισαγάγετε αυτές τις εντολές μία προς μία:

Πρέπει να επεξεργαστείτε το αρχείο ρυθμίσεων από το Dovecot:

Βεβαιωθείτε ότι η επιλογή είναι χωρίς σχόλιο:

Στη συνέχεια, θα ενεργοποιήσουμε τα πρωτόκολλα κάτω από τη γραμμή !include_try /usr/share/dovecot/protocols.d/*.protocol . Αν θέλετε, μπορείτε επίσης να προσθέσετε pop3:

Για να βεβαιωθείτε ότι δεν υπάρχουν λάθη, συγκρίνετέ το με αυτό το αρχείο:

https://www.dropbox.com/s/wmbe3bwy0vcficj/etc-dovecot-dovecot.conf.txt

Στη συνέχεια, επεξεργαστείτε το αρχείο επιβεβαίωσης αλληλογραφίας:

Εντοπίστε τη γραμμή mail_location . Πρέπει να καταργήσετε τα σχόλια και να προσθέσετε αυτήν την παράμετρο:

Μετά από αυτό, εντοπίστε τη γραμμή mail_privileged_group . Και πάλι, καταργήστε τα σχόλια και προσθέστε την παράμετρο mail:

Για να εξαλείψετε κάθε πιθανότητα σφαλμάτων, συγκρίνετέ το με αυτό το αρχείο:

https://www.dropbox.com/s/hnfeieuy77m5b0a/etc.dovecot.conf.d-10-mail.conf.txt

  • Επαλήθευση δικαιωμάτων

Για να επαληθεύσετε τα δικαιώματα, χρησιμοποιήστε αυτήν την εντολή:

Βεβαιωθείτε ότι τα δικαιώματά σας εμφανίζονται όπως τα ακόλουθα:

Μπορείτε να δημιουργήσετε έναν φάκελο για κάθε τομέα. Όλοι αυτοί οι φάκελοι θα καταχωρηθούν στον πίνακα MySQL:

Δημιουργήστε έναν χρήστη και μια ομάδα vmail χρησιμοποιώντας ένα αναγνωριστικό (id) 5000:

Στη συνέχεια, πρέπει να αλλάξετε τον ιδιοκτήτη του /var/mail φακέλου στον χρήστη vmail:

Τώρα επεξεργαστείτε το /etc/dovecot/conf.d/10-auth.conf αρχείο:

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

Χρησιμοποιήστε αυτό για να τροποποιήσετε την παράμετρο auth_mechanisms :

Τώρα σχολιάστε αυτή τη γραμμή:

Για να ενεργοποιήσετε την εξουσιοδότηση MySQL, πρέπει να αφαιρέσετε το σχόλιο από την ακόλουθη γραμμή:

Για να εντοπίσετε και να διορθώσετε λάθη, χρησιμοποιήστε το ακόλουθο αρχείο:

https://www.dropbox.com/s/4h472nqrj700pqk/etc.dovecot.conf.d.10-auth.conf.txt

Δημιουργώντας ένα αρχείο /etc/dovecot/dovecot-sql.conf.ext με τις πληροφορίες σας θα σας επιτρέψει να συνδεθείτε:

Εισαγάγετε αυτόν τον κώδικα στο αρχείο:

Θα χρησιμοποιήσουμε τις προσαρμοσμένες πληροφορίες MySQL μας για να τροποποιήσουμε το αρχείο /etc/dovecot/dovecot-sql.conf.ext αρχείο:

Ορίστε τη MySQL ως παράμετρο αφού αφαιρέσετε το σχόλιο από την παράμετρο driver, ως εξής:

Μπορείτε να εισαγάγετε τις συγκεκριμένες πληροφορίες MySQL αφαιρώντας το σχόλιο από τη γραμμή connect :

Now you have to uncomment the default_pass_scheme και να την αλλάξετε σε SHA-512:

Προσθέστε τις ακόλουθες πληροφορίες αφού αφαιρέσετε το σχόλιο από το password_query:

Για να εντοπίσετε σφάλματα, χρησιμοποιήστε αυτό το αρχείο για σύγκριση:

https://www.dropbox.com/s/48a5r0mtgdz25cz/etc.dovecot.dovecot-sql.conf.ext.txt

Στη συνέχεια, μπορείτε να αλλάξετε τον ιδιοκτήτη και την ομάδα του φακέλου dovecot στον χρήστη vmail:

Το επόμενο βήμα είναι να τροποποιήσετε το αρχείο /etc/dovecot/conf.d/10-master.conf . Πρέπει να είστε ιδιαίτερα προσεκτικοί εδώ καθώς θα αλλάξουν διάφορες παράμετροι:

Χρησιμοποιήστε τον ακόλουθο κώδικα για να αλλάξετε την παράμετρο unix_listener σε service_auth:

Στη συνέχεια, πρέπει να επεξεργαστείτε το service auth-worker ως εξής:

Εντοπίστε σφάλματα συγκρίνοντας με αυτό το αρχείο:

https://www.dropbox.com/s/g0vnt233obh6v2h/etc.dovecot.conf.d.10-master.conf.txt

Το επόμενο βήμα είναι να τροποποιήσουμε το αρχείο ρυθμίσεων SSL από το Dovecot. Εάν σχεδιάζετε να χρησιμοποιήσετε την προεπιλεγμένη επιβεβαίωση, τότε μπορείτε να παρακάμψετε αυτό το βήμα και να μεταβείτε στην επόμενη ενότητα:

Στη συνέχεια, αλλάξτε την παράμετρο ssl σε required ως εξής:

Θα τροποποιήσουμε επίσης τη διαδρομή και για τα δύο ssl_cert και ssl_key:

Επανεκκινήστε το Dovecot:

Βεβαιωθείτε ότι έχετε ελέγξει ότι η θύρα 993 είναι ανοιχτή. Εάν έχετε ενεργοποιήσει το pop3, τότε ελέγξτε επίσης τη θύρα 995:

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

Η θύρα 993 χρησιμοποιείται για ασφαλές IMAP και η θύρα 587/θύρα 25 για SMTP.

Βήμα 5: Ρύθμιση του SpamAssassin

Φτάσαμε επιτέλους στην τελευταία ενότητα του οδηγού, όπου θα ρυθμίσουμε το SpamAssassin. Θα ξεκινήσουμε εγκαθιστώντας το SpamAssassin:

Δημιουργήστε έναν χρήστη για το SpamAssassin ως εξής:

Πρέπει να ανοίξετε και να τροποποιήσετε τις ρυθμίσεις παραμέτρων για να μπορέσετε να ρυθμίσετε το SpamAssassin:

Τώρα που βρίσκεστε εδώ, πρέπει να αλλάξετε την παράμετρο ENABLED για να ενεργοποιήσετε τον δαίμονα SpamAssassin:

Τροποποιήστε τις παραμέτρους home και options με αυτόν τον κώδικα:

Χρησιμοποιήστε αυτή τη γραμμή για να καθορίσετε την παράμετρο PID_File :

Στη συνέχεια, χρησιμοποιήστε αυτήν την εντολή για να υποδείξετε ότι οι κανόνες του SpamAssassin θα ενημερώνονται αυτόματα:

Ελέγξτε για σφάλματα συγκρίνοντας με το ακόλουθο έγγραφο:

https://www.dropbox.com/s/ndvpgc2jipdd4bk/etc.default.spamassassin.txt

Εάν θέλετε να ρυθμίσετε τους κανόνες κατά της ανεπιθύμητης αλληλογραφίας, τότε πρέπει να ανοίξετε το αρχείο /etc/spamassassin/local.cf ξανά:

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

Μόλις οριστούν οι κανόνες κατά της ανεπιθύμητης αλληλογραφίας, πρέπει να ενημερώσετε το Postfix ότι κάθε email πρέπει να ελέγχεται με το SpamAssassin. Για το σκοπό αυτό, πρέπει να τροποποιήσουμε το /etc/postfix/master.cf αρχείο:

Βρείτε την ακόλουθη γραμμή και προσθέστε το spamassassin φίλτρο:

Τώρα μπορείτε να προσθέσετε αυτές τις παραμέτρους:

Τέλος, εκκινήστε το SpamAssassin και επανεκκινήστε το Postfix για να εφαρμόσετε τις αλλαγές. Όταν κάνετε επανεκκίνηση, το Postfix θα αρχίσει να ελέγχει για ανεπιθύμητη αλληλογραφία από τα email:

Και αυτό είναι όλο! Ρυθμίσατε με επιτυχία τον διακομιστή αλληλογραφίας σας με το Postfix και το Dovecot. Πραγματοποιήσατε επίσης έλεγχο ταυτότητας MySQL και ρυθμίσατε το φιλτράρισμα ανεπιθύμητης αλληλογραφίας με το SpamAssassin.

Συμπέρασμα

Αυτός ο οδηγός περιγράφει τα βήματα που πρέπει να ακολουθήσετε για να πραγματοποιήσετε τη ρύθμιση του διακομιστή αλληλογραφίας σας με τα προαναφερθέντα εργαλεία. Θα μπορούσε να χρησιμοποιηθεί ως ένας ολοκληρωμένος οδηγός για να εγκαταστήσετε τον διακομιστή αλληλογραφίας σας ανεξάρτητα. Εάν ενδιαφέρεστε για τη χρήση της λειτουργίας διακομιστή SMTP της Google, ακολουθήστε αυτόν τον οδηγό.

Καλή συνέχεια!

author

Pranay Kapgate

Συγγραφέας · CloudSigma

Ο Preslav Dobrev είναι Δημιουργικός Σχεδιαστής στην CloudSigma, με εστίαση στη συνεπή επιχειρηματική ταυτότητα μέσω παραδοσιακών και καινοτόμων καναλιών μάρκετινγκ. Διαθέτει την ικανότητα να συνδυάζει το καλλιτεχνικό όραμα με το στρατηγικό μάρκετινγκ για τη δημιουργία εντυπωσιακών αφηγήσεων επωνυμίας.

Σχόλια

Δεν υπάρχουν σχόλια ακόμα. Γράψτε το πρώτο.