CHIA SẺ:

Việc cài đặt thành công một Mail Server luôn đòi hỏi người dùng nhiều kiến thức kỹ thuật để cấu hình, khiến các module kết nối được với nhau. May thay, hiện đang có khá nhiều giải pháp để bạn có thể thực hiện việc tạo Mail Server nhanh chóng, ví dụ như iRedMail.

Trong bài này, mình sẽ hướng dẫn các bạn xây dựng một Mail Server hoàn chỉnh với iRedMail trên Ubuntu deloy trên VPS Vultr.

Lưu ý cần thực hiện đầy đủ theo từng bước để đảm bảo email gửi đi không bị rơi vào Spam hoặc Junk.

1. Deploy VPS ở Vultr

iRedMail hỗ trợ rất nhiều Linux distribution, nhưng mình sẽ lựa chọn Ubuntu 14.04 x64 cho dễ dàng. Server Size chọn gói 768MB RAM, 5$/tháng để thử nghiệm thôi. Trong quá trình dùng nếu cần bạn hãy nâng cấp server lên tương ứng.

Tên miền mình sử dụng là pibox.vn cho bài viết này, DNS quản lý ở CloudFlare. Đây là một tên miền mới nhé, nên khả năng cao email gửi đi sẽ bị vào Spam. Mình sẽ dùng tên miền này để tìm cách đảm bảo email gửi đi vào được Inbox.

Sau khi tạo Deploy xong VPS ở Vultr, bạn hãy vào tab IPv4 để update Reverse DNS về mail.pibox.vn. Nhớ trỏ record mail của tên miền về địa chỉ IP của VPS nữa nhé.

Reverse DNS

Tạo MX  record

– Để nhận được mail, bạn hãy tạo record MX với name là pibox.vn, Server: mail.pibox.vn và Priority mặc định 1

– Ngoài ra, để xác nhận chính xác mail được gửi đi từ server, bạn cần thêm một record SPF nữa. Record type: TXT, Name: pibox.vn với Content: v=spf1 ip4:IP_ADDRESS -all

Kết quả tương tự như hình bên dưới:

DNS

Để test SPF record bạn có thể sử dụng http://mxtoolbox.com với câu lệnh: spf:domain.com

Thay đổi hostname

Đảm bảo hostname của VPS được chuyển thành pibox.vn.

echo "pibox.vn" > /etc/hostname
hostname -F /etc/hostname

Thay đổi tiếp trong file hosts

nano /etc/hosts

Thêm một dòng chứa IP nếu chưa có, ví dụ của mình:

45.32.70.38     mail.pibox.vn

Nhớ restart lại VPS và chạy lệnh hostname xem đã chuẩn chưa nhé.

2. Cài đặt iRedMail

Mình cài đặt bản mới nhất iRedMail 0.9.2.

wget https://bitbucket.org/zhb/iredmail/downloads/iRedMail-0.9.2.tar.bz2
tar jxvf iRedMail-0.9.2.tar.bz2 && cd iRedMail-0.9.2
bash iRedMail.sh

Đợi một lúc bạn sẽ thấy giao diện cài đặt của iRedMail, nếu không yêu cầu gì đặc biệt bạn cứ để chọn mặc định

iRedMail 1

Tiếp theo chọn mail storage:

iRedMail Mail Storage

Chọn Web Server, mình quen dùng Nginx nên để mặc định luôn

iRedMail Web Server

Database để MySQL, quen rồi

iRedMail Database

Nhập mật khẩu root MySQL

iRedMail MySQL root Password

Nhập vào iRedMail Virtual Domain, do ban đầu mình để hostname là mail.pibox.vn nên lúc này mới nhập được pibox.vn

iRedMail Virtual Domain

Mật khẩu cho tài khoản quản trị postmaster@pibox.vn. Tài khoản này sẽ dùng để cấu hình Mail Server, thêm/sửa/xóa user đó.

iRedMail Admin Password

Tùy chọn bổ sung cài cùng với iRedMail

iRedMail Optional

Xác nhận cuối cùng trước khi cài đặt, nhập y rồi nhấn Enter

iRedMail Xac Nhan

Bạn đợi một lúc cho iRedMail tự động cài đặt. Cuối cùng, hãy reboot lại VPS một lần nữa để hoàn tất quá trình.

Toàn bộ thông tin cần thiết được lưu ở file /root/iRedMail-0.9.2/iRedMail.tips, bạn có thể mở ra để xem và lưu lại một nơi an toàn khác.

Bây giờ bạn đã có thể truy cập vào link http://mail.pibox.vn với tài khoản quản trị postmaster@pibox.vn được rồi đó. Giao diện webmail Roundcube quen thuộc sẽ xuất hiện như bên dưới:

Roundcube

Để vào phần quản lý, hãy truy cập link iRedAdmin: https://mail.pibox.vn/iredadmin/ với Username postmaster@pibox.vn và password bạn chọn ban đầu.

Lưu ý: iRedMail sử dụng self-signed certificate nên khi đăng nhập bạn sẽ nhận được thông báo Your connection is not private. Hãy nhấn Advanced rồi Proceed để tiếp tục:

