Hướng dẫn cài đặt Mailcow

Mailcow là một email server mã nguồn mở, được thiết kế cho Docker, giúp đơn giản hóa việc thiết lập các dịch vụ email trên Linux. Mailcow tích hợp các thành phần thiết yếu như chuyển thư, ứng dụng email trực tuyến và các tính năng bảo mật vào một hệ thống, khiến nó trở nên lý tưởng cho những ai đang tìm kiếm một máy chủ email đơn giản và mạnh mẽ.

Tại sao chọn Mailcow làm Email Server trên Linux

Mã nguồn mở famework của Mailcow đảm bảo cập nhật thường xuyên và cải tiến bảo mật. Khả năng tương thích Docker của nó giúp dễ dàng cài đặt và quản lý trên các bản phân phối Linux khác nhau. Nền tảng này thân thiện với người dùng, có giao diện web để dễ dàng cấu hình và bảo trì. Sự kết hợp giữa khả năng truy cập, bảo mật và tính dễ sử dụng này khiến Mailcow trở thành lựa chọn hàng đầu để thiết lập máy chủ email đáng tin cậy trên Linux. 

Tìm hiểu về Mailcow

Các tính năng của Mailcow

  • Bộ công cụ tích hợp : Mailcow gói một loạt các công cụ và dịch vụ email cần thiết. Điều này bao gồm MTA, máy chủ IMAP/POP3, ứng dụng email trực tuyến cũng như các cơ chế chống thư rác và chống vi-rút. Sự tích hợp này giúp đơn giản hóa việc quản lý các dịch vụ email, cung cấp giải pháp toàn diện cho mọi nhu cầu về email. 
  • Giao diện thân thiện với người dùng : Phần mềm đi kèm với SOGo, giao diện dựa trên web giúp đơn giản hóa việc quản lý tài khoản email, tên miền và cài đặt máy chủ. Giao diện này trực quan và dễ tiếp cận, giúp người dùng ở mọi cấp độ kỹ năng dễ dàng quản lý máy chủ email của họ một cách hiệu quả. 
  • Bảo mật và quyền riêng tư : Mailcow chú trọng vào bảo mật. Nó bao gồm các tính năng tích hợp như mã hóa SSL/TLS, lọc thư rác và quét vi-rút, đảm bảo rằng thông tin liên lạc qua email của bạn được an toàn và riêng tư. Các bản cập nhật thường xuyên của cộng đồng mã nguồn mở cũng có nghĩa là máy chủ vẫn được bảo vệ trước các lỗ hổng bảo mật mới nhất. 

Lợi ích của Mailcow

  • Khả năng tương thích của Docker : Việc chứa Docker cho phép triển khai và mở rộng dễ dàng. Bằng cách chạy Mailcow trong các Docker containers, nó đảm bảo một môi trường nhất quán và tách biệt, giảm xung đột với các thành phần hệ thống khác và đơn giản hóa việc cập nhật và bảo trì. 
  • Tùy chỉnh và linh hoạt : Mặc dù Mailcow hoạt động vượt trội với các giá trị mặc định hợp lý nhưng nó cũng cung cấp các tùy chọn tùy chỉnh mở rộng. Quản trị viên có thể điều chỉnh nhiều cài đặt khác nhau để điều chỉnh máy chủ theo yêu cầu cụ thể.
  • Hỗ trợ cộng đồng tích cực : Là mã nguồn mở, Mailcow được hưởng lợi từ cộng đồng nhà phát triển và người dùng. Cộng đồng này góp phần cải tiến liên tục, cung cấp hỗ trợ và phát triển các tính năng và plugin bổ sung, nâng cao chức năng tổng thể của Mailcow. 
  • Hiệu quả về chi phí : Là một giải pháp mã nguồn mở và miễn phí, Mailcow là một giải pháp thay thế hiệu quả về mặt chi phí cho các máy chủ email thương mại mà không ảnh hưởng đến các tính năng hoặc hiệu suất. Điều này làm cho nó đặc biệt hấp dẫn đối với các doanh nghiệp vừa và nhỏ và người dùng cá nhân. 

Yêu cầu cấu hình

Yêu cầu phần cứng

  • CPU: Nên sử dụng tối thiểu 2 core CPU cho chức năng Mailcow cơ bản. Để có lưu lượng email cao hơn, nên sử dụng 4 core CPU hoặc tốt hơn. 
  • Bộ nhớ : Cần ít nhất 2 GB RAM. Để có hiệu suất tối ưu, đặc biệt là trong môi trường có nhiều người dùng hoặc lượng email lớn, nên ưu tiên 4 GB trở lên. 
  • Lưu trữ : Cần có tối thiểu 20 GB dung lượng lưu trữ.
  • Mạng : Kết nối internet ổn định với địa chỉ IP tĩnh.

Yêu cầu phần mềm

  • Phân phối Linux : Mailcow tương thích với hầu hết các bản phân phối Linux hiện đại. DebianUbuntu thường được khuyên dùng do khả năng sử dụng rộng rãi và khả năng tương thích của chúng. 
  • Docker và Docker Compose : Vì Mailcow chạy trong các bộ chứa Docker nên hãy đảm bảo rằng Docker và Docker Compose có sẵn trên bản phân phối Linux của bạn. 
  • Chứng chỉ SSL/TLS : Bạn có thể lấy chứng chỉ này từ cơ quan cấp chứng chỉ (CA) hoặc sử dụng Let Us Encrypt để có chứng chỉ miễn phí. 

Cài đặt Mailcow

