Android

Εγκαταστήστε και να ενσωματώσετε το rspamd

Προσθήκη πενταόροφου κτιρίου νοσηλευτικών μονάδων (L)

Προσθήκη πενταόροφου κτιρίου νοσηλευτικών μονάδων (L)

Πίνακας περιεχομένων:

Anonim

Αυτό είναι το τρίτο μέρος της ρύθμισης και διαμόρφωσης ενός διακομιστή αλληλογραφίας. Σε αυτό το σεμινάριο θα περάσουμε από την εγκατάσταση και τη διαμόρφωση του συστήματος φιλτραρίσματος ανεπιθύμητων μηνυμάτων Rspamd και την ενσωμάτωσή του στο διακομιστή αλληλογραφίας μας, δημιουργώντας αρχεία DKIM και DMARC DNS.

Μπορείτε να ρωτήσετε γιατί επιλέγουμε να πάμε με το Rspamd και όχι με το Spamassassin. Το Rspamd διατηρείται πιο ενεργά και γράφεται στο C και είναι πολύ πιο γρήγορα από το Spamassassin το οποίο είναι γραμμένο στο Perl. Ένας άλλος λόγος είναι ότι το Rspamd συνοδεύεται από μια υπομονάδα υπογραφής DKIM, οπότε δεν θα χρειαστεί να χρησιμοποιήσουμε άλλο λογισμικό για να υπογράψουμε τα εξερχόμενα μηνύματα ηλεκτρονικού ταχυδρομείου.

Προϋποθέσεις

Πριν συνεχίσετε με αυτό το σεμινάριο, βεβαιωθείτε ότι έχετε συνδεθεί ως χρήστης με δικαιώματα sudo.

Εγκαταστήστε το Redis

Το Redis θα χρησιμοποιηθεί ως σύστημα αποθήκευσης και προσωρινής αποθήκευσης από την Rspamd, για να το εγκαταστήσει μόνο τρέχει:

sudo apt install redis-server

Εγκατάσταση χωρίς σύνδεση

Χωρίς περιορισμούς είναι ένας πολύ ασφαλής επικύρωση, επαναληπτικός και προσωρινός ανιχνευτής DNS.

Ο κύριος σκοπός της εγκατάστασης αυτής της υπηρεσίας είναι να μειώσει τον αριθμό των εξωτερικών αιτήσεων DNS. Αυτό το βήμα είναι προαιρετικό και μπορεί να παραλειφθεί.

sudo apt update sudo apt install unbound

Οι προεπιλεγμένες ρυθμίσεις Unbound πρέπει να είναι αρκετές για τους περισσότερους διακομιστές.

Για να ορίσετε μη συνδεδεμένο ως κύριο διαχωριστή DNS του διακομιστή σας, εκτελέστε τις ακόλουθες εντολές:

sudo echo "nameserver 127.0.0.1" >> /etc/resolvconf/resolv.conf.d/head sudo resolvconf -u sudo echo "nameserver 127.0.0.1" >> /etc/resolvconf/resolv.conf.d/head sudo resolvconf -u Εάν δεν χρησιμοποιείτε το resolvconf τότε θα πρέπει να επεξεργαστείτε το αρχείο /etc/resolv.conf με μη αυτόματο τρόπο.

Εγκαταστήστε το Rspamd

Θα εγκαταστήσουμε την πιο πρόσφατη σταθερή έκδοση του Rspamd από το επίσημο αποθετήριο.

Ξεκινήστε με την εγκατάσταση των απαραίτητων πακέτων:

sudo apt install software-properties-common lsb-release sudo apt install lsb-release wget

Προσθέστε το κλειδί GPG του αποθετηρίου στο keyring πηγών apt χρησιμοποιώντας την ακόλουθη εντολή wget:

wget -O- https://rspamd.com/apt-stable/gpg.key | sudo apt-key add -

Ενεργοποιήστε το αποθετήριο Rspamd εκτελώντας:

echo "deb http://rspamd.com/apt-stable/ $(lsb_release -cs) main" | sudo tee -a /etc/apt/sources.list.d/rspamd.list

Αφού ενεργοποιηθεί το αποθετήριο, ενημερώστε το ευρετήριο πακέτων και εγκαταστήστε το Rspamd χρησιμοποιώντας τις ακόλουθες εντολές:

sudo apt update sudo apt install rspamd

Ρύθμιση παραμέτρων Rspamd

