How to Stop Spam With Postfix Linux Email Server
Mục lục:
- Điều kiện tiên quyết
- Cài đặt Redis
- Cài đặt không giới hạn
- Cài đặt Rspamd
- Cấu hình Rspamd
- Cấu hình Nginx
- Cấu hình Postfix
- Cấu hình Dovecot
- Tạo khóa DKIM
- Cài đặt DNS
- Phần kết luận
Đây là phần thứ ba của Thiết lập và định cấu hình máy chủ thư của chúng tôi. Trong hướng dẫn này, chúng tôi sẽ thực hiện cài đặt và cấu hình hệ thống lọc thư rác Rspamd và tích hợp nó vào máy chủ thư của chúng tôi, tạo bản ghi DNS DKIM và DMARC.
Bạn có thể hỏi tại sao chúng tôi chọn đi với Rspamd mà không phải với Spamassassin. Rspamd được duy trì và viết tích cực hơn bằng C và nó nhanh hơn nhiều so với Spamassassin được viết bằng Perl. Một lý do khác là Rspamd đi kèm với một mô-đun ký DKIM vì vậy chúng tôi sẽ không phải sử dụng một phần mềm khác để ký email gửi đi của chúng tôi.
Điều kiện tiên quyết
Trước khi tiếp tục với hướng dẫn này, hãy đảm bảo bạn đã đăng nhập với tư cách là người dùng có quyền sudo.
Cài đặt Redis
Redis sẽ được Rspamd sử dụng làm hệ thống lưu trữ và lưu trữ, để cài đặt nó chỉ cần chạy:
Cài đặt không giới hạn
Không ràng buộc là một trình phân giải DNS xác thực, đệ quy và bộ đệm ẩn rất an toàn.
Mục đích chính của việc cài đặt dịch vụ này là để giảm số lượng yêu cầu DNS bên ngoài. Bước này là tùy chọn và có thể bỏ qua.
sudo apt update
sudo apt install unbound
Cài đặt Không giới hạn mặc định phải đủ cho hầu hết các máy chủ.
Để đặt không liên kết làm trình phân giải DNS chính của máy chủ của bạn chạy các lệnh sau:
sudo echo "nameserver 127.0.0.1" >> /etc/resolvconf/resolv.conf.d/head
sudo resolvconf -u
Nếu bạn không sử dụng độ
resolvconf
thì bạn cần chỉnh sửa tệp
/etc/resolv.conf
theo cách thủ công.
Cài đặt Rspamd
Chúng tôi sẽ cài đặt phiên bản ổn định mới nhất của Rspamd từ kho lưu trữ chính thức của nó.
Bắt đầu bằng cách cài đặt các gói cần thiết:
sudo apt install software-properties-common lsb-release
sudo apt install lsb-release wget
Thêm khóa GPG của kho lưu trữ vào khóa nguồn apt của bạn bằng lệnh wget sau:
wget -O- https://rspamd.com/apt-stable/gpg.key | sudo apt-key add -
Kích hoạt kho lưu trữ Rspamd bằng cách chạy:
echo "deb http://rspamd.com/apt-stable/ $(lsb_release -cs) main" | sudo tee -a /etc/apt/sources.list.d/rspamd.list
Khi kho lưu trữ được kích hoạt, hãy cập nhật chỉ mục gói và cài đặt Rspamd bằng các lệnh sau:
sudo apt update
sudo apt install rspamd
Cấu hình Rspamd
Thay vì sửa đổi các tệp cấu hình stock, chúng tôi sẽ tạo các tệp mới trong thư mục
/etc/rspamd/local.d/local.d/
sẽ ghi đè cài đặt mặc định.
Theo mặc định,
normal worker
của Rspamd,
normal worker
nhân quét các email nghe trên tất cả các giao diện trên cổng 11333. Tạo tệp sau để định cấu hình nhân viên bình thường Rspamd chỉ nghe giao diện localhost:
bind_socket = "127.0.0.1:11333";
Nhân
proxy worker
lắng nghe trên cổng 11.332 và hỗ trợ giao thức milter. Để Postfix liên lạc với Rspamd, chúng ta cần kích hoạt chế độ vắt sữa:
bind_socket = "127.0.0.1:11332"; milter = yes; timeout = 120s; upstream "local" { default = yes; self_scan = yes; }
Tiếp theo, chúng ta cần thiết lập mật khẩu cho máy chủ
controller worker
cung cấp quyền truy cập vào giao diện web Rspamd. Để tạo mật khẩu được mã hóa, hãy chạy:
rspamadm pw --encrypt -p P4ssvv0rD
Đầu ra sẽ trông giống như thế này:
$2$khz7u8nxgggsfay3qta7ousbnmi1skew$zdat4nsm7nd3ctmiigx9kjyo837hcjodn1bob5jaxt7xpkieoctb
Đừng quên thay đổi mật khẩu (
P4ssvv0rD
) thành một cái gì đó an toàn hơn.
Sao chép mật khẩu từ thiết bị đầu cuối của bạn và dán nó vào tập tin cấu hình:
/etc/rspamd/local.d/worker-controll.inc
password = "$2$khz7u8nxgggsfay3qta7ousbnmi1skew$zdat4nsm7nd3ctmiigx9kjyo837hcjodn1bob5jaxt7xpkieoctb";
Sau đó, chúng tôi sẽ định cấu hình Nginx làm proxy ngược cho máy chủ web của trình điều khiển để chúng tôi có thể truy cập vào giao diện web Rspamd.
Đặt Redis làm phụ trợ cho thống kê Rspamd bằng cách thêm các dòng sau vào tệp
classifier-bayes.conf
:
servers = "127.0.0.1"; backend = "redis";
Mở tệp
milter_headers.conf
và đặt tiêu đề milter:
use =;
Bạn có thể tìm thêm thông tin về các tiêu đề sữa ở đây.
Cuối cùng khởi động lại dịch vụ Rspamd để các thay đổi có hiệu lực:
Cấu hình Nginx
Trong phần đầu tiên của loạt bài này, chúng tôi đã tạo một khối máy chủ Nginx cho phiên bản PostfixAdmin.
Mở tệp cấu hình Nginx và thêm chỉ thị vị trí sau, tệp được tô sáng màu vàng:
/etc/nginx/sites-enables/mail.linuxize.com
… 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; }…
Tải lại dịch vụ Nginx để các thay đổi có hiệu lực:
sudo systemctl reload nginx
rspamadm pw
https://mail.linuxize.com/rspamd/
, nhập mật khẩu bạn đã tạo trước đó bằng lệnh
rspamadm pw
và bạn sẽ được trình bày với giao diện web Rspamd.
Cấu hình Postfix
Chúng ta cần cấu hình Postfix để sử dụng bộ lọc Rspamd.
Chạy lệnh sau để cập nhật tệp cấu hình chính 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"
Khởi động lại dịch vụ Postfix để các thay đổi có hiệu lực:
sudo systemctl restart postfix
Cấu hình Dovecot
Chúng tôi đã cài đặt và định cấu hình Dovecot trong phần thứ hai của loạt bài này và bây giờ chúng tôi sẽ cài đặt mô đun lọc
sieve
và tích hợp Dovecot với Rspamd.
Bắt đầu bằng cách cài đặt mô-đun lọc Dovecot:
sudo apt install dovecot-sieve dovecot-managesieved
Khi các gói được cài đặt, mở các tệp sau và chỉnh sửa các dòng được tô màu vàng.
/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…. }
Lưu và đóng các tập tin.
Tạo một thư mục cho các kịch bản sàng:
mkdir -p /var/mail/vmail/sieve/global
Tạo bộ lọc sàng toàn cầu để di chuyển các email được đánh dấu là spam vào thư mục
Spam
:
require; if anyof(header:contains "YES", header:contains "Yes", header:contains "*** SPAM ***") { fileinto:create "Spam"; stop; }
Hai tập lệnh sàng sau sẽ được kích hoạt bất cứ khi nào bạn di chuyển email vào hoặc ra khỏi
Spam
:
require; pipe:copy "rspamc";
/var/mail/vmail/sieve/global/report-ham.sieve
require; pipe:copy "rspamc";
Khởi động lại dịch vụ Dovecot để các thay đổi có hiệu lực:
sudo systemctl restart dovecot
Biên dịch các kịch bản sàng và đặt quyền chính xác:
sievec /var/mail/vmail/sieve/global/spam-global.sieve
sievec /var/mail/vmail/sieve/global/report-ham.sieve
sudo chown -R vmail: /var/mail/vmail/sieve/
Tạo khóa DKIM
Thư xác định tên miền (DKIM) là một phương thức xác thực email có thêm chữ ký mã hóa vào các tiêu đề thư đi. Nó cho phép người nhận xác minh rằng một email tuyên bố có nguồn gốc từ một tên miền cụ thể thực sự được ủy quyền bởi chủ sở hữu của tên miền đó. Mục đích chính của việc này là để ngăn chặn các email giả mạo.
Chúng tôi có thể có các khóa DKIM khác nhau cho tất cả các tên miền của chúng tôi và thậm chí nhiều khóa cho một tên miền nhưng để đơn giản bài viết này, chúng tôi sẽ sử dụng một khóa DKIM duy nhất mà sau này có thể được sử dụng cho tất cả các tên miền mới.
Tạo một thư mục mới để lưu trữ khóa DKIM và tạo cặp khóa DKIM mới bằng tiện ích
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
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
Trong ví dụ trên, chúng tôi đang sử dụng
mail
làm công cụ chọn DKIM.
Bây giờ bạn sẽ có hai tệp mới trong thư mục
/var/lib/rspamd/dkim/
,
mail.key
là tệp khóa riêng của chúng tôi và
mail.pub
một tệp chứa khóa công khai DKIM. Chúng tôi sẽ cập nhật hồ sơ khu vực DNS của chúng tôi sau.
Đặt quyền sở hữu và quyền chính xác:
sudo chown -R _rspamd: /var/lib/rspamd/dkim
sudo chmod 440 /var/lib/rspamd/dkim/*
Bây giờ chúng tôi cần cho Rspamd biết nơi tìm khóa DKIM, tên của bộ chọn và dòng cuối cùng sẽ cho phép ký DKIM cho các địa chỉ người gửi bí danh. Để làm điều đó, tạo một tệp mới với các nội dung sau:
/etc/rspamd/local.d/dkim_signing.conf
selector = "mail"; path = "/var/lib/rspamd/dkim/$selector.key"; allow_username_mismatch = true;
Rspamd cũng hỗ trợ ký cho chữ ký Chuỗi nhận được xác thực (ARC). Bạn có thể tìm thêm thông tin về đặc tả ARC tại đây.
Rspamd đang sử dụng mô-đun DKIM để xử lý chữ ký ARC để chúng tôi có thể sao chép cấu hình trước đó một cách đơn giản:
sudo cp /etc/rspamd/local.d/dkim_signing.conf /etc/rspamd/local.d/arc.conf
Khởi động lại dịch vụ Rspamd để các thay đổi có hiệu lực:
Cài đặt DNS
Chúng tôi đã tạo một cặp khóa DKIM và bây giờ chúng tôi cần cập nhật vùng DNS của mình. Khóa công khai DKIM được lưu trong tệp
mail.pub
. Nội dung của tệp sẽ như thế này:
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
Chúng tôi cũng sẽ tạo Xác thực thư dựa trên tên miền (
DMARC
) được thiết kế để báo cho máy chủ nhận biết có chấp nhận email từ một người gửi cụ thể hay không. Về cơ bản, nó sẽ bảo vệ tên miền của bạn chống lại việc giả mạo tên miền trực tiếp và cải thiện danh tiếng tên miền của bạn.
chúng tôi sẽ thực hiện chính sách DMARC sau:
_dmarc IN TXT "v=DMARC1; p=none; adkim=r; aspf=r;"
Hãy phá vỡ kỷ lục DMARC ở trên:
-
v=DMARC1- Đây là định danh DMARCp=none- Điều này cho người nhận biết phải làm gì với các thông báo không DMARC. Trong trường hợp của chúng tôi, nó được đặt thành không có nghĩa là không có hành động nếu một tin nhắn không thành công DMARC. Bạn cũng có thể sử dụng 'từ chối' hoặcquarantineadkim=rvàaspf=r- căn chỉnhDKIMvàSPF,rcho Thư giãn vàscho Nghiêm, trong trường hợp của chúng tôi, chúng tôi đang sử dụng Thư giãn cho cả DKIM và SPF.
Tương tự như trước đây nếu bạn đang chạy máy chủ DNS Bind của riêng mình, bạn chỉ cần sao chép và dán bản ghi vào tệp vùng miền của mình và nếu bạn đang sử dụng nhà cung cấp DNS khác, bạn cần tạo bản ghi TXT với
_dmarc
làm tên và
v=DMARC1; p=none; adkim=r; aspf=r;
v=DMARC1; p=none; adkim=r; aspf=r;
như một giá trị / nội dung.
Có thể mất một lúc để các thay đổi DNS lan truyền. Bạn có thể kiểm tra xem các bản ghi đã được truyền bằng lệnh đào chưa:
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;"
Bạn cũng có thể kiểm tra chính sách DMARC hiện tại của tên miền hoặc tạo chính sách DMARC của riêng bạn tại đây.
Phần kết luận
Đó là phần này của hướng dẫn. Trong phần tiếp theo của loạt bài này, chúng tôi sẽ tiếp tục với cài đặt và cấu hình RoundCube.
bưu điện máy chủ bưu điện dovecot dns rspamdBài đăng này là một phần của Thiết lập và định cấu hình loạt máy chủ thư.
Các bài viết khác trong loạt bài này:
• Thiết lập máy chủ thư với PostfixAdmin • Cài đặt và định cấu hình Postfix và Dovecot • Cài đặt và Tích hợp Rspamd • Cài đặt và Định cấu hình Webmail RoundcubeIBM lên kế hoạch công bố các thiết bị được xây dựng nhằm loại bỏ sự phức tạp của việc tích hợp phần mềm và dịch vụ trong hệ thống. < Trong một nỗ lực để thiết lập chính nó ngoài các nhà cung cấp máy chủ khác, IBM hôm thứ Ba cho biết họ đang đẩy mạnh nỗ lực để tạo ra các thiết bị được xây dựng nhằm loại bỏ sự phức tạp của tích hợp phần mềm và dịch vụ trong hệ thống. Chiến lược kinh doanh thông minh, IBM cho biết họ sẽ cung cấp các thiết bị Smart Cube tích hợp các thành phần phần mềm cụ thể dễ dàn
Là một phần của chiến lược, công ty này sẽ thông báo rằng họ đã hợp tác với Intuit tích hợp phần cứng của IBM với phần mềm tài chính QuickBooks của Intuit. Khi được cấp nguồn, thiết bị và phần mềm có thể được thiết lập và cấu hình theo bốn bước, IBM cho biết.
Với DreamScreen mới, HP vươn ra ngoài khái niệm khung ảnh kỹ thuật số quen thuộc để bao gồm các ứng dụng thường được kết hợp với máy tính bảng độc lập. Mô hình 10 inch, $ 250 này kết hợp hỗ trợ không dây cho các ứng dụng phổ biến như Facebook, Snapfish, Pandora và bao bì riêng của đài phát thanh Net của HP, cùng với các chức năng nghe nhìn và âm thanh tích hợp khác. các DreamScreen 100 là vẫn phù hợp hơn cho ngồi trên một máy tính để bàn hơn treo trên một bức tường. Điều này là do cả hai trọng l
Thiết lập DreamScreen gần như không thể tin được, ngay cả với việc nhập mật khẩu và khóa mạng qua điều khiển từ xa mạnh mẽ nhưng nhạy cảm. Giao diện hấp dẫn, trực quan và dễ đọc, với các biểu tượng và tiêu đề lớn làm cho mỗi chức năng trở nên rõ ràng. Ngoài ra, khung hình đi kèm với đĩa CD bao gồm video hướng dẫn và chương trình máy tính để bàn trực quan cho phép bạn kéo và thả tệp âm thanh, ảnh và video từ máy tính của mình vào bộ nhớ trong 2GB (điều này cũng có thể thực hiện qua USB) thẻ kết n
Không thể cài đặt hoặc gỡ cài đặt chương trình trong Trình gỡ rối cài đặt và gỡ cài đặt chương trình Windows 10/8/7
Của Microsoft sẽ giúp bạn khắc phục sự cố nếu bạn không thể cài đặt hoặc gỡ cài đặt chương trình trong Windows 7/8/10.