Certificate Error

Cấu hình DKIM record

Để đảm bảo khi gửi mail từ iRedMail không bị vào mục Spam, bước tiếp theo cần cấu hình DKIM record cho tên miền. Bạn hãy tìm thông tin DKIM có trong file /root/iRedMail-0.9.2/iRedMail.tips. Ví dụ như của mình:

; key#1, domain pibox.vn, /var/lib/dkim/pibox.vn.pem
dkim._domainkey.pibox.vn.       3600 TXT (
  "v=DKIM1; p="
  "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAvBh8kHyXP9FHFsBAhv0J"
  "H38XIptXBAFfwavCu+Cfhq/YG2Qj5s6XAXX7C2SU6cKNjBNDvNjZy3hTP5lJnddh"
  "igdv2cKO144TJ7yT7SXxw5YG8Wa93Cuj5yqSPMjB3WizHF0eYZTyAm8/7QEeQrZi"
  "0vG8CuYz/QebeMV6h7xR7L+XwAgsyiNvsy/6IhPJC16PA6/kdw1lHLUiZyYL2H3Y"
  "t8BvygFT8pzscVf1CZk0kDDSa9x3ZN88gASoSyB3SkMPPVm39EHttHNzZr7ddxXN"
  "laFYfTehyKRRM8YAu6xwfGnbtY3vM3suY3DsYyQilv+cTQ4EsJzM7gzLsTzNpp1/"
  "zQIDAQAB")

Hãy đăng nhập vào phần quản lý DNS của tên miền, tạo thêm một TXT record mới với Name là dkim._domainkey.pibox.vn., Content: v=DKIM1; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAvBh8kHyXP9FHFsBAhv0JH38XIptXBAFfwavCu+Cfhq/YG2Qj5s6XAXX7C2SU6cKNjBNDvNjZy3hTP5lJnddhigdv2cKO144TJ7yT7SXxw5YG8Wa93Cuj5yqSPMjB3WizHF0eYZTyAm8/7QEeQrZi0vG8CuYz/QebeMV6h7xR7L+XwAgsyiNvsy/6IhPJC16PA6/kdw1lHLUiZyYL2H3Yt8BvygFT8pzscVf1CZk0kDDSa9x3ZN88gASoSyB3SkMPPVm39EHttHNzZr7ddxXNlaFYfTehyKRRM8YAu6xwfGnbtY3vM3suY3DsYyQilv+cTQ4EsJzM7gzLsTzNpp1/zQIDAQAB

Để đảm bảo chính xác, check lại record một lần nữa với tool http://mxtoolbox.com/dkim.aspx, Domain Name: pibox.vn; Selector: dkim

Cấu hình cuối cùng của tên miền pibox.vn như sau:

DNS Pibox

3. Kết quả

Cuối cùng, mình đã cài đặt thành công một Mail Server với iRedMail. Đặc biệt Mail Server hoạt động độc lập với Web Server.

Đường link để đăng nhập có dạng http://mail.pibox.vn; email có dạng account@pibox.vn. Tất nhiên bạn sẽ tạo được không giới hạn số tài khoản với iRedMail.

Cuối bước cài đặt mình có gửi thử mail đến Gmail và Live, kết quả vào ngay Spam. Sau mấy ngày mày mò, cuối cùng đã phát hiện ra một số điểm mấu chốt bạn cần lưu ý khi cài đặt để gửi mail không vào Spam (tất cả đều đã được nhắc đến trong bài hướng dẫn).

Để email không bị coi là Spam cần lưu ý:

  1. Cấu hình đầy đủ SPF record, DKIM record cho tên miền.
  2. VPS cần cấu hình hostname chuẩn, nhớ restart lại VPS để check lại một lần nữa.
  3. VPS cần cấu hình Reverse DNS chuẩn. Thường mất vài tiếng đến cả ngày mới update xong rDNS nên bạn cần kiên nhẫn.
  4. Với mỗi tài khoản mail, cần phải có Display Name. Cài đặt trong phần Settings/Identities/Display Name. Nên tạo tài khoản mới để test sendmail, đừng dùng tài khoản postmaster.
  5. Cuối cùng cần đảm bảo IP của bạn không bị liệt vào danh sách blacklist: http://mxtoolbox.com/blacklists.aspx

Lưu ý: mình không khuyến khích các bạn tự cài đặt một Mail Server, nên sử dụng các dịch vụ trung gian cho email để đảm bảo hệ thống hoạt động ổn định, ví dụ như:

  • Google Apps
  • Zoho
  • Gandi (5 email address, 1.000 forwarding addresses )
  • GoDaddy (100 email alias)

Chúc các bạn thành công!

