Τρόπος ρύθμισης του διακομιστή αλληλογραφίας Postfix (SMTP) χρησιμοποιώντας τη διαμόρφωση null-client - Μέρος 9


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

Η παρακάτω εικόνα απεικονίζει τη διαδικασία μεταφοράς email ξεκινώντας από τον αποστολέα μέχρι το μήνυμα να φτάσει στα εισερχόμενα του παραλήπτη:

Για να γίνει αυτό δυνατό, πολλά πράγματα συμβαίνουν στα παρασκήνια. Για να παραδοθεί ένα μήνυμα ηλεκτρονικού ταχυδρομείου από μια εφαρμογή πελάτη (όπως το Thunderbird, το Outlook ή υπηρεσίες webmail όπως το Gmail ή το Yahoo! Mail) σε έναν διακομιστή αλληλογραφίας, και από εκεί στον διακομιστή προορισμού και, τέλος, στον προβλεπόμενο παραλήπτη, πρέπει να υπάρχει μια υπηρεσία SMTP (Πρωτόκολλο απλής μεταφοράς αλληλογραφίας) σε κάθε διακομιστή.

Αυτός είναι ο λόγος για τον οποίο σε αυτό το άρθρο θα εξηγήσουμε πώς να ρυθμίσετε έναν διακομιστή SMTP στο RHEL 7 όπου προωθούνται μηνύματα ηλεκτρονικού ταχυδρομείου που αποστέλλονται από τοπικούς χρήστες (ακόμη και σε άλλους τοπικούς χρήστες) σε κεντρικό διακομιστή αλληλογραφίας για ευκολότερη πρόσβαση.

Στις απαιτήσεις της εξέτασης αυτό ονομάζεται ρύθμιση null-client.

Το περιβάλλον δοκιμής μας θα αποτελείται από έναν αρχικό διακομιστή αλληλογραφίας και έναν κεντρικό διακομιστή αλληλογραφίας ή αναμεταδότη.

Original Mail Server: (hostname: box1.mydomain.com / IP: 192.168.0.18) 
Central Mail Server: (hostname: mail.mydomain.com / IP: 192.168.0.20)

Για την ανάλυση ονόματος θα χρησιμοποιήσουμε το γνωστό αρχείο /etc/hosts και στα δύο πλαίσια:

192.168.0.18    box1.mydomain.com       box1
192.168.0.20    mail.mydomain.com       mail

Εγκατάσταση Postfix και Firewall/SELinux Considerations

Για να ξεκινήσουμε, θα χρειαστεί (και στους δύο διακομιστές):

1. Εγκαταστήστε το Postfix:

# yum update && yum install postfix

2. Ξεκινήστε την υπηρεσία και ενεργοποιήστε την να εκτελείται σε μελλοντικές επανεκκινήσεις:

# systemctl start postfix
# systemctl enable postfix

3. Να επιτρέπεται η κυκλοφορία αλληλογραφίας μέσω του τείχους προστασίας:

# firewall-cmd --permanent --add-service=smtp
# firewall-cmd --add-service=smtp

4. Διαμορφώστε το Postfix στο box1.mydomain.com.

Το κύριο αρχείο διαμόρφωσης του Postfix βρίσκεται στη διεύθυνση /etc/postfix/main.cf. Αυτό το ίδιο το αρχείο είναι μια εξαιρετική πηγή τεκμηρίωσης καθώς τα σχόλια που περιλαμβάνονται εξηγούν τον σκοπό των ρυθμίσεων του προγράμματος.

Για συντομία, ας εμφανίσουμε μόνο τις γραμμές που πρέπει να επεξεργαστούν (ναι, πρέπει να αφήσετε το mydestination κενό στον αρχικό διακομιστή· διαφορετικά τα μηνύματα ηλεκτρονικού ταχυδρομείου θα αποθηκευτούν τοπικά σε αντίθεση με έναν κεντρικό διακομιστή αλληλογραφίας που είναι αυτό που πραγματικά θέλουμε):

myhostname = box1.mydomain.com
mydomain = mydomain.com
myorigin = $mydomain
inet_interfaces = loopback-only
mydestination =
relayhost = 192.168.0.20

