1. Trang chủ
  2. » Giáo Dục - Đào Tạo

BÁO CÁO THỰC TẬP-XÂY DỰNG MAIL SERVER VỚI POSTFIX

20 1,7K 3

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 20
Dung lượng 699,5 KB

Nội dung

Mục tiêu của báo cáo là hướng dẫn người đọc có thể hiểu kiến trúc và nguyên lý làm việc của một Mail Server, đồng thời biết cách triển khai một hệ thống Mail hoàn chỉnh trên môi trường L

Trang 1

CÔNG TY CỔ PHẦN ĐẦU TƯ PHÁT TRIỂN CÔNG NGHỆ

THÔNG TIN FPT CÔNG TY TNHH HỆ THỐNG THÔNG TIN FPT

NGUYỄN HẢI LONG

Người Hướng Dẫn: Trịnh Hữu Đức

XÂY DỰNG MAIL SERVER VỚI POSTFIX

BÁO CÁO THỰC TẬP DOANH NGHIỆP

Version 1.1

TP Hồ Chí Minh

Trang 2

Ngày 26 - 8 - 2009

Mục Lục

Mục Lục 2

Các Hình Ảnh Dùng Trong Sách 2

Phần I: MỤC TIÊU VÀ ĐỐI TƯỢNG 3

Phần II: GIỚI THIỆU 3

Phần III: TRIỂN KHAI & CÀI ĐẶT 9

Phần III: KẾT LUẬN 18

Các Hình Ảnh Dùng Trong Sách Mục Lục 2

Các Hình Ảnh Dùng Trong Sách 2

Phần I: MỤC TIÊU VÀ ĐỐI TƯỢNG 3

Phần II: GIỚI THIỆU 3

Phần III: TRIỂN KHAI & CÀI ĐẶT 9

Phần III: KẾT LUẬN 18

Trang 3

Phần I: MỤC TIÊU VÀ ĐỐI TƯỢNG

Mục tiêu của báo cáo là hướng dẫn người đọc có thể hiểu kiến trúc và nguyên lý làm việc của một Mail Server, đồng thời biết cách triển khai một hệ thống Mail hoàn chỉnh trên môi trường Linux – Với đầy đủ các thành phần như SMTP/POP3/IMAP Server, AntiVirus, AntiSpam, và Mail Store Cụ thể ở đây là cài đặt Mail Server với Postfix trên nền hệ điều hành CentOS

Tài liệu này cần thiết cho những người mới (newbie) muốn xây dựng một Mail Server đơn giản trên nền Linux, không những thế tài liệu này còn hỗ trợ cho những Administrator triển khai nhanh một Mail Server trên Linux

Phần II: GIỚI THIỆU

Với tốc độ tin học hóa diễn ra khá nhanh như hiện nay, E-mail ngày càng trở thành phương tiện liên lạc không thể thiếu đối với mọi người, nhất là đối với các doanh nghiệp Chính vì nhu cầu đó việc xây dựng một mail server là hết sức cần thiết Nhưng việc chọn xây dựng mail server như thế nào cho phù hợp, hiệu quả và tốn ít chi phí nhất, đồng thời vẫn đảm bảo được tính sẵn sàng (Availability – Hoạt động ổn định, dễ dàng nâng cấp và bảo trì … ) và tính riêng tư (Private – Bảo mật, bí mật … ) cho các doanh nghiệp

Trang 4

1.1 Giới Thiệu Cấu Trúc Hệ Thống E-Mail

Cấu trúc và mô hình hoạt động của một hệ thống mail thường có đầy đủ các thành phần như sau:

Hình 1.1 – Kiến Trúc Mail Server

Chức năng của các thành phần như sau:

o Mail User Agent (MUA): đây là các chương trình gửi và nhận mail được

cài đặt trên máy người dùng, nó giúp người dùng quản lý, soạn thảo, nhận và gửi mail một cách tiện lợi và nhanh chóng Các chương trình MUA tiêu biểu là: Outlook (Windows), Evolution (Linux), ThunderBird va Eudora

o Mail Transport Agent (MTA)(thường gọi là Mail Transport Agent, Message Transfer Agent, or SMTP Daemond): Là một dịch vụ trên máy