29 Comments

  1. Loi 21

    Cho mình hỏi là mình áp dụng các bước này trên VPS centos 6.5 của DO có ổn không?
    Mình muốn deploy trên VPS của DO sử dụng centos 6.5 🙂

    1. Luân Trần Admin

      Được nhé, nhưng quá trình cài đặt có thể khác, mình chưa thử trên CentOS

  2. Nhungnt 5

    Admin cho em hỏi là em cài trên VPS ở DO ok rồi nhưng em thực hiện gửi email đến gmail thì chỉ được đúng 1 lần.
    Sau đó em gửi email trong nội bộ thì cũng không nhận được. Không biết nguyên nhân vì sao nhỉ 🙁

    1. Luân Trần Admin

      Cái này có rất nhiều nguyên nhân, bạn check lại cẩn thận từng vấn đề một thôi. Cái gì nghi ngờ thì báo lại mình check.

  3. Nhungnt 5

    Gửi email không được. Về sau nó tự gửi email lại với nội dung như thế này bác ạ:

    This is the mail system at host mail.domain.com.

    I’m sorry to have to inform you that your message could not
    be delivered to one or more recipients. It’s attached below.

    For further assistance, please send mail to postmaster.

    If you do so, please include this problem report. You can
    delete your own text from the attached returned message.

    The mail system

    : connect to 127.0.0.1[127.0.0.1]:10024: Connection
    refused

  4. Quy 1

    Mình đang có nhu cầu gửi khoảng 1 triệu email / 1 tháng tới người dùng. Nếu sử dụng các dịch vụ SMTP service thì giá hơi đắt. Mình đã cài đặt thành công mail server theo hướng dẫn của bạn. Liệu mình có thể sử dụng mail server này để gửi khối lượng email như trên không? Mình gửi 1 vài email thì thấy vào inbox. Liệu gửi khối lượng lớn smtp có vào spam?

    Cám ơn bạn.

    P/s: Trong bài hướng dẫn của bạn hình như không đúng: echo “pibox.vn” > /etc/hostname, nên thay thế bằng dòng: echo “mail.pibox.vn” > /etc/hostname

  5. Phuong 11

    hostname là pibox.vn hay mail.pibox.vn thế bạn??
    Mình đang để host name là fususu.com và làm như bạn nói.
    Nhưng iRedmail lúc tới đoạn điền first domain name nó lại hiện ko được giống serve name: fususu.com 🙁

    1. Luân Trần Admin

      Nội dung bài viết là mình deploy một server mới với địa chỉ mail.pibox.vn, để không ảnh hưởng đến hoạt động chính của server pibox.vn.

  6. cuong 1

    Anh ơi anh có bài hướng dẫn cài roundcube webmail trên Centos 7 không ạ ,cài iredmail em không hiểu cái bước Tạo MX record ạ em dùng tên miền ở 1 and 1 ạ a hướng dẫn em bước này với với, và a có cách nào tạo 1 webmail roundcuber cho người mới bắt đầu như em không ạ vì kiến thức và hệ điều hành này hoàn toàn mới với em thời gian gấp quá em chưa kịp tìm hiểu hết có gì a đọc được và giúp em ạ.
    Cám ơn anh.

    1. Luân Trần Admin

      Cái này mà bạn còn không cái được thì tự cài không nổi đâu, dùng script là nhanh nhất rồi đó.

  7. trung 1

    Chào anh.
    Cho em hỏi cài đặt hostname của VPS được chuyển thành pibox.vn khi cài xong iredmail nó báo vào đường link ví dụ là https://pibox.vn/mail/ để vào roundcube
    vào https://pibox.vn/iredadmin
    khi vào theo link trên đó thì có dòng chữ: Welcome to nginx!
    và không thấy webmail đâu ạ
    trong khí đó mình đang cần vào mail.pibox.vn
    lỗi này là ở đoạn nào vậy.

  8. Tình 2

    Admin cho mình hỏi cấu hình VPS tối thiểu đề cài webmail này bao nhiều vậy ?
    Cám ơn admin nhiều.

  9. KIen Nguyen 4

    A luân ơi, sau khi cài xong, ví dụ: e vào địa chỉ example.com hoặc mail.example.com nó đều bị nhảy vào trang đang nhập mail.example.com/mail . Có cách nào để trang example.com không bị default direct tới trang đăng nhập mail không anh?

    1. Luân Trần Admin

      Trang chính bạn trỏ sang hosting hoặc IP server khác thôi, không trỏ về server mail nữa

  10. KIen Nguyen 4

    Hi anh, em cảm ơn anh. Cho e hỏi thêm là hiện giờ em muốn dùng server đó vừa làm web server, vừa làm mail server có được ko anh? Nếu được anh chỉ qua cho e hướng làm với.

    1. Luân Trần Admin

      Việc cài đặt khá là khó khăn, gần như không thể nhé. Tốt nhất bạn làm server mail riêng ấy.

  11. Huy 1

    Hỏi bây giờ ko biết có trễ quá không

    Bác ơi cho hỏi sao mình cài đến bước chọn database thì không đi tiếp được nữa , chọn cái nào nó cũng đứng ở màn hình đó

    Mình dùng vps Linode và xài Ubuntu bản 14.04,
    server chưa cài bất cứ gì, chỉ chạy apt-update và upgrade , chỉnh hostname xong là cài iredmail

    Tks bác

Comment của bạn

Your email address will not be published. Required fields are marked *