Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 52 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
52
Dung lượng
614,7 KB
Nội dung
SENDMAIL Giới thiệu MUAs, MTAs, and MDAs Cấu trúc của 1 Email Message SMTP và the Message Envelope Lịch sử sendmail The Mail Queue Aliases Biên dịch sendmail và cài đặt Tại sao 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 có thể làm gì ? So sánh .cf files với .mc files Cấu trúc của .mc File Biến cấu hình FEATURE() Macros Masquerading Relaying Database Maps Sinh ra .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 là chương trình dùng để đọc và gửi mail. Có thể gọi là mail client. elm, pine, Outlook, Eudora Mail Transfer Agent (MTA) MTA làm nhiệm vụ như là "mail router". Nó nhận mail từ MUA lẫn MTA, căn cứ vào header của mail mà nó quyết định chuyển đi bằng cách nào sendmail, qmail, exchange server Mail Delivery Agent (MDA) MDA chấp nhận các mail từ MTA và chuyển đi cụ thể đến user mail.local procmail Ví dụ MTA: phần quan trọng nhất. Nó chịu trách nhiệm làm các công việc chuyển mail “thông minh". Quá trình gửi nhận mail 1. jsmith's MUA (pine, outlook, … ) trên host1.uiuc.edu chuyển message đến MTA (sendmail) trên local host. 2. MTA (sendmail) chú ý message được đánh địa chỉ đến 1 user tại host2.uiuc.edu. Khi đó nó được cấu hình để biết rằng nó có thể đến host2.uiuc.edu thông qua SMTP, nó chuyển message sang SMTP MDA (thường SMTP MDA được build sẵn trong sendmail, nhưng các MDA khác có thể là 1 chương trình ngoài). 3. SMTP MDA kết nối vào MTA trên host2.uiuc.edu (sendmail) và gửi nó 1 message. 4. MTA trên host2.uiuc.edu (sendmail) thông báo rằng message được đánh địa chỉ đến 1 user trên localhost, do đó nó chuyển message vào local MDA. 5. Local MDA lưu message trong mailbox của johndoe . 6. Kế tiếp johndoe kết nối vào host2.uiuc.edu và chạy MUA, message sẽ ở đó để anh ta đọc. Structure of an Email Message Email messages có 2 phần : Headers: dòng có dạng "field: value" chứa thông tin về message, như là "To:", "From:", "Date:", and "Message-ID:" Body: nội dung của message From root@alibaba.citd.edu.vn Tue Nov 30 09:54:29 2010 Return-Path: <root@alibaba.citd.edu.vn> 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 <natuan@alibaba.citd.edu.vn>; 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 <root@alibaba.citd.edu.vn> Message-Id: <201011300254.oAU2sNKh003123@alibaba.citd.edu.vn> To: natuan@alibaba.citd.edu.vn Subject: Test sendmail program This is the message body. [...]... binary để sendmail hiểu Sử dụng lệnh newaliases Tập tin aliases.db sẽ được sinh ra Tại sao dùng Berkeley sendmail? Security fixes: Các lỗi về security được cập nhật và sửa thường xuyên Features: Các tính năng của sendmail hỗ trợ rất nhiều Standards: Sendmail là một mail server hỗ trợ chuẩn SMTP và được chuẩn hoá trên Internet Support: Sendmail được hỗ trợ http://www .sendmail. org Sendmail source... Internet Support: Sendmail được hỗ trợ http://www .sendmail. org Sendmail source code Có thể tải sendmail source code từ : ftp://ftp .sendmail. org/pub /sendmail (home site) ftp://uiarchive.uiuc.edu/pub/packag es/mail /sendmail (local mirror) Cấu hình sendmail Nhiệm vụ của tập tin /etc/mail /sendmail. cf: chỉ cho sendmail biết các công việc phải xử lý khi nhận và gửi mail : General configuration options,... thông tin này thường là phức tạp đặc biệt là ở các large mail hub Tập tin cf và tập tin mc "He who has never hacked sendmail. cf has no soul; he who has hacked sendmail. cf more than once has no brain.“ Old Hacker Proverb /etc/mail /sendmail. cf /etc/mail /sendmail. cf được thiết kế để sendmail có thể parse nhanh, không phải để human-readable, và nó được xem là một trong những cái bí hiểm nhất mà Unix... /etc/mailmap) Chú ý dùng –o trước filename nói cho sendmail biết map là optional, do đó nó sẽ không cho là có lỗi nếu không tồn tại map Sinh ra sendmail. cf từ mc File Trên đây là nhưng thông tin ta viết trong mc giờ phải sinh ra sendmail. cf Lưu mc trong thư mục cf/cf directory Chạy lệnh sau : m4 /m4/cf.m4 filename.mc > sendmail. cf Với quyền root, move sendmail. cf từ thư mục cf/cf vào /etc/mail, chmod...SMTP and the Message Envelope [root@alibaba mail]# telnet 172.16 .10. 1 25 Trying 172.16 .10. 1 Connected to 172.16 .10. 1 Escape character is '^]' 220 pascal.citd.edu.vn ESMTP Sendmail 8.12.8/8.12.5; Sun, 30 Nov 2003 09:14:37 0500 helo pascal 250 pascal.citd.edu.vn Hello [192.168.1.13], pleased to meet you mail from: tuan@citd.edu.vn... foreign host Lịch sử sendmail The Past: sendmail là một trong những MTA cổ nhất và dùng nhiều nhất trên Internet Bản gốc được viết trước khi Internet được chuẩn hoá Được thiết kế đủ linh hoạt để chuyển mail cho các mail systems khác nhau bất kể tính chất của nó Today: Internet được chuẩn hoá nhiều hơn Dùng SMTP (Simple Mail Transfer Protocol) Nhiều tính năng cũ của sendmail được bỏ qua... Nếu vì một vài lý do nào đó bạn cần phải cấu hình sendmail để relay tất cả các mail, FEATURE(promiscuous_relay) macro sẽ làm sendmail relay bất cứ mail nào đến Tuy nhiên, dùng macro này là hoàn toàn không khuyến khích bởi vì nó sẽ cho luôn cả spam mail được relay thông qua mail server của ta Database Maps Một trong những tính năng hữu dụng của sendmail là khả năng có thể dò tìm addresses dựa trên... sẽ ở đó cho đến khi queue được xử lý parent sendmail sẽ thường xuyên fork một child process để chuyển bất cứ mail nào còn nằm trong queue theo những quãng thời gian nhất định Xử lý mqueue Tập tin /etc/mail/aliases Một alias cho phép sendmail chuyển hướng (redirect) mail gửi đến một address mail này có thể được redirected đến một email address khác sendmail' s alias database thường được lưu dạng... MASQUERADE_AS(`host.domain') Masquerading là một phần rất quan trọng của client/server mail hub configuration Bất kỳ máy nào cấu hình như thế sẽ viết lại SMTP From: header của tất cả outbound mail để cho giống như nó xuất phát từ 1 địa chỉ mà bạn đang muốn mạo danh Ex: MASQUERADE_AS(`alibaba.com') FEATURE(allmasquerade) macro này cũng quan trọng Nó sẽ gây nên địa chỉ người nhận cũng như người... bên ngoài khi chúng đến từ mail server Relaying Bắt đầu từ version 8.9, sendmail sẽ không relay mail từ 1 external host đ n 1 host kh ế ác nếu chúng không được cấu hình cụ thể Điều này dùng để ngăn chặn spammers dùng các mail servers để chuyển mail cho chúng Để cho phép host cụ thể được phép relay ta phải cấu hình lại sendmail, thêm hostname vào tập tin /etc/mail/relay-domains Thông thường, các . năng của sendmail hỗ trợ rất nhiều Standards: Sendmail là một mail server hỗ trợ chuẩn SMTP và được chuẩn hoá trên Internet Support: Sendmail được hỗ trợ http://www .sendmail. org Sendmail. [root@alibaba mail]# telnet 172.16 .10. 1 25 Trying 172.16 .10. 1 Connected to 172.16 .10. 1. Escape character is '^]'. 220 pascal.citd.edu.vn ESMTP Sendmail 8.12.8/8.12.5; Sun, 30. sẵn trong sendmail, nhưng các MDA khác có thể là 1 chương trình ngoài). 3. SMTP MDA kết nối vào MTA trên host2.uiuc.edu (sendmail) và gửi nó 1 message. 4. MTA trên host2.uiuc.edu (sendmail)