5. Διαμορφώστε το Postfix στο mail.mydomain.com.

myhostname = mail.mydomain.com
mydomain = mydomain.com
myorigin = $mydomain
inet_interfaces = all
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
mynetworks = 192.168.0.0/24, 127.0.0.0/8

Και ορίστε το σχετικό boolean SELinux σε true μόνιμα, εάν δεν το έχετε κάνει ήδη:

# setsebool -P allow_postfix_local_write_mail_spool on

Το παραπάνω boolean SELinux θα επιτρέψει στο Postfix να γράφει στην ουρά αλληλογραφίας στον κεντρικό διακομιστή.

5. Επανεκκινήστε την υπηρεσία και στους δύο διακομιστές για να τεθούν σε ισχύ οι αλλαγές:

# systemctl restart postfix

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

# systemctl –l status postfix
# journalctl –xn
# postconf –n

Δοκιμή των διακομιστών αλληλογραφίας Postfix

Για να δοκιμάσετε τους διακομιστές αλληλογραφίας, μπορείτε να χρησιμοποιήσετε οποιονδήποτε Mail User Agent (συνήθως γνωστός ως MUA για συντομία), όπως mail ή mutt.

Επειδή το mutt είναι προσωπικό αγαπημένο, θα το χρησιμοποιήσω στο box1 για να στείλω ένα μήνυμα ηλεκτρονικού ταχυδρομείου στον χρήστη tecmint χρησιμοποιώντας ένα υπάρχον αρχείο (mailbody .txt) ως σώμα μηνύματος:

# mutt -s "Part 9-RHCE series"  < mailbody.txt

Τώρα μεταβείτε στον κεντρικό διακομιστή αλληλογραφίας (mail.mydomain.com), συνδεθείτε ως χρήστης tecmint και ελέγξτε εάν το email ελήφθη:

# su – tecmint
# mail

Εάν το μήνυμα ηλεκτρονικού ταχυδρομείου δεν ελήφθη, ελέγξτε το κύλινδρο αλληλογραφίας του root για προειδοποίηση ή ειδοποίηση σφάλματος. Μπορεί επίσης να θέλετε να βεβαιωθείτε ότι η υπηρεσία SMTP εκτελείται και στους δύο διακομιστές και ότι η θύρα 25 είναι ανοιχτή στον κεντρικό διακομιστή αλληλογραφίας χρησιμοποιώντας την εντολή nmap:

# nmap -PN 192.168.0.20

Περίληψη

Η ρύθμιση ενός διακομιστή αλληλογραφίας και ενός κεντρικού υπολογιστή αναμετάδοσης όπως φαίνεται σε αυτό το άρθρο είναι μια βασική ικανότητα που πρέπει να έχει κάθε διαχειριστής συστήματος και αποτελεί τη βάση για την κατανόηση και την εγκατάσταση ενός πιο περίπλοκου σενάριο όπως ένας διακομιστής αλληλογραφίας που φιλοξενεί έναν ζωντανό τομέα για πολλούς (ακόμη και εκατοντάδες ή χιλιάδες) λογαριασμούς email.

(Λάβετε υπόψη ότι αυτό το είδος εγκατάστασης απαιτεί διακομιστή DNS, ο οποίος δεν εμπίπτει στο πεδίο εφαρμογής αυτού του οδηγού), αλλά μπορείτε να χρησιμοποιήσετε το ακόλουθο άρθρο για να ρυθμίσετε τον Διακομιστή DNS:

  1. Ρύθμιση διακομιστή DNS μόνο στην προσωρινή μνήμη σε CentOS/RHEL 07

Τέλος, σας συνιστώ ανεπιφύλακτα να εξοικειωθείτε με το αρχείο διαμόρφωσης του Postfix (main.cf) και τη σελίδα Man του προγράμματος. Εάν έχετε αμφιβολίες, μη διστάσετε να μας στείλετε μια γραμμή χρησιμοποιώντας την παρακάτω φόρμα ή χρησιμοποιώντας το φόρουμ μας, Linuxsay.com, όπου θα λάβετε σχεδόν άμεση βοήθεια από ειδικούς του Linux από όλο τον κόσμο.