Bài viết sau sẽ hướng dẫn các bạn cấu hình chứng thực Gmail SMTP Replay cho Exim. Hướng dẫn này đã được thử nghiệm trên CentOS 6.8 với Exim 4.87
Chuẩn bị
Đăng nhập vào tài khoản Google/Gmail mà bạn sẽ sử dụng để chuyển tiếp thư và bật chức năng “Cho phép ứng dụng kém an toàn”. Nếu bạn không bật chức năng này, bạn sẽ không thể xác thực với Gmail để gửi thư.
Tiếp theo, đảm bảo rằng Exim và các phương pháp xác thực SASL được cài đặt bằng cách chạy lệnh sau:
yum install -y exim cronie cyrus-sasl cyrus-sasl-plain
Nếu cài đặt mà không có lỗi, bạn chuyển sang bước tiếp theo.
Cấu hình
Mở file /etc/exim.conf và tìm các dòng sau:
begin routers
Thêm vào bên dưới nội dung sau:
send_via_gmail: driver = manualroute domains = ! +local_domains transport = gmail_smtp route_list = * smtp.gmail.com
Tiếp tục tìm dòng sau:
begin transports
Thêm vào bên dưới nội dung sau:
gmail_smtp: driver = smtp port = 587 hosts_require_auth = * hosts_require_tls = *
Tiếp tục tìm dòng sau:
begin authenticators
Thêm vào bên dưới nội dung sau:
gmail_login: driver = plaintext public_name = LOGIN client_send = : user@gmail.com : myPassw0rd
Thay thế các thông tin xác thực bằng thông tin gmail của bạn trên dòng client_send
Khởi động lại Exim để thay đổi có hiệu lực:
service exim restart
Kiểm tra
Kiểm tra bằng cách gửi mail với câu lệnh sau echo “Just testing.” | mail -s “Test Subject” user@example.org hoặc hàm PHP mail đơn giản. Sử dụng địa chỉ nhận mail khác với địa chỉ gửi mail mà bạn sử dụng để chuyển tiếp mail.
Kiểm tra địa chỉ nhận mail, bạn sẽ nhận được mail tại hộp thư đến (kiểm tra cả thư mục spam). Nếu không nhận được mail, kiểm tra file log /var/log/exim/main.log để tìm lỗi.
Kết luận
Sau khi thực hiện các bước trên, bạn đã có thể gửi mail đến Gmail thông qua Exim. Chúc các bạn thực hiện thành công!
Leave A Comment?