Αντί να τροποποιήσουμε τα αρχεία ρυθμίσεων αποθέματος, θα δημιουργήσουμε νέα αρχεία στον κατάλογο /etc/rspamd/local.d/local.d/ , ο οποίος θα αντικαταστήσει την προεπιλεγμένη ρύθμιση.

Από προεπιλογή ο normal worker του Rspamd ο εργαζόμενος που σαρώνει τα μηνύματα ηλεκτρονικού ταχυδρομείου ακούει σε όλες τις διεπαφές στη θύρα 11333. Δημιουργήστε το ακόλουθο αρχείο για να διαμορφώσετε τον κανονικό εργάτη του Rspamd για να ακούσετε μόνο τη διεπαφή localhost:

/etc/rspamd/local.d/worker-normal.inc

bind_socket = "127.0.0.1:11333";

Ο proxy worker ακούει στη θύρα 11332 και υποστηρίζει πρωτόκολλο. Για να μπορέσει η Postfix να επικοινωνήσει με το Rspamd πρέπει να ενεργοποιήσουμε τη λειτουργία milter:

/etc/rspamd/local.d/worker-proxy.inc

bind_socket = "127.0.0.1:11332"; milter = yes; timeout = 120s; upstream "local" { default = yes; self_scan = yes; }

Στη συνέχεια, πρέπει να ρυθμίσουμε έναν κωδικό πρόσβασης για τον διακομιστή του controller worker οποίος παρέχει πρόσβαση στη διεπαφή ιστού Rspamd. Για να δημιουργήσετε κρυπτογραφημένο κωδικό πρόσβασης:

rspamadm pw --encrypt -p P4ssvv0rD

Η έξοδος θα πρέπει να φαίνεται κάπως έτσι:

$2$khz7u8nxgggsfay3qta7ousbnmi1skew$zdat4nsm7nd3ctmiigx9kjyo837hcjodn1bob5jaxt7xpkieoctb Μην ξεχάσετε να αλλάξετε τον κωδικό πρόσβασης ( P4ssvv0rD ) σε κάτι πιο ασφαλές.

Αντιγράψτε τον κωδικό πρόσβασης από το τερματικό σας και επικολλήστε τον στο αρχείο ρυθμίσεων:

/etc/rspamd/local.d/worker-controller.inc

password = "$2$khz7u8nxgggsfay3qta7ousbnmi1skew$zdat4nsm7nd3ctmiigx9kjyo837hcjodn1bob5jaxt7xpkieoctb";

Αργότερα θα ρυθμίσουμε το Nginx ως αντίστροφη μεσολάβηση στον διακομιστή web controller για να μπορέσουμε να έχουμε πρόσβαση στην διεπαφή ιστού Rspamd.

Ορίστε τον Redis ως ένα backend για τα στατιστικά στοιχεία Rspamd προσθέτοντας τις ακόλουθες γραμμές στο αρχείο classifier-bayes.conf :

/etc/rspamd/local.d/classifier-bayes.conf

servers = "127.0.0.1"; backend = "redis";

Ανοίξτε το αρχείο milter_headers.conf και ορίστε τις κεφαλίδες milter_headers.conf :

/etc/rspamd/local.d/milter_headers.conf

use =;

Μπορείτε να βρείτε περισσότερες πληροφορίες σχετικά με τις κεφαλίδες σμίκρυνσης εδώ.

Τέλος, ξεκινήστε πάλι την υπηρεσία Rspamd για να εφαρμοστούν οι αλλαγές:

sudo systemctl restart rspamd

Διαμορφώστε το Nginx

Στο πρώτο μέρος αυτής της σειράς, δημιουργήσαμε ένα μπλοκ διακομιστή Nginx για την περίπτωση PostfixAdmin.

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

/etc/nginx/sites-enabled/mail.linuxize.com.conf

