Nội dung bài viết
Cấu hình DKIM cho email sử dụng DirectAdmin
Vừa rồi bên công ty bạn mình gửi email thường rơi vào thư mục spam nên hỏi mình không biết nguyên nhân từ đâu. Mình đã vào kiểm tra domain ấy và thấy chưa có xác thực DKIM. Vậy DKim là gì? Làm thế nào để cấu hình DKIM cho domain?
DKIM là gì ?
DomainKeys Identified Mail (DKIM) là một hệ thống đánh giá email nhằm phát hiện email giả mạo nhờ vào cơ chế cho phép hệ thống nhận email, kiểm tra email được gởi từ một domain có được xác quyền bởi người quản trị domain.
Có ba bước chính cần thiết để thêm chữ ký DKIM vào thư gửi đi:
- Tạo khóa tên miền cho miền của bạn
- Thêm khóa tên miền công cộng vào các bản ghi DNS cho miền của bạn, để người nhận có thể truy xuất khóa này để giải mã tiêu đề DKIM
- Bật xác thực để bắt đầu thêm tiêu đề DKIM vào thư đi
Làm thế nào để cấu hình DKIM cho domain?
Mặc định khi cài đặt, DirectAdmin chưa hỗ trợ việc khởi tạo DKIM cho Email. Sau đây PhonuiIT sẽ hướng dẫn giúp bạn bật tính năng DKIM trong Email và cách cấu hình DNS cho bản ghi này cũng như cách kiểm tra việc xác thực cài đặt đã chính xác hay chưa.
Đầu tiên bạn hãy kiểm tra xem domain của bạn có cấu hình DKIM chưa bằng cách vào đường link sau:
Vào công cụ trên nhập x vào phần Selector, tên domain vào phần Domain name rồi nhấn check:
Trường hợp bạn nhận được thông báo chưa có DKIM thì hãy thực hiện các bước sau để Cấu hình DKIM cho email sử dụng DirectAdmin:
Bước 1: Bật DKIM trong DirectAdmin bằng cách thêm dkim=1 vào cuối file directadmin.conf trong thư mục /usr/local/directadmin/conf/directadmin.conf Hoặc ssh vào vps sử dụng lênh sau:
[code]cd /usr/local/directadmin</em>
cp -f conf/directadmin.conf conf/directadmin.conf.backup
echo ‘dkim=1’ >> conf/directadmin.conf[/code]
Bước 2: Tiến hành cấu hình Exim để hỗ trợ việc nạp các bản ghi DKIM private và header của Email. Bạn mở file
/etc/exim.conf tìm đến đoạn
remote_smtp:
driver = smtp
Thêm vào bên dưới nội dung sau:
[code]remote_smtp:
driver = smtp
dkim_domain = $sender_address_domain
dkim_selector = x
dkim_private_key = ${if exists{/etc/virtual/$sender_address_domain/dkim.private.key}{/etc/virtual/$sender_address_domain/dkim.private.key}{0}}
dkim_canon = relaxed
dkim_strict = 0[/code]
Tiếp đến hãy kiểm tra chắc chắn rằng DKIM đã được bật và tiến hành khởi động lại dịch vụ
[code]cd /usr/local/directadmin
./directadmin c | grep dkim[/code]Kết quả: dkim=1
[code]/etc/init.d/directadmin restart[/code]
Khởi động lại dịch vụ EXIM
[code]/etc/init.d/exim restart[/code]
Bước 3: Kích hoạt bản ghi DKIM cho tất cả domain trên VPS hãy gõ lệnh
[code]echo "action=rewrite&value=dkim" >> /usr/local/directadmin/data/task.queue[/code]
Kích hoạt cho domain chỉ định gõ lệnh
[code]usr/local/directadmin/scripts/dkim_create.sh domain_cua_ban [/code]
Lưu ý: Nếu domain trỏ về máy chủ bằng Nameserver thì không cần thao tác thêm bước này. Nếu bạn sử dụng một máy chủ DNS khác chẳn hạn như Cloudflare thì bạn hãy làm tiếp bước bên dưới:
- Đăng nhập vào DirectAdmin vào phần DNS Management, tìm đến domain đang cần cấu hình DKIM. Sau đó tìm tới bản ghi có tên: x._domainkey
Bạn copy 2 dòng trên vào trang DNS của mình tạo lại 2 cái giống vậy. Lưu ý bỏ 2 cái dấu “ ” đi.
Tới đây là đã xong. Bây giờ bạn chờ cho DNS cập nhật lại và check thử lại.
Và để chắc chắn chúng ta đã setup email đầy đủ thì hãy kiểm tra điểm spam tại https://www.mail-tester.com/, bạn vào đây và thấy thông tin email test hiện thị sẵn.
Bạn dùng email của mình gửi một email vào địa chỉ đó. Để kiểm tra chính xác, bạn nên soạn một email dài và tiêu đề như một email thật sau đó gửi đi.
Sau khi gửi xong thì quay trở lại website mail-tester và ấn Then check your score là bạn sẽ biết điểm mình. Đạt điểm 10/10 là tuyệt vời, Thường thì điểm từ 7.0 trở lên là khả năng vào inbox cao nếu chưa được thì xem còn lỗi ở đâu và fix tiếp, thường thì lỗi chưa có DKIM là nhiều nhất.
Chúc các bạn cấu hình thành công và email gửi đi luôn vào inbox.
Xem thêm:
Hướng dẫn cài đặt Vesta control panel cho VPS/Server
Cấu hình DNS Windows Server 2012