Lab Linux – Triển khai hệ thống mail server Postfix – p1

Các phần sẽ được tìm hiểu trong bài này và những bài tiếp theo về mail server Postfix bao gồm:

+ Cài đặt và cấu hình cơ bản

+ Cấu hình cho phép duyệt mail bằng WEB, POP và IMAP

+ Cấu hình SpamAssassin để chống spam

+ Cấu hình Antivirus để duyệt virus cho mail.

+ Triển khai hệ thống giám sát mail server.

Phần 1: Triển khai hệ thống Mail Server Postfix

Mục tiêu:

+ Cài đặt và cấu hình thành công hệ thống mail server PostFix có khả năng gửi và nhận email.

+ Chúng ta sẽ cầu hình mail server cho domain VINASTAR.com.vn, với hai account nv1@VINASTAR.com.vn và nv2@VINASTAR.com.vn có thể gửi mail qua lại cho nhau. Và tên máy chủ là mail.VINASTAR.com.vn

Chuẩn bị:

+ Máy linux chạy phiên bản CentOS bất kỳ.

+ Đĩa DVD chứa bộ souce cài đặt, để lấy các gói cài đặt cần thiết, nếu không có phải đi tải những gói cài đặt khi cần từ internet.

+ Một việc vô cùng quan trọng, không thể thiếu trong hệ thống mail là DNS Server. Chúng ta cần phải có DNSphân giải cho tên miền VINASTAR.com.vn. Để thực hiện phần này bạn vui lòng xem lại những bài viết trước.

Giới thiệu

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.

Thực hiện

Bước 1:  Cài đặt postfix từ gói rmp có trong đĩa DVD đã được mount lên hệ thống, hoặc tải về từ internet. Gói cài đặt có tên là: postfix-*.rpm

Bước 2: Tìm hiểu file cấu hình

Mở file cấu hình /etc/postfix/main.cf Chúng ta sẽ cùng khảo sát một vài thông số cơ bản như sau: (Lưu ý: Giữ nguyên vị trí các dòng trong file)

+ Dòng 70: tên máy chủ, thay đổi cho thích hợp

myhostname = mail.VINASTAR.com.vn

+ Dòng 77: Tên domain nhận mail

mydomain = VINASTAR.com.vn

+ Dòng 93: thông số myorigin chỉ định phương thức thống nhất giữa địa chỉ người gửi và địa chỉ người nhận theo hostname hay theo domain name. Ở đây bạn nên chọn theo domain. Bỏ dấu # phía trước dòng 93 đi, và kiểm dòng 92 có dấu #

#myorigin = $myhostname
myorigin = $mydomain

+ Dòng 107: Thông số inet_interfaces chỉ ra interface sẽ dùng để nhận mail. Bạn bỏ dấu # trước dòng 107 đi, để chỉ định nhận mail ở tất cả các interface, còn lại các dòng có thông số này bạn chèn thêm dấu # vô.

inet_interfaces = all
#inet_interfaces = $myhostname
#inet_interfaces = $myhostname, localhost
#inet_interfaces = localhost

+ Dòng 156: Thông số mydestination cho phép chỉ nhận mail đến từ domain nào đó. Bỏ dấu # dòng 165 đi, và chèn thêm dấu # ở dòng 155, để cho phép nhận mail từ mọi domain.

#mydestination = $myhostname, localhost.$mydomain, localhost
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
#mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain,

+ Dòng 255: Thông số mynetwork bạn chỉ ra đường mạng nhận mail Trong ví dụ này là 192.168.40.140/24, vì máy tính của tôi đang trong đường mạng 192.168.40.0 subnet mask 255.255.255.0

mynetworks = 192.168.40.0/24
#mynetworks = $config_directory/mynetworks
#mynetworks = hash:/etc/postfix/network_table

Bước 3: Chuyển qua postfix.

Mặc định, máy linux đã có sẳn chương trình sendmail chịu trách nhiệu gửi thư. Send Mail cũng là một MTA mặc định được cài sẵn trong linux. Chúng ta đang cài cho postfix, vì vậy chúng ta phải tắt dịch vụ sendmail đi

[root@server ~]# service sendmail stop
Shutting down sm-client:                                   [  OK  ]
Shutting down sendmail:                                    [  OK  ]

Tắt sendmail xong chưa đủ, bạn còn phải chuyển MTA sang sử dụng postfix làm máy chủ gửi mail. Dùng lệnh alternatives –config mta sau đó chọn số 2 tương ứng với dịch vụ postfix.

[root@server ~]# alternatives –config mta

There are 2 programs which provide ‘mta’.

Selection    Command
———————————————–
*+ 1           /usr/sbin/sendmail.sendmail
2           /usr/sbin/sendmail.postfix

Enter to keep the current selection[+], or type selection number: 2

Bước 4: Khởi động dịch vụ postfix lên nữa là xong.

[root@server ~]# service postfix start
Starting postfix:                                          [  OK  ]

Kiểm tra lại dịch vụ postfix là giao thức STMP hoạt động ở port 25 đang trong trạng thái lắng nghe.
[root@server ~]# netstat -anp |grep :25
tcp        0      0 0.0.0.0:25                  0.0.0.0:*                   LISTEN      7116/master

Bước 5: Để kiểm tra dịch vụ hoạt động đúng không chúng ta sẽ tạo 2 user nv1 và nv2 điểm kiểm tra việc gửi mail.

Tạo user bằng lệnh useradd bình thường

Bước 6: Gửi mail để kiểm tra

Do chúng ta chưa có trình gửi và nhận mail cho client, nên bước này thực hiện hơi phức tạp một chút. Bạn dùng telnet vào port 25 trên máy mail server để kiểm tra việc gửi và nhận mail nhé. Thực hiện như sau:

Sử dụng một máy tính khác, hoặc chính máy mail server cũng được. Dùng lệnh telnet để telnet vào mail server: Bạn gõ lần lượt các lệnh dưới đây, mỗi lệnh cách nhau bằng phím enter. Lưu ý là nếu sai bạn cứ bấm enter rồi gõ lại lệnh đã gõ sai, vì bạn không thể sửa lệnh gõ sai được.

HELO VINASTAR.com.vn
MAIL FROM:nv1@ab^H
MAIL FROM:nv1@VINASTAR.com.vn
RCPT TO:nv2@VINASTAR.com.vn
DATA
Day la noi dung mail thu nghiem
.
QUIT

Lưu ý: Có 1 dấu chấm trong để kết thúc nội dung mail, xem thật kỹ code tôi đưa các bạn, có dấu chấm.

Sau đó, bạn logon với user là nv2, dùng chương trình mail có sẵn trong linux để kiểm tra có một email đã được gửi đến nv2

[nv2@server ~]$ mail
Mail version 8.1 6/6/93.  Type ? for help.
“/var/spool/mail/nv2″: 1 message 1 new
>N  1 nv1@vinastar.net        Wed Jan  5 20:35  14/500
& 1
Message 1:
From nv1@vinastar.net  Wed Jan  5 20:35:49 2011
X-Original-To: nv2@vinastar.net
Delivered-To: nv2@vinastar.net
Date: Wed,  5 Jan 2011 20:34:59 +0700 (ICT)
From: nv1@vinastar.net
To: undisclosed-recipients:;

Day la noi dung mail thu nghiem
&

Đến đây chúng ta tạm dừng bài này, để có được hệ thống mail server hoàn chỉnh chúng ta còn cả một chặn đường gian lao phía trước. Các bạn đừng bỏ cuộc.

這篇文章有幫助嗎? 2 Users Found This Useful (4 Votes)