… location /rspamd { proxy_pass http://127.0.0.1:11334/; proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; }…

Επαναφόρτωση της υπηρεσίας Nginx για να εφαρμοστούν οι αλλαγές:

sudo systemctl reload nginx

Προχωρήστε στο https://mail.linuxize.com/rspamd/ , πληκτρολογήστε τον κωδικό πρόσβασης που δημιουργήσατε προηγουμένως χρησιμοποιώντας την εντολή rspamadm pw και θα παρουσιαστεί με τη διεπαφή ιστού Rspamd.

Ρύθμιση Postfix

Πρέπει να ρυθμίσουμε το Postfix για να χρησιμοποιήσουμε τον αλεξιπτωτιστή Rspamd.

Εκτελέστε την ακόλουθη εντολή για να ενημερώσετε το κύριο αρχείο διαμόρφωσης του Postfix:

sudo postconf -e "milter_protocol = 6" sudo postconf -e "milter_mail_macros = i {mail_addr} {client_addr} {client_name} {auth_authen}" sudo postconf -e "milter_default_action = accept" sudo postconf -e "smtpd_milters = inet:127.0.0.1:11332" sudo postconf -e "non_smtpd_milters = inet:127.0.0.1:11332"

Επανεκκινήστε την υπηρεσία Postfix για να εφαρμοστούν οι αλλαγές:

sudo systemctl restart postfix

Ρύθμιση του περιστεριού

Έχουμε ήδη εγκαταστήσει και διαμορφώσει το Dovecot στο δεύτερο μέρος αυτής της σειράς και τώρα θα εγκαταστήσουμε τη μονάδα φίλτρου sieve και θα ενσωματώσουμε το Dovecot με το Rspamd.

Ξεκινήστε εγκαθιστώντας τη μονάδα φιλτραρίσματος Dovecot:

sudo apt install dovecot-sieve dovecot-managesieved

Μόλις εγκατασταθούν τα πακέτα ανοίξτε τα ακόλουθα αρχεία και επεξεργαστείτε τις γραμμές που επισημαίνονται με κίτρινο χρώμα.

/etc/dovecot/conf.d/20-lmtp.conf

… protocol lmtp { postmaster_address = [email protected] mail_plugins = $mail_plugins sieve }… /etc/dovecot/conf.d/20-imap.conf

… protocol imap {… mail_plugins = $mail_plugins imap_quota imap_sieve… }… /etc/dovecot/conf.d/20-managesieve.conf

… service managesieve-login { inet_listener sieve { port = 4190 }… }… service managesieve { process_limit = 1024 }… /etc/dovecot/conf.d/90-sieve.conf

plugin {… # sieve = file:~/sieve;active=~/.dovecot.sieve sieve_plugins = sieve_imapsieve sieve_extprograms sieve_before = /var/mail/vmail/sieve/global/spam-global.sieve sieve = file:/var/mail/vmail/sieve/%d/%n/scripts;active=/var/mail/vmail/sieve/%d/%n/active-script.sieve imapsieve_mailbox1_name = Spam imapsieve_mailbox1_causes = COPY imapsieve_mailbox1_before = file:/var/mail/vmail/sieve/global/report-spam.sieve imapsieve_mailbox2_name = * imapsieve_mailbox2_from = Spam imapsieve_mailbox2_causes = COPY imapsieve_mailbox2_before = file:/var/mail/vmail/sieve/global/report-ham.sieve sieve_pipe_bin_dir = /usr/bin sieve_global_extensions = +vnd.dovecot.pipe…. }

Αποθηκεύστε και κλείστε τα αρχεία.

Δημιουργήστε έναν κατάλογο για τα script scripts:

mkdir -p /var/mail/vmail/sieve/global

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

/var/mail/vmail/sieve/global/spam-global.sieve

require; if anyof(header:contains "YES", header:contains "Yes", header:contains "*** SPAM ***") { fileinto:create "Spam"; stop; }

Τα ακόλουθα δύο scripts θα ενεργοποιηθούν κάθε φορά που μετακινείτε ένα μήνυμα ηλεκτρονικού ταχυδρομείου μέσα ή έξω από τον κατάλογο Spam :

/var/mail/vmail/sieve/global/report-spam.sieve

require; pipe:copy "rspamc"; /var/mail/vmail/sieve/global/report-ham.sieve

require; pipe:copy "rspamc";

Κάντε επανεκκίνηση της υπηρεσίας Dovecot για να εφαρμοστούν οι αλλαγές:

sudo systemctl restart dovecot

Καταχωρίστε τις δέσμες ενεργειών και ορίστε τα σωστά δικαιώματα:

sievec /var/mail/vmail/sieve/global/spam-global.sieve sievec /var/mail/vmail/sieve/global/report-spam.sieve sievec /var/mail/vmail/sieve/global/report-ham.sieve sudo chown -R vmail: /var/mail/vmail/sieve/

Δημιουργήστε κλειδιά DKIM

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

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

Δημιουργήστε ένα νέο κατάλογο για να αποθηκεύσετε το κλειδί DKIM και να δημιουργήσετε ένα νέο κλειδί DKIM χρησιμοποιώντας το βοηθητικό πρόγραμμα rspamadm :

sudo mkdir /var/lib/rspamd/dkim/ rspamadm dkim_keygen -b 2048 -s mail -k /var/lib/rspamd/dkim/mail.key | sudo tee -a /var/lib/rspamd/dkim/mail.pub rspamadm dkim_keygen -b 2048 -s mail -k /var/lib/rspamd/dkim/mail.key | sudo tee -a /var/lib/rspamd/dkim/mail.pub

Στο παραπάνω παράδειγμα χρησιμοποιούμε το mail ως επιλογέα DKIM.

Θα πρέπει τώρα να έχετε δύο νέα αρχεία στον κατάλογο /var/lib/rspamd/dkim/ , mail.key που είναι το αρχείο ιδιωτικού κλειδιού μας και mail.pub ένα αρχείο που περιέχει το δημόσιο κλειδί DKIM. Θα ενημερώσουμε αργότερα τις εγγραφές ζώνης DNS.

Ορίστε τη σωστή ιδιοκτησία και δικαιώματα:

sudo chown -R _rspamd: /var/lib/rspamd/dkim sudo chmod 440 /var/lib/rspamd/dkim/*

Τώρα πρέπει να πούμε στο Rspamd πού να ψάξει το κλειδί DKIM, το όνομα του επιλογέα και η τελευταία γραμμή θα επιτρέψει την υπογραφή DKIM για διευθύνσεις αποστολέα ψευδώνυμα. Για να γίνει αυτό, δημιουργήστε ένα νέο αρχείο με τα ακόλουθα περιεχόμενα:

/etc/rspamd/local.d/dkim_signing.conf

selector = "mail"; path = "/var/lib/rspamd/dkim/$selector.key"; allow_username_mismatch = true;

Το Rspamd υποστηρίζει επίσης υπογραφή για υπογραφές αυθεντικοποιημένης αλυσίδας λήψης (ARC). Μπορείτε να βρείτε περισσότερες πληροφορίες σχετικά με τις προδιαγραφές ARC εδώ.

Το Rspamd χρησιμοποιεί τη μονάδα DKIM για την αντιμετώπιση των υπογραφών ARC, ώστε να μπορέσουμε απλά να αντιγράψουμε την προηγούμενη διαμόρφωση:

sudo cp /etc/rspamd/local.d/dkim_signing.conf /etc/rspamd/local.d/arc.conf

Κάντε επανεκκίνηση της υπηρεσίας Rspamd για να εφαρμοστούν οι αλλαγές:

sudo systemctl restart rspamd

Ρυθμίσεις DNS

Έχουμε ήδη δημιουργήσει ένα ζευγάρι κλειδιών DKIM και τώρα πρέπει να ενημερώσουμε τη ζώνη DNS μας. Το δημόσιο κλειδί DKIM αποθηκεύεται στο αρχείο mail.pub . Το περιεχόμενο του αρχείου θα πρέπει να φαίνεται ως εξής:

cat /var/lib/rspamd/dkim/mail.pub

mail._domainkey IN TXT ("v=DKIM1; k=rsa; " "p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAqdBRCqYzshc4LmmkxUkCH/rcIpSe/QdNIVmBrgqZmZ5zzWQi7ShdFOH7V32/VM1VRk2pkjDV7tmfbwslsymsfxgGhVHbU0R3803uRfxAiT2mYu1hCc9351YpZF4WnrdoA3BT5juS3YUo5LsDxvZCxISnep8VqVSAZOmt8wFsZKBXiIjWuoI6XnWrzsAfoaeGaVuUZBmi4ZTg0O4yl" "nVlIz11McdZTRe1FlONOzO7ZkQFb7O6ogFepWLsM9tYJ38TFPteqyO3XBjxHzp1AT0UvsPcauDoeHUXgqbxU7udG1t05f6ab5h/Kih+jisgHHF4ZFK3qRtawhWlA9DtS35DlwIDAQAB");

v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAqdBRCqYzshc4LmmkxUkCH/rcIpSe/QdNIVmBrgqZmZ5zzWQi7ShdFOH7V32/VM1VRk2pkjDV7tmfbwslsymsfxgGhVHbU0R3803uRfxAiT2mYu1hCc9351YpZF4WnrdoA3BT5juS3YUo5LsDxvZCxISnep8VqVSAZOmt8wFsZKBXiIjWuoI6XnWrzsAfoaeGaVuUZBmi4ZTg0O4ylnVlIz11McdZTRe1FlONOzO7ZkQFb7O6ogFepWLsM9tYJ38TFPteqyO3XBjxHzp1AT0UvsPcauDoeHUXgqbxU7udG1t05f6ab5h/Kih+jisgHHF4ZFK3qRtawhWlA9DtS35DlwIDAQAB

Θα δημιουργήσουμε επίσης μια επαλήθευση μηνυμάτων βάσει τομέα ( DMARC ), η οποία έχει σχεδιαστεί για να ενημερώνει τον διακομιστή λήψης εάν θα αποδεχθεί ή όχι ένα μήνυμα ηλεκτρονικού ταχυδρομείου από έναν συγκεκριμένο αποστολέα. Βασικά, θα προστατεύσει τον τομέα σας από την πλαστογράφηση του άμεσου τομέα και θα βελτιώσει τη φήμη του τομέα σας.

θα εφαρμόσουμε την ακόλουθη πολιτική DMARC:

_dmarc IN TXT "v=DMARC1; p=none; adkim=r; aspf=r;"

Ας καταρρίψουμε την παραπάνω εγγραφή DMARC:

  • v=DMARC1 - Αυτό είναι το αναγνωριστικό DMARC p=none - Αυτό λέει στον δέκτη τι πρέπει να κάνει με τα μηνύματα που αποτυγχάνουν DMARC. Στην περίπτωσή μας τίθεται σε καμία περίπτωση η οποία σημαίνει ότι δεν λαμβάνουν μέτρα αν ένα μήνυμα αποτύχει στο DMARC. Μπορείτε επίσης να χρησιμοποιήσετε την επιλογή "απόρριψη" ή quarantine adkim=r και aspf=r - ευθυγράμμιση DKIM και SPF , r για Relaxed και s για Strict, στην περίπτωση μας χρησιμοποιούμε το Relaxed Alignment τόσο για DKIM όσο και για SPF.

Όπως και πριν, εάν τρέχετε το δικό σας διακομιστή Bind DNS, πρέπει απλώς να αντιγράψετε και να επικολλήσετε την εγγραφή στο αρχείο ζώνης τομέα και εάν χρησιμοποιείτε άλλο πάροχο DNS, πρέπει να δημιουργήσετε μια εγγραφή TXT με όνομα _dmarc και v=DMARC1; p=none; adkim=r; aspf=r; v=DMARC1; p=none; adkim=r; aspf=r; ως αξία / περιεχόμενο.

Μπορεί να χρειαστεί λίγος χρόνος για να μεταφερθούν οι αλλαγές DNS. Μπορείτε να ελέγξετε αν τα αρχεία έχουν πολλαπλασιαστεί χρησιμοποιώντας την εντολή dig:

dig mail._domainkey.linuxize.com TXT +short

"v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAqdBRCqYzshc4LmmkxUkCH/rcIpSe/QdNIVmBrgqZmZ5zzWQi7ShdFOH7V32/VM1VRk2pkjDV7tmfbwslsymsfxgGhVHbU0R3803uRfxAiT2mYu1hCc9351YpZF4WnrdoA3BT5juS3YUo5LsDxvZCxISnep8VqVSAZOmt8wFsZKBXiIjWuoI6XnWrzsAfoaeGa" "VuUZBmi4ZTg0O4ylnVlIz11McdZTRe1FlONOzO7ZkQFb7O6ogFdepWLsM9tYJ38TFPteqyO3XBjxHzp1AT0UvsPcauDoeHUXgqbxU7udG1t05f6ab5h/Kih+jisgHHF4ZFK3qRtawhWlA9DtS35DlwIDAQAB"

dig _dmarc.linuxize.com TXT +short

"v=DMARC1; p=none; adkim=r; aspf=r;"

Μπορείτε επίσης να ελέγξετε την τρέχουσα πολιτική DMARC του τομέα σας ή να δημιουργήσετε εδώ τη δική σας πολιτική DMARC.

συμπέρασμα

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

mail διακομιστή postfix dovecot dns rspamd

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

Άλλες θέσεις αυτής της σειράς:

• Ρύθμιση διακομιστή αλληλογραφίας με PostfixAdmin • Εγκατάσταση και διαμόρφωση παραμέτρων Postfix και Dovecot • Εγκατάσταση και ενοποίηση Rspamd • Εγκατάσταση και ρύθμιση παραμέτρων του Roundcube Webmail