Bài viết này sẽ hướng dẫn bạn từng bước cài đặt máy chủ cho hộp thư điện tử (email server) trên Raspberry Pi
Có rất nhiều lý do để cài đặt máy chủ cá nhân lên Pi, trong đó phải nói là về chi phí thấp, tiếp đến là Pi tiêu thụ năng lượng thấp.
Bên cạnh đó còn có một vài tiện ích khác khi cài đặt máy chủ hộp thư điện tử trên Raspberry Pi là dễ dàng tùy biến đặt tên cho tên miền và có đầy đủ các tính năng khác về giao tiếp cá nhân. Khi các thư điện tử của bạn được lưu trên máy chủ cá nhân, không có ai có thể tìm được chúng và chèn quảng cáo vào… Bạn có thể chạy nó cùng với máy chủ Apache web để hoàn tất thiết lập.
Thêm một lý do tuyệt vời hơn để cài đặt máy chủ hộp thư điện tử riêng là bạn có thể tự học hỏi thêm nhiều kinh nghiệm. Nó sẽ có một chút khó khăn khi thiếp lập do có một vài thứ dễ bị nhầm lẫn. Không sao cả, không có gì là không thể nhé.
Nếu bạn có kế hoạch gửi emails, bạn phải chắc chắn rằng ISP (Internet Service Provider) không có chặn cổng 25. Khi quá trình cài đặt không thành công, bạn hãy nghĩ đến lý do này đầu tiên nhé.
Chuẩn bị phần cứng
Cài đặt máy chủ cho thư điện tử dùng Citadel
Trong bài hướng dẫn này, Raspberry Pi sử dụng hệ điều hành Raspbian. Nếu bạn muốn cài đặt, hãy đến với bài hướng dẫn này.
Có một vài cách để cài đặt máy chủ email trên Raspberry Pi, một trong những cách phức tạp nhất là cài đặt Postfix và Dovecot riêng biệt sau đó cài đặt một giao diện web. Mỗi thành phần này sau đó sẽ phải được cấu hình riêng lẻ và có thể trở nên khá tốn thời gian để thiết lập chính xác.
Tuy nhiên, trong hướng dẫn này, chúng ta sẽ sử dụng gói phần mềm có tên Citadel. Nó là một máy chủ thư điện tử dễ cài đặt, mạnh mẽ nhưng linh hoạt. Nó đơn giản hóa rất nhiều quá trình thiết lập một máy chủ email và không yêu cầu cấu hình cao để khởi động và chạy nó. Điểm tốt nhất của nó là một phần mềm nguồn mở 100%.
1. Bước đầu tiên, cập nhật package repository bằng cmd:
sudo apt-get update
2. Bước tiếp theo, cập nhật phiên bản mới nhất cho các gói phần mềm:
sudo apt-get upgrade
3. Cài đặt Citadel:
sudo apt-get install citadel-suite
4. Đối với màn hình này, hãy để trường được đặt thành 0.0.0.0 vì điều này cho phép Citadel nghe trên tất cả các địa chỉ đến. Lý do duy nhất để thay đổi điều này sẽ là nếu bạn đang chạy nhiều phiên bản của Citadel . Nhấn Enter để tiếp tục.
5. Bây giờ đối với chế độ xác thực người dùng, chúng tôi sẽ giữ bộ này thành Internal. Chế độ này cho phép Citadel sử dụng cơ sở dữ liệu tài khoản người dùng nội bộ của riêng mình. Nhấn Enter để tiếp tục.
6. Ở cửa sổ này, bạn nhập tên user muốn sử dụng, ví dụ: admin.
Nhấn Enter để tiếp tục.
7. Nhập mật khẩu mới cho người dùng admin
Nhấn Enter để tiếp tục.
8. Nhấn nút xuống để chọn Internal
Nhấn Enter để tiếp tục.
9. Ở bước này, ta sẽ chọn cổng để HTTP có thể lắng nghe được, ta có thể chọn thành 80. Nếu không được cấp phép, ta có thể chọn cổng khác, ví dụ 8080.
Nhấn Enter để tiếp tục.
10. Ở bước này, ta sẽ chọn cổng để HTTPS có thể lắng nghe được, ta có thể chọn thành 443. Nếu không được cấp phép, ta có thể chọn cổng khác, ví dụ 4434.
Nhấn Enter để tiếp tục.
11. Chọn ngôn ngữ mặt định, đơn giản nhất, ta chọn “User Defined”.
Nhấn Enter để tiếp tục.
Các bước sử lý lỗi.
Nếu sau khi bạn cài đặt các bước trên rồi mà máy chủ thư điện tử vẫn chưa hoạt động đúng, bạn đi theo các bước sau để xử lý:
1. Đầu tiên, tạo netconfigs và tạo nhóm với Citadel:
sudo mkdir /etc/citadel/netconfigs
sudo chown citadel:citadel /etc/citadel/netconfigs
2. Khởi động lại Citadel:
sudo service citadel restart
sudo /usr/lib/citadel-server/setup
3. Trong quá trình cài đặt, bạn sẽ trải qua một loạt câu hỏi, hãy trả lời chính xác, đặt biệt là tên và mật khẩu của username.
4. Thiết lập mật khẩu dễ gợi nhớ và phải bảo mật, tránh bị hack.
5 Bạn cót hể bỏ qua các câu hỏi còn lại, chỉ cần nhấn enter để tiếp tục.
Cài đặt Citadel Email Server
1. Truy cập vào giao diện web của web interface. Từ trình duyệt trên PC, bạn truy cập vào địa chỉ IP của Raspberry, ví dụ: http://192.168.1.105/
.
Nếu bạn không biết IP của Raspberry Pi, từ của sổ terminal của PI, bạn gõ cmd: hostname -I
Đăng nhập vào Citadel bằng User name và Password mà bạn đão tạo ở trên.
2. Tiếp theo, chọn administration.
3. Từ cửa sổ system administration menu, bạn chọn “Edit site-wide configuration”.
4. Trong của sổ này, ta thay đổi thông tin trong “Fully Qualified Domain Name” để thay đổi tên miền của bạn. Ví dụ: mail.raspberrypi.vn
Chọn “SMTP”
5. Nhập port mà cho phép máy chủ nhận email thông qua SMTP.
Nhấn “Save Changes”, sau đó chọn “Administration” bên trái.
6. Tiếp tục, trong “System Administration Menu”, click chọn “Domain names and internet mail configuration”. Tại đây, ta sẽ thêm tên miền cho Citadel.
7. Tại vùng “Local host aliases”, gõ tên miền bạn muốn và nhấn “Add”.
Nhấn “Administration” để quay lại.
8. Click “Restart Now” phía dưới “Shutdown Citadel”, lúc này Citadel sẽ khởi động lại, các thông số cài đặt sẽ được lưu.
Cài đặt DNS cho Raspberry Pi Email Server
Cách dễ nhất để thiết lập DNS của bạn là sử dụng một dịch vụ như Cloudflare. Cloudflare cung cấp dịch vụ DNS ổn định và dự phòng, có thể dễ dàng thiết lập để hoạt động như một dịch vụ DNS động, cực kỳ hữu ích cho bất kỳ ai đứng sau địa chỉ IP động.
1. Bạn đi tới tên miên của bạn trên Cloudflare, sau đó chọn tab DNS.
2. In here you need to add an A name record that points towards your network’s public IP address. This record will allow you to access your webmail client after you port forward. It is also needed so we can point the MX Record to it.
3. Now add an MX record that points towards the domain name that you set up as an A record in the previous step.
2. Tại đây, bạn cần thêm một bản ghi tên A trỏ đến địa chỉ IP network’s public của bạn. Bản ghi này sẽ cho phép bạn truy cập ứng dụng webmail của bạn sau khi bạn chuyển tiếp. Nó cũng cần thiết để chúng ta có thể trỏ Bản ghi MX vào nó.
3. Bây giờ thêm bản ghi MX trỏ đến tên miền mà bạn đã thiết lập làm bản ghi A ở bước trên.
4. Bây giờ bạn sẽ cần chuyển tiếp các cổng khác nhau từ trước đó. Nếu bạn không thực hiện bất kỳ thay đổi nào, thì bạn sẽ cần chuyển tiếp các cổng sau là 80, 25, 587 và 465. 3 cổng cuối cùng sẽ là các cổng SMTP của bạn được đề cập trong trang cài đặt SMTP từ trước đó.
Cài đặt SpamAssassin cho Raspberry Pi Email Server
Bây giờ chúng ta sẽ thực hiện cài đặt Spamassassin, đây là một công cụ xử lý việc lọc qua SPAM. Đây là một công cụ quan trọng đã được cài đặt trên bất kỳ máy chủ email riêng tư nào. Nó sẽ thêm một chút khối lượng công việc cho Raspberry Pi nhưng nó có thể xử lý tốt.
1. Trước tiên, để cài đặt Spamassassin từ các gói chính thức bằng cách chạy lệnh sau. Quá trình cài đặt Spamassassin có thể mất một chút thời gian vì nó phải biên dịch một số thứ.
sudo apt-get install spamassassin
2. Sau khi cài đặtSpamassassin hoàn tât, ta cần cấu hình nó. Gõ cmd:
sudo nano /etc/spamassassin/local.cf
3. Cập nhật lại các dòng sau bằng cách bỏ dấu # trước chúng:
rewrite_header Subject [***** SPAM _SCORE_ *****]
report_safe 0
required_score 2.0
use_bayes 1
bayes_auto_learn 1
Cuối cùng nhấn Ctrl+X -> Y -> Enter
4. Tiếp theo ta sẽ sửa file sau:
sudo nano /etc/default/spamassassin
Dòng sau đây cho phép Spamassassin hoạt động thông qua systemctl và có nghĩa là chúng ta có thể khiến nó khởi động dễ dàng khi khởi động.
ENABLED=1
Dòng này cho phép một công việc định kỳ tự động cập nhật các quy tắc Spamassassin
CRON=1
Cuối cùng nhấn Ctrl+X -> Y -> Enter
5. Khởi động Spamassassin
sudo service spamassassin start
6. Cho phép Spamassassin khởi động cùng hệ thống.
sudo systemctl enable spamassassin
7. Tiếp theo, bạn vào lại Citadel từ trình duyệt web và đi vào Administration.
8.Chọn “Domain names and Internet mail configuration”.
9. Gõ IP address, 127.0.0.1
dưới “SpamAssassin Hosts” và nhấn “Add”
Cài đặt ClamAV cho Citadel
Bây giờ ta sẽ đi vào phần thiết lập cuối cùng cho máy chủ email trên Raspberry Pi, đó là bước cài đặt và thiết lập phần mềm ClamAV. Đây là phần mềm giúp bạn quét vi rút của tất cả các thư đi vào và bảo vệ Raspberry Pi.
1.Cài đặt ClamAV bằng cmd:
sudo apt-get install clamav
2. Cập nhật phiên bản mới nhất:
sudo freshclam
Nếu gặp lỗi sau:
ERROR: /var/log/clamav/freshclam.log is locked by another process
Bạn tắt ClamAV đi, chạy lệnh dưới đây rồi mới tới lệnh sudo freshclam.
sudo service clamav-freshclam stop
3. Tiếp theo, chạy lệnh:
sudo service clamav-freshclam start
4. Cho phép khởi động cùng hệ thống.
sudo systemctl enable clamav-freshclam
5. Bạn vào lại Citadels từ trình duyệt web và đi tới Administration.
6. Vào “Domain names and Internet mail configuration”.
7. Ở đây, bạn cần nhập IP Address, 127.0.0.1 dưới “ClamAV clamd hosts”.Sau đó nhấn “Add”
Tới đây đã cài đặt xong ClamAV
Cập nhật địa chỉ email của người dùng
1. Đi tới Advanced and on this screen select “update your contact information”.
2. Cập nhật lại địa chỉ email vào “primary internet email address”
3. Cuối cùng, chọn Save changes
Xử lý thường gặp.
Có khá nhiều vấn đề mà bạn có thể gặp phải trong khi thực hiện hướng dẫn này với một số vấn đề dễ khắc phục và những vấn đề khác khó hơn một chút.
Một số ISPS sẽ chặn cổng 25, có nghĩa là khi bạn gửi email, chúng sẽ thất bại. Để giải quyết vấn đề này, bạn sẽ cần phải mở khóa cổng hoặc thiết lập tòa thành để sử dụng máy chủ ISP ISP SMTP. Bạn có thể tìm thêm thông tin về email gửi đi đang bị mắc kẹt ở đây.
Nếu bạn không nhận được email, thì điều này có thể có nghĩa là DNS của bạn chưa được cấu hình đúng. Quay trở lại nơi DNS của bạn đang được quản lý và xem xét thông tin.
Hy vọng rằng hướng dẫn này đã chỉ cho bạn cách thiết lập máy chủ email Raspberry Pi và bạn không gặp phải bất kỳ vấn đề nào. Nó chắc chắn là một dự án tuyệt vời cho bất cứ ai muốn thiết lập một máy chủ email giá rẻ mà bạn có toàn quyền kiểm soát.
Nếu bạn có một số phản hồi, lời khuyên hoặc gặp phải bất kỳ vấn đề nào bạn muốn chia sẻ, xin vui lòng đừng ngại để lại bình luận bên dưới.