Trong bài viết này Adminvietnam sẽ hướng dẫn các bạn cách cấu hình một local mail server với Postfix, Dovecot và Squirrelmail trên CentOS 7 . Vì đây chỉ là server dùng để gửi/nhận mail trong nội bộ nên bạn không thể gửi hoặc nhận mail như Gmail , Yahoo .. . Tuy nhiên nếu bạn muốn gửi/nhận mai từ bên ngoài bạn có thể cấu hình mail server bằng IP Public , và liên hệ với ISP để tạo MX record trên DNS server của họ
Chuẩn bị
- Máy CentOS 7
IP: 192.168.2.123
Hostname : server.adminvietnam.org
1. Prerequisites
-
Remove sendmail
# yum remove sendmail
Cài đặt DNS server , thêm Mail Server MX record vào forward và reverse zone . Bạn có thể tham khảo cách cài đặt DNS server trên CentOS 7 tại đây
-
Tắt SELinux
# nano /etc/sysconfig/selinux
Thay SELINUX=enforcing thành SELINUX=disabled
SELINUX=disabled
-
Cài đặt EPEL Repository
rpm -ivh http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-6.noarch.rpm
Mở port 80 trên firewall
firewall-cmd --permanent --add-port=80/tcp
Khởi động lại firewall
firewall-cmd --reload
2. Install , configure and testing Postfix
-
Install Postfix
yum install postfix
-
Configure Postfix
Edit file /etc/postfix/main.cf
# nano etc/postfix/main.cf
## Uncomment và đặt mail server FQDN ## myhostname = server.adminvietnam.org ## Uncomment và đặt domain ## mydomain = adminvietnam.org ## Uncomment ## myorigin = $mydomain ## Uncomment và đặt ipv4 ## inet_interfaces = all ## Đổi thành all ## inet_protocols = all ## Comment ## #mydestination = $myhostname, localhost.$mydomain, localhost, ## Uncomment ## mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain ## Uncomment và thêm dải ip ## mynetworks = 192.168.1.0/24, 127.0.0.0/8 ## Uncomment ## home_mailbox = Maildir/
Save file
Start/restart dịch vụ Postfix
# systemctl enable postfix # systemctl restart postfix
-
Testing Postfix
Trước tiên tạo user ‘luanpm‘ và đặt password
# useradd luanpm # passwd luanpm
Cài telnet
# yum install telnet
Kiểm tra
# telnet localhost smtp
Lưu ý : Những dòng in đậm dưới đây là do bạn nhập vào
Trying ::1...
Connected to localhost.
Escape character is '^]'.
220 server.admivietnam.org ESMTP Postfix
ehlo localhost
250-server.admivietnam.org
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
mail from:<luanpm>
250 2.1.0 Ok
rcpt to:<luanpm>
250 2.1.5 Ok
data
354 End data with <CR><LF>.<CR><LF>
Welcome to Adminvietnam mail server
.
250 2.0.0 Ok: queued as 9AC752110D
quit
221 2.0.0 Bye
Connection closed by foreign host.
Chuyển đến thư mục của user ‘luanpm’ để xem mail đã nhận đc
# cd /home/luanpm/Maildir/new/
# cat 1460264935.Vfd00Ic4dd6M808471.server.adminvietnam.org
Như vậy Postfix đã hoạt động
3. Install , configure and testing Dovecot
-
Cài đặt Dovecot
# yum install dovecot
-
Cấu hình Dovecot
Sửa file dovecot.conf
# nano /etc/dovecot/dovecot.conf
## Umcomment ## protocols = imap pop3 lmtp
Sửa file 10-mail.conf
# nano /etc/dovecot/conf.d/10-mail.conf
## Uncomment ## mail_location = maildir:~/Maildir
Sửa file 10-auth.conf
# nano /etc/dovecot/conf.d/10-auth.conf
## Uncomment ##
disable_plaintext_auth = yes
## Thêm từ : "login" ##
auth_mechanisms = plain login
Sửa file 10-master.conf
# nano /etc/dovecot/conf.d/10-master.conf
## Uncomment và thêm "postfix"
#mode = 0600
user = postfix
group = postfix
Khởi động dịch vụ Dovecot
# systemctl enable dovecot # systemctl start dovecot
-
Testing Dovecot
# telnet localhost pop3
Lưu ý : Những dòng in đậm dưới đây là do bạn nhập vào
Trying ::1... Connected to localhost. Escape character is '^]'. +OK Dovecot ready. user luanpm +OK pass 123456 +OK Logged in. retr 1 +OK 447 octets Return-Path: <[email protected]> X-Original-To: luanpm Delivered-To: [email protected] Received: from localhost (localhost [IPv6:::1]) by server.admivietnam.org (Postfix) with ESMTP id 9AC752110D for <luanpm>; Sun, 10 Apr 2016 12:07:49 +0700 (ICT) Message-Id: <[email protected]> Date: Sun, 10 Apr 2016 12:07:49 +0700 (ICT) From: [email protected] Welcome to Adminvietnam mail server . quit +OK Logging out. Connection closed by foreign host.
3. Install , Configure Squirrelmail
-
Cài đặt Squirrelmail
# yum install squirrelmail
-
Cấu hình Squirrelmail
# cd /usr/share/squirrelmail/config/
# ./conf.pl
Một list các lựa chọn cài đặt sẽ hiện ra . Bạn chọn số ‘2‘ để vào phần cài đặt server
Phần cài đặt server , bạn tiếp tục chọn ‘3‘ để thay đổi Sendmail thành SMTP
Sau khi chọn ‘3’ bạn sẽ nhận được thông báo chọn tiếp ‘2’
Sau đó bấm ‘S‘ để save và ‘Q‘ để thoát
-
Tạo Squirrelmail Virtualhost trong apache config
# nano /etc/httpd/conf/httpd.conf
Thêm các dòng sau vào cuối file
Alias /webmail /usr/share/squirrelmail <Directory /usr/share/squirrelmail> Options Indexes FollowSymLinks RewriteEngine On AllowOverride All DirectoryIndex index.php Order allow,deny Allow from all </Directory>
Khởi động lại dịch vụ Apache
# systemctl restart httpd
Truy cập vào webmail để kiểm tra http://192.168.2.123/webmail
Nếu đăng nhập bị lỗi thì các bạn có thể sửa lỗi như sau
# /usr/sbin/setsebool httpd_can_network_connect=1
Đăng nhập vào webmail thành công
LuanPM – Adminvietnam.org