www.tinhgiac.com chapter11 tài liệu, giáo án, bài giảng , luận văn, luận án, đồ án, bài tập lớn về tất cả các lĩnh vực k...
SENDMAIL Giới thiệu MUAs, MTAs, and MDAs Cấu trúc Email Message SMTP the Message Envelope Lịch sử sendmail The Mail Queue Aliases Biên dịch sendmail cài đặt Tại dùng Berkeley sendmail? Tải Source Code Cấu hình Build-Time Database Map Support Ví dụ site.config.m4 Biên dịch sendmail Cấu hình sendmail File cấu hình làm ? So sánh cf files với mc files Cấu trúc mc File Biến cấu hình FEATURE() Macros Masquerading Relaying Database Maps Sinh cf file từ mc file Anti-Spam Định nghĩa "spam" No Default Relaying Access Control Database Better Checking on Sender Information Chạy sendmail: Các tham số dòng lệnh Khởi động MUAs, MTAs, and MDAs Part What It Does Examples Mail User Agent (MUA) MUA chương trình dùng để đọc gửi mail Có thể gọi mail client elm, pine, Outlook, Eudora Mail Transfer Agent (MTA) MTA làm nhiệm vụ "mail sendmai router" Nó nhận mail từ MUA lẫn l, MTA, vào header qmail, mail mà định chuyển exchang cách e server Mail Delivery Agent (MDA) MDA chấp nhận mail từ MTA mail.loc chuyển cụ thể đến user al procmail Ví dụ MTA: phần quan trọng Nó chịu trách nhiệm làm cơng việc chuyển mail “thơng minh" Q trình gửi nhận mail jsmith's MUA (pine, outlook, … ) host1.uiuc.edu chuyển message đến MTA (sendmail) local host MTA (sendmail) ý message đánh địa đến user host2.uiuc.edu Khi cấu hình để biết đến host2.uiuc.edu thơng qua SMTP, chuyển message sang SMTP MDA (thường SMTP MDA build sẵn sendmail, MDA khác chương trình ngồi) SMTP MDA kết nối vào MTA host2.uiuc.edu (sendmail) gửi message MTA host2.uiuc.edu (sendmail) thơng báo message đánh địa đến user localhost, chuyển message vào local MDA Local MDA lưu message mailbox johndoe Kế tiếp johndoe kết nối vào host2.uiuc.edu chạy MUA, message để đọc Structure of an Email Message Email messages có phần : Headers: dòng có dạng "field: value" chứa thơng tin message, "To:", "From:", "Date:", and "Message-ID:" Body: nội dung message From root@alibaba.citd.edu.vn Tue Nov 30 09:54:29 2010 Return-Path: Received: from alibaba.citd.edu.vn (alibaba [127.0.0.1]) by alibaba.citd.edu.vn (8.12.8/8.12.8) with ESMTP id oAU2sNOR003125 for ; Tue, 30 Nov 2010 09:54:28 +0700 Received: (from root@localhost) by alibaba.citd.edu.vn (8.12.8/8.12.8/Submit) id oAU2sNKh003123 for natuan; Tue, 30 Nov 2010 09:54:23 +0700 Date: Tue, 30 Nov 2010 09:54:23 +0700 From: root Message-Id: To: natuan@alibaba.citd.edu.vn Subject: Test sendmail program This is the message body Relaying Kiểm soát hành vi relay Directive Explanation RELAY_DOMAIN (domainname) Nó thêm domainname vào danh sách domains mà sendmail cho phép relay mail đến RELAY_DOMAIN_FILE (/full/path/to/file) Nếu ta có lượng lớn domains cần relay đến, bạn dùng dẫn đến tập tin ngoại thay dùng nhiều lần RELAY_DOMAIN() Mặc định tập tin /etc/mail/relaydomains, đọc sendmail starts up Kiểm sốt hành vi relay (2) Directive Explanation FEATURE (relay_hosts_only) Thơng thường, đầu vào danh sách relay domains Tùy chọn cho sendmail biết phải xử lý hosts thay domains Điều làm ảnh hưởng tập tin CSDL kiển soát truy cập FEATURE (promiscuous_relay) Chỉ dẫn làm cho sendmail trả hành vi truyền thống relay thứ Điều hồn tồn khơng nên Access Control Database Bắt đầu với version 8.9, sendmail cung cấp sẵn chế kiểm soán linh hoạt Tính chọn với macro the FEATURE(access_db) Để thiết lập database, tạo text file /etc/mail/access với dòng có dạng sau: user@ user@host domainname ###.### disposition disposition disposition disposition Access Control Database (2) Dạng đầu match dựa phần username địa người gửi Dạng match dựa cụ thể user@host Dạng match dựa host thuộc domainname Dạng match host số IP Phần bên trái đầu vào tùy chọn tiền tố sau To:, From:, or Connect: Các đầu vào đánh dấu kiểu match với envelope recipients, envelope senders, hay client host address Các đầu vào không đánh dấu với tags match messages envelope recipients, envelope sender, or client host address disposition OK: Được phép chấp nhận mail từ host RELAY: Cho phép matched relay thông qua SMTP server Có nghĩa OK REJECT: Reject sender/recipient DISCARD: Bỏ message completely ERROR:D.S.N:### bong message : Reject message với dòng báo lỗi cụ thể, với D.S.N RFC 1893, ### RFC 821 tương thích với SMTP response code, bong message vài text sau Access Control Database Example From:ME_TOO@aol.com LUSER@ Connect:spam-king.com REJECT REJECT ERROR:5.0.0:550 Tui khơng thích Spam Connect:goodhost.spam-king.com OK From:128.174 RELAY bad-domain.com REJECT Giải thích ví dụ Nó reject mail từ ME_TOO@aol.com, cho phép mail gửi đến ME_TOO@aol.com Tất messages với envelope sender hay envelope recipient mà có username trùng với LUSER bị reject KHơng có hosts domain spam-king.com ngoại trừ goodhost.spam-king.com phép kết nối Tất hosts địa 128.174.*.* cho phép gửi mail ngoài, server không relay outside mail ngược lại chúng Và cuối cùng, tất kết nối từ baddomain.com bị từ chối, tất messages với envelope sender hay envelope recipient address từ bad-domain.com bị rejected Kiểm tra thông tin Sender Nhiều spam gửi Internet ngày nguỵ trang với địa from khơng có thật Để ngăn ngừa loại spam này, Tất phiên sendmail làm điều sau với sender addresses sender address phải có phần username phần domainname Mail không chấp nhận từ user tuan, chấp nhận từ user tuan@citd.edu.vn Để tắt tính dùng FEATURE(accept_unqualified_senders) Phần domainname sender address phải phân giải DNS Để tắt tính dùng FEATURE(accept_unresolvable_domains) Chạy sendmail Flag -bd Description "become daemon" Chạy sendmail background sendmail lắng nghe kết nối SMTP từ mạng -bi Để nói cho sendmail khởi động CSDL aliases Tương đương với lệnh newaliases -bp In mail queue, tương tự lệnh mailq Chạy sendmail (2) Flag -bs -bv Description Run an SMTP session on stdout and stdin, just as if you'd telnetted to port 25 Verify address mode This flag should be followed with a list of addresses to verify commonly useful sendmail flags Flag Description -dX Thiết lập giá trị debug X (không bàn này) -F name_of_sen der Thiết lập full name of sender thàng name_of_sender Nhiều versions sendmail gắn thêm nhãn warning header vào outgoing message option dùng, dùng để giả mạo email commonly useful sendmail flags Flag -qinterval Description Xử lý mail queue Nếu khơng có interval, queue xử lý lần (giống lệnh runq) Quãn interval số với đơn vị (s:seconds, m:minutes, h:hours, d:days, w:weeks) Ví dụ: -q90m -q1h30m nói sendmail xử lý queue sau rưỡi Giá trị thông thường từ 20 đến 30 minutes Starting sendmail Chạy sendmail daemon mode với queue interval, sau: /usr/sbin/sendmail -bd -q20m Dùng ps để kiểm tra sendmail có chạy khơng Sau thử gửi nhận vài mail Kiểm tra syslog để xem sendmail khơng báo lỗi Nếu việc trơi chảy Bạn install sendmail thành công mỹ mãn Xin chúc mừng ! Thank you !