tính có nhiệm vụ chuyển Email từ máy tính đến một nơi khác (Mail Delivery Agent) Các chương trình cung cấp dịch vụ MTA tiêu biểu là: Qmail, Sendmail, Postfix (Linux), Edge/Hub Tranpost của MS Exchange Server (Windows)

o Mail Delivery Agent (MDA): Là Dịch vụ tiếp nhận các Email và phân phối

chúng đến các hộp thư cá nhân Các chương trình cung cấp dịch vụ tiêu

Trang 5

biểu là: Procmail, Mail.local, rmail (Linux), Mailbox Server trong MS Exchange (Windows)

o Mail Submission Agent (MSA): Là chương trình nhận Email từ MUA qua

cổng 587 (Bảo mật hơn SMTP cổng 25 vì nó đòi hỏi Authenticate hay các hành động tương tự để chống spam trong local) và kết hợp với MTA để chuyển Email Đa số các MTA làm nhiệm vụ MSA luôn (posfix, Sendmail), trên MS Exchange thì MSA do Mailbox role + Client receive connector (trên Hub transport role) đảm nhiệm

o Mail Access Agent/ Mail Retrieval Agent (MAA/MRA): MRA là chương

trình tìm về hoặc lấy Email về từ remote Mail server, và kết hợp với MDA

để phân phối mail về local hoặc remote mailbox MAA là dịch vụ cung cấp

để truy cập đến tìm kiếm và lấy email về Các chương trình tiêu biểu: IMAP, POP3 Server, dovecot (Linux), Client Access Server trên MS Exchange (Windows) MRA bây giờ thường do các MUA đảm nhiệm đó chính là các POP3, IMAP Client

1.2 Mô Hình Mail Server Với Postfix

Báo cáo hướng dẫn cho người đọc có thể dễ dàng xây dựng một mail server hoạt động ổn định và chi phí thấp, cho doanh nghiệp vừa và nhỏ, dựa trên nền Linux

Hình 1.2 – Kiến trúc Mail Server sẽ triển khai

Trang 6

1.2.1 Lý Do Chọn Đề Tài

Có rất nhiều hãng trên thế giới cung cấp các giải pháp trọn gói cho hệ thống mail cho các doanh nghiệp vừa và nhỏ như IBM, Microsoft, TrenMicro, Cisco … Với đầy đủ các thành phần chuyên dụng như: Mail Server, AntiSpam, AntiVirus … Ngoài ra còn có các hãng cung cấp các phần mềm và giải pháp Mail Server cho các doanh nghiệp khác, nhưng chủ yếu chạy trên nền Linux hoặc Windows

- Các giải pháp với thiết bị chuyên dụng: Được cung cấp bởi các hãng như IBM, Cissco …

Ưu điểm: Thiết bị đồng bộ, hoạt động ổn định, tính chịu lỗi cao, dễ

dàng nâng cấp và mở rộng, độ bảo mật cao, dễ dàng quản trị hệ thống, Được hỗ trợ kỹ thuật trực tiếp từ nhà cung cấp

Nhược điểm: Giá thành cao

- Các giải pháp trên nền Windows: Được Microsoft cung cấp với hệ thống Phần cứng chuyên dụng hoặc phần mềm

Ưu điểm: Dễ dàng quản trị và triển khai, hoạt động ổn định, độ bảo

mật cao, dễ dàng nâng cấp và mở rộng, hỗ trợ kỹ thuật trực tiếp từ nhà sản xuất

Nhược điểm: Giá thành tương đối, yêu cầu về tài nguyên phần cứng

cao (đối với phần mềm)

- Các giải pháp trên nền Linux – Unix: Được một vài công ty phân phối hoặc tổ chức phát triển

Ưu điểm: Hoạt động ổn định, có khả năng chịu lỗi tốt, yêu cầu tài

nguyên phần cứng thấp, độ bảo mật cao, miễn phí, được trợ giúp từ cộng đồng sử dụng

Nhược điểm: Khó quản trị và triển khai, nâng cấp và mở rộng tương

đối phức tạp

Do đó, các hệ thống Linux rất phù hợp với các doanh nghiệp vừa và nhỏ (thậm chí là các doanh nghiệp cỡ lớn nếu admin có khả năng xây dựng và quản trị) Chọn triển khai Postfix vì đây là một trong những hệ thống mail phổ biến chạy trên nền Linux, và CentOS cũng là một trong những Distro Linux khá phổ biến và hoạt động tương đối ổn định Và cũng có khá nhiều doanh nghiệp triển khai theo mô hình này

1.2.2.1 Giới Thiệu Postfix

Trang 7

Postfix là một MTA được viết bởi Wietse Venema khi ông đang làm việc ở trung tâm nghiên cứu T J Watson của IBM Đặc điểm của Postfix: dễ quản lý, nhanh, an toàn Chỉ cần một server với hardware thông thường, Postfix có thể chuyển giao hàng triệu email một ngày Ngày nay postfix là một trong nhưng MTA khá phổ biến trên các mail server

1.2.2.2 Giới Thiệu Dovecot

Dovecot là một MAA cung cấp các dịch vụ IMAP và POP3 được cài phổ biến trên các CentOS, Nó là một phần mềm mã nguồn mở được Timo Sirainen viết và phát triển Đặc điểm của Dovecot là: bảo mật, nhanh và dễ quản lý

1.2.2.3 Giới Thiệu SquirrelMail

SquirrelMail là một trong những Web mail phổ biến nhất trên các Mail Server, nó hỗ trợ cả các giao thức IMAP/POP3 và SMTP, được viết bằng PHP4

và là một phần mềm mã nguồn mở, nó giúp người dùng có thể đọc và quản

lý e-mail của mình trong môi trường Web

Với các hệ thống Linux yêu cầu về phần cứng rất bình thường, một server với cấu hình trung bình vẫn có thể cài đặt và chạy ổn định

Về phần các phần mềm trên hệ thống:

- Hệ Điều Hành: CentOS 5.3 Chạy dạng command Line hay đồ họa đều được (chế độ Command Line thì tốn ít ổ cứng, và chạy tốn ít RAM và CPU hơn)

- SMTP Server: Postfix 2.3.3

- POP3/IMAP Server: 1.0.7

- Web Mail: SquirrelMail 1.4.8

- Web Server: Apache 2.2.3 Cần thiết để cho User có thể dùng web mail

- AntiSpam: SpamAssassin 3.2.5

- AntiVirus: ClamAV 0.95.2, Amavisd-new 2.6.4

Ngày nay vấn đề Virus và spam vẫn là những nguy cơ đe dọa đến sự vận hành ổn định của hệ thống, đồng thời nguy cơ mất mát hoặc bị đánh cắp dữ liệu là rất cao, điều này ảnh hưởng trực tiếp đến lợi ích của người dùng và doanh nghiệp

Trang 8

Vì thế khi triển khai xây dựng hệ thống mail cho doanh nghiệp cần phải tính tới các vấn đề về bảo mật chống Spam và Virus

1.3.1.1 Giới thiệu DNS-Base Blocklists

UCE (unsolicited commercial email), hay spam, thường được gửi từ những mail server có vài đặc điểm nhất định Ví dụ, từ những server có cấu hình không hoàn chỉnh (open relay, không tuân thủ tiêu chuẩn RFC), những server không có thông tin rõ ràng về người quản trị (máy kết nối bằng

dial-up, máy không có reverse DNS), hay từ những server chuyên gửi spam Người ta đã lập được danh sách những mail server như vậy, danh sách này được update thường xuyên, gọi chung là RBL (real-time blackhole list), hay DNSBL (DNS-based Blocklist) Ưu điểm của phương pháp này là kiểm tra nhanh ít hao tốn tài nguyên của server vì bước kiểm tra được thực hiện trước khi gửi mail và việc kiểm tra chỉ dựa vào kết quả tìm kiếm của DNS

1.3.1.2 Giới thiệu SpamAsssassin

SpamAssassin phát hiện và đánh dấu spam mail bằng cách phân tích thông tin trong header và nội dung mail SpamAssassin tiêu tốn khá nhiều tài nguyên (cpu, memory, thời gian xử lý) của server, đặc biệt khi phải xử lý những mail có size lớn Ưu điểm của việc dùng SpamAssassin là ít thay đổi cấu hình mặc định của postfix và có thể xây dựng quy tắc kiểm tra spam cho riêng mình

SpamAssassin là một project được phát triển bởi Apache, SpamAssassin được ứng dụng khá nhiều trên các mail server dùng nền Linux

Dùng để chống việc lây lan Virus trong thông qua hệ thống mail, đồng thời hạn chế sự lây lan của Virus khi một máy nào đó trong mạng bị nhiễm Có hai chương trình antivirus phổ biến dùng trên mail server đó là ClamAV và Amavisd-new

1.3.2.1 Giới thiệu ClamAV

ClamAV là một antivirus mã nguồn mở chạy trên hệ thống Linux, nó đặc biệt được thiết kế cho việc quét virus trên mail gateways, nó uyển chuyển dễ cấu hình, và chạy đa luồng dịch vụ Đặc điểm là hoạt động ổn định, nhanh, và tương đối hiệu quả

Trang 9

1.3.2.2 Giới thiệu Amavisd-new

Amavisd-new là một giao tiếp hiệu năng cao, hoạt động giữa MTA và các thành phần kiểm tra nội dung như: Virus scanners, và SpamAssassin Đặc điểm của Amavisd-new là hoạt động nhanh phối hợp các thành phần trong

hệ thống mail

Phần III: TRIỂN KHAI & CÀI ĐẶT

Có hai hình thức cài đặt đó là từ Source và cài đặt tập tin từ binary Thông thường để bảo mật và tối ưu hóa khi cài đặt và để cập nhật phiên bản mới nhất ta nên cài từ source, nhưng nó đòi hỏi người quản trị phải nắm rõ cách biên dịch và cài đặt, đồng thời hiểu rõ chương trình cần cài đặt và nhu cầu của hệ thống Ở đây hướng dẫn cài đặt từ binary (gói rpm) cho đơn giản

 Source Postfix có thể tải tại đây:

ftp://ftp4.tnc.edu.tw/pub1/Postfix/official/postfix-2.6.3.tar.gz

 Tải Source Dovecot tại đây http://www.dovecot.org/releases/1.2/dovecot-1.2.3.tar.gz

 Tải Source SquirrelMail tại http://squirrelmail.org/countdl.php?fileurl=http%3A

%2F%2Fprdownloads.sourceforge.net%2Fsquirrelmail%2Fsquirrelmail-1.4.20-RC2.tar.gz

 Tải Source ClamAV tại http://downloads.sourceforge.net/clamav/clamav-0.95.2.tar.gz

 Tải Source Amavisd-new tại http://www.ijs.si/software/amavisd/amavisd-new-2.6.4.tar.gz

1.1 Cài Đặt Postfix và Dovecot.

1.1.1 Cài Đặt và Cấu Hình Postfix

Cài đặt từ gói rpm ta dùng lệnh yum:

[root@localhost ~]# yum install postfix

Nếu cài đặt postfix sử dụng MySQL làm mail store thì dùng lệnh:

[root@localhost ~]# yum enablerepo=centosplus install postfix mysql-server

Trang 10

Những file cấu hình của Postfix nằm trong thư mục /etc/postfix Để cấu hình một mail server cơ bản, chỉ cần vài thay đổi nhỏ trong những file sau đây /etc/postfix/main.cf: cấu hình cơ bản

Chỉnh sửa tại các dòng sau:

inet_interfaces = all mydestination = $myhostname, localhost.$mydomain, localhost,

$mydomain home_mailbox = Maildir/

Dạng lưu trữ Maildir tốt hơn so với dạng lưu trữ Mailbox, tuy nhiên tùy vào nhu cầu cụ thể mà chọn kiểu lưu trữ cho thích hợp

// chỉ tạo hộp thư cho một user nào đó

$ mkdir $HOME/Maildir

$ mkdir $HOME/Maildir/cur

$ mkdir $HOME/Maildir/new

$ mkdir $HOME/Maildir/tmp

$ chmod -R 700 $HOME/Maildir // tạo hộp thư cho tất cả user (mỗi user sẽ có hộp thư riêng khi tạo user mới)

$ su -

# mkdir /etc/skel/Maildir

# mkdir /etc/skel/Maildir/cur

# mkdir /etc/skel/Maildir/new

# mkdir /etc/skel/Maildir/tmp

# chmod -R 700 /etc/skel/Maildir

Tiến hành khởi động lại postfix

[root@localhost ~]# service postfix restart Shutting down postfix: [ OK ] Starting postfix: [ OK ] [root@localhost ~]#

Bây giờ có thể dùng postfix được rồi Kiểm tra postfix đã hoạt động tốt chưa bằng cách kết nối thử đến cổng 25

[root@localhost ~]# telnet localhost 25 Trying 127.0.0.1

Connected to localhost.localdomain (127.0.0.1).

Escape character is '^]'.

220 localhost.localdomain ESMTP Postfix helo host

Trang 11

250 localhost.localdomain quit

221 2.0.0 Bye Connection closed by foreign host.

Nếu có lỗi phát sinh ta kiểm tra log tại /var/log/mailog

Cài đặt từ gói rpm ta dùng lệnh:

[root@localhost ~]# yum install dovecot

/etc/dovecot.conf file cấu hình cơ bản

Chỉnh sửa file dovecot:

[root@localhost ~]# vi /etc/dovecot.conf

Tìm và sửa các dòng sau:

protocols = pop3 pop3s imap imaps mail_location = maildir:~/Maildir/

pop3_uidl_format = %08Xu%08Xv imap_client_workarounds = delay-newmail outlook-idle netscape-eoh

pop3_client_workarounds = outlook-no-nuls oe-ns-eoh

Tiến hành khởi động lại dovecot:

[root@localhost ~]# service dovecot restart Stopping Dovecot Imap: [ OK ] Starting Dovecot Imap: [ OK ] [root@localhost ~]#

Kiểm tra lại dovecot đã hoạt động tốt chưa bằng cách kết nối đến cổng 110

[root@localhost ~]# telnet localhost 110 Trying 127.0.0.1

Connected to localhost.localdomain (127.0.0.1).

Escape character is '^]'.

+OK Dovecot ready.

quit +OK Logging out Connection closed by foreign host.

Trang 12

Chúng ta đã cài hoàn tất Postfix + Dovecot giờ tiến hành cài đặt webmail với SquirrelMail

1.2 Cài Đặt Webmail Với SquirrelMail

Lưu ý: Trước tiên cần phải cài đặt web server và imap server và php

Cài đặt SquirrelmMail:

[root@localhost ~]# yum install squirrelmail

Cấu hình cho SquirrelMail

[root@localhost ~]#/usr/share/squirrelmail/config/conf.pl

Sẽ thấy như sau:

SquirrelMail Configuration : Read: config.php (1.4.0)

-Main Menu

1 Organization Preferences

2 Server Settings

3 Folder Defaults

4 General Options

5 Themes

6 Address Books

7 Message of the Day (MOTD)

8 Plugins

9 Database

10 Languages

D Set pre-defined settings for specific IMAP servers

C Turn color off

S Save data

Q Quit Command >>

Chọn menu thích hợp và cung cấp những thông tin cần thiết Quan trọng nhất ở bước này là "2 Server Settings", phần IMAP server Sau khi chỉnh sửa xong, chọn "S Save data" (lưu giữ cấu hình) và "Q Quit" (thoát) Cấu hình sẽ được ghi lại trong file "/etc/squirrelmail/config.php" Phần “2 Server Sttings” như sau:

SquirrelMail Configuration : Read: config.php (1.4.0)

Trang 13

-Server Settings

General

-1 Domain : localhost

2 Invert Time : false

3 Sendmail or SMTP : Sendmail

A Update IMAP Settings : localhost:143 (uw)

B Change Sendmail Config : /usr/sbin/sendmail

R Return to Main Menu

C Turn color off

S Save data

Q Quit Command >>

Kiểm tra lại lần cuối

[root@localhost ~]# vi /etc/squirrelmail/config.php

Phần chính của file /etc/squirrelmail/config.php thường có cấu trúc như sau:

### -

$org_name = "My Webmail Service";

$squirrelmail_default_language = 'en_US';

$domain = 'real.domain.name';

$imapServerAddress = 'localhost';

$imapPort = 143;

$useSendmail = true;

$smtpServerAddress = 'localhost';

$smtpPort = 25;

$sendmail_path = '/usr/sbin/sendmail';

// trườngng hợp IMAP server là courier-imap

$imap_server_type = 'courier';

$default_folder_prefix = 'INBOX.';

$trash_folder = 'Trash';

$sent_folder = 'Sent';

$draft_folder = 'Drafts';

### -Chạy SquirrelMail bằng cách gõ http://localhost/webmai

Ngày đăng: 23/05/2015, 17:27

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w