Cấu hình DNS

  • Record A : Trỏ tên miền của bạn (ví dụ: mail.domain.com) tới địa chỉ IP của máy chủ. 
  • Record MX : Trỏ bản ghi MX cho tên miền đến máy chủ Mailcow của bạn với priority bằng 5 (ví dụ: mail.domain.com). 
  • Record SPF : Tạo bản ghi SPF để ngăn chặn việc giả mạo email (ví dụ: v=spf1 mx ~all). 
  • DKIM và DMARC : sẽ được định cấu hình sau khi cài đặt trong Mailcow. 

Chuẩn bị môi trường

Cài đặt package screen

Luôn duy trì thói quen sử dụng screen mode để nếu máy tính của SysAdmin bị rớt mạng đột ngột thì quá trình cài đặt software trên server cũng không bị gián đoạn

apt-get install screen -y
wget https://vhost.vn/tmp/screenrc
mv screenrc .screenrc

Thiết lập hostname là “mail“, FQDN là “mail.domain.com

hostnamectl set-hostname mail.domain.com

Điều chỉnh timezone tương ứng múi giờ của quốc gia

timedatectl set-timezone Asia/Ho_Chi_Minh

Cập nhật hệ điều hành lên phiên bản mới nhất và cài đặt các software yêu cầu cơ bản

sudo apt update 
sudo apt upgrade -y
sudo apt install curl git apt-transport-https ca-certificates gnupg2 software-properties-common -y

Cài đặt Docker

  • Debian:
curl -fsSL https://download.docker.com/linux/debian/gpg | gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/debian $(lsb_release -cs) stable" | tee /etc/apt/sources.list.d/docker.list
  • Ubuntu:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | tee /etc/apt/sources.list.d/docker.list

Cập nhật lại packages:

apt update

Cài đặt Docker:

apt install docker-ce docker-ce-cli -y

Tải Docker Compose:

curl -L https://github.com/docker/compose/releases/download/v$(curl -Ls https://www.servercow.de/docker-compose/latest.php)/docker-compose-$(uname -s)-$(uname -m) > /usr/local/bin/docker-compose

Gán quyền thực thi:

chmod +x /usr/local/bin/docker-compose

Cài đặt Mailcow

Clone kho lưu trữ Mailcow:

cd /opt
git clone https://github.com/mailcow/mailcow-dockerized
cd mailcow-dockerized

Thực thi tệp cấu hình:

./generate_config.sh
  • Nhập FQDN của máy chủ của bạn (mail.domain.com) và nhấn Enter.
  • Bạn có thể bỏ qua câu hỏi về múi giờ bằng cách nhấn Enter.
  • Cuối cùng, chọn nhánh “master” bằng cách gõ ” 1 ” và nhấn Enter.

Bạn có thể tùy chỉnh cấu hình tại file:

nano mailcow.conf

Ví dụ: Bạn đã cài đặt máy chủ web và do đó bạn phải sử dụng các cổng khác (” HTTP_PORT ” và ” HTTPS_PORT “) cho máy chủ web Mailcow. Bạn cũng có thể thay đổi giá trị của tham số ” SKIP_LETS_ENCRYPT ” thành ” y ” nếu bạn không muốn chứng chỉ SSL được tự động cấp từ Let’s Encrypt.

Tải các images cần thiết:

docker-compose pull

Thực hiện start Mailcow:

docker-compose up -d

Mailcow tự động yêu cầu chứng chỉ SSL Let’s Encrypt cho tên miền máy chủ, trừ khi tính năng này đã bị tắt trong tệp cấu hình. Như vậy, bạn có thể truy cập giao diện web Mailcow thông qua HTTPS. Để tự động chuyển hướng các yêu cầu HTTP sang HTTPS, thực hiện các bước sau:

  • Tạo tệp cấu hình:
nano /opt/mailcow-dockerized/data/conf/nginx/redirect.conf
  • Thêm đoạn sau vào tệp cấu hình:
server {
  root /web;
  listen 80 default_server;
  listen [::]:80 default_server;
  include /etc/nginx/conf.d/server_name.active;
  if ( $request_uri ~* "%0A|%0D" ) { return 403; }
  location ^~ /.well-known/acme-challenge/ {
    allow all;
    default_type "text/plain";
  }
  location / {
    return 301 https://$host$uri$is_args$args;
  }
}
  • Thực hiện restart lại nginx:
docker-compose restart nginx-mailcow

Cấu hình Mailcow

Sau khi cài đặt, bạn cần thiết lập cấu hình như sau:

Truy cập giao diện Mailcow

Mở trình duyệt web và truy cập https://mail.domain.com

Đăng nhập bằng username là “admin” và mật khẩu mặc định “moohoo

Thay đổi password Admin

Chọn System > Configuration

Tại tab Access > Administrator, click chọn Edit ngay bên cạnh user admin.

Thay đổi password rồi nhấn Save Changes.

Thiết lập domain

Click E-Mail > Configuration để chuyển sang trang cấu hình E-mail.

Tại tab Domains, chọn Add domain

Nhập tên miền vào ô domain, sau đó nhấn Add domain and restart SOGo

Thiết lập Mailboxes

Tại tab Mailboxes, chọn Add Mailbox

Điền vào các chi tiết cần thiết:

  • Username (left part of an email address): Phần của email trước @
  • Domain: tên miền của hộp thư
  • Full name: Họ và tên người sử dụng hộp thư
  • Quota : Đặt giới hạn lưu trữ cho hộp thư

Nhấn Add để tạo hộp thư.

Truy cập Webmail Client

Để truy cập đến giao diện Webmail Client, bạn thực hiện trong 2 cách sau:

  • Trong menu trên cùng của giao diện web Mailcow, chọn Apps > Webmail
  • Truy cập trực tiếp tại đường dẫn: https://mail.domain.com/SOGo/

Leave a Comment

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

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Scroll to Top