Cài đặt Postfix trên CentOS 7
Bài viết này Bizfly Cloud sẽ hướng dẫn cách cài đặt Postfix trên CentOS 7. Cùng theo dõi nhé!
Các bước cài đặt Postfix
Kiểm tra phần mềm sendmail đã được cài đặt chưa :
```
rpm -qa | grep sendmail
```
Nếu đã cài đặt thì remove nó :
```
yum remove sendmail*
```
Cài đặt postfix và một số gói liên quan :
```
yum -y install postfix cyrus-sasl-plain mailx
```
Đặt postfix như MTA mặc định của hệ thống :
```
alternatives --set mta /usr/sbin/postfix
```
Nếu câu lệnh bị lỗi và trả về output "/usr/sbin/postfix has not been configured as an alternative for mta" thì thực hiện lệnh sau :
```
alternatives --set mta /usr/sbin/sendmail.postfix
```
Khởi động dịch vụ postfix và cho phép nó khởi động cùng hệ thống :
```
systemctl start postfix
systemctl enable postfix
```
Cấu hình gửi mail bằng Postfix
Chỉnh sửa file main.cf :
```
vi /etc/postfix/main.cf
```
Thêm vào cuối file :
```
myhostname = hostname.example.com
relayhost = [smtp.gmail.com]:587
smtp_use_tls = yes
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_tls_CAfile = /etc/ssl/certs/ca-bundle.crt
smtp_sasl_security_options = noanonymous
smtp_sasl_tls_security_options = noanonymous
```
Tạo mới file /etc/postfix/sasl_passwd :
```
vi /etc/postfix/sasl_passwd
```
Thêm vào nội dung sau :
```
[smtp.gmail.com]:587 username:password
```
username : tên user gmail dùng để gửi
password : password của user gmail
Phân quyền cho file sasl_password vừa tạo :
```
postmap /etc/postfix/sasl_passwd
chown root:postfix /etc/postfix/sasl_passwd*
chmod 640 /etc/postfix/sasl_passwd*
systemctl reload postfix
```
Đăng nhập bằng gmail để thực hiện gửi mail đã khai báo bên trên trên trình duyệt và truy cập vào địa chỉ sau :
```
https://myaccount.google.com/lesssecureapps
```
Bật chế độ cho phép ứng dụng truy cập :
(Tùy chọn) Trong ngữ cảnh muốn sử dụng gmail vừa nhập cho user root (hoặc bất cứ user nào khác trong máy), thực hiện chỉnh sửa file /etc/aliases :
```
vi /etc/aliases
```
Chỉnh sửa tại dòng 96 :
Áp dụng thay đổi trên :
```
newaliases
````
Thực hiện gửi mail :
Sử dụng lệnh echo :
```
echo "Send successfully" | mail -s "Mail test" root (nếu đã thực hiện bước tùy chọn trên)
```
hoặc
```
echo "Send successfully" | mail -s "Mail test" <email_nhận> (nếu không thực hiện bước tùy chọn trên)
```
Kết quả: Tài khoản <email_nhận> đã nhận được mail:
Theo Bizfly Cloud chia sẻ