Hướng dẫn cấu hình Per-IP SSL cho Exim

Ngày đăng: 2015-10-08 10:51:55

Nếu máy chủ Exim Mail Server của bạn có nhiều địa chỉ IP, mỗi địa chỉ IP cần được gán một chứng thư số cho một tên miền khác nhau, bạn có thể tham khảo bài viết sau để thực hiện.

Trước hết, bạn hãy tạo một thư mục để làm nơi lưu trữ chứng thư số của các địa chỉ IP khác nhau:

mkdir /etc/certs

Tiếp đó, mới mỗi địa chỉ IP, bạn cần tải 3 file sau đây vào thư mục trên:

/etc/certs/dia_chi_ip.cert
/etc/certs/dia_chi_ip.key
/etc/certs/dia_chi_ip.cacert

Sau đó, bạn mở file cấu hình Exim (/etc/exim.conf) và tìm đoạn sau:

tls_certificate = /etc/exim.cert
tls_privatekey = /etc/exim.key

Và thay thế bằng đoạn sau:

tls_certificate = ${if exists{/etc/certs/$received_ip_address.cert}{/etc/certs/$received_ip_address.cert}{/etc/exim.cert}}
tls_privatekey = ${if exists{/etc/certs/$received_ip_address.key}{/etc/certs/$received_ip_address.key}{/etc/exim.key}}
tls_verify_certificates = ${if exists{/etc/certs/$received_ip_address.cacert}{/etc/certs/$received_ip_address.cacert}{/etc/exim.cert}}

Cuối cùng, bạn cần restart lại Exim để có hiệu lực:

service exim restart

Bạn có thể dùng lệnh sau đây để kiểm tra kết quả:

openssl s_client -connect dia_chi_ip:465 -tls1

Các địa chỉ IP có chứng thư số SSL riêng sẽ được Exim gán chính xác. Các địa chỉ IP không có chứng thư số SSL riêng sẽ được gán chứng thư số mặc định của Exim.