DKIM và DMARC là gì và vì sao bắt buộc phải có?

DKIM (DomainKeys Identified Mail) cho phép máy chủ gửi email ký điện tử vào tiêu đề thư. Máy chủ nhận sẽ dùng khóa công khai trong DNS để xác minh email có thực sự được gửi từ domain đó hay không và nội dung có bị sửa đổi giữa đường không.
DMARC (Domain-based Message Authentication, Reporting and Conformance) hoạt động dựa trên DKIM và SPF. Nó cho phép bạn:
- Quy định cách xử lý email giả mạo
- Nhận báo cáo về các email thất bại xác thực
- Bảo vệ thương hiệu khỏi bị giả mạo gửi spam hoặc lừa đảo
Nếu không có DKIM và DMARC, email rất dễ bị đưa vào spam hoặc bị kẻ xấu lợi dụng giả mạo domain.
2. Kiểm tra DKIM đã tồn tại hay chưa trên CyberPanel
Bước 1: Đăng nhập CyberPanel
Truy cập:
https://IP-server:8090
Đăng nhập bằng tài khoản quản trị.
Bước 2: Kiểm tra DKIM cho domain
Vào mục:
Email → DKIM Manager
Chọn domain cần kiểm tra.
Nếu hệ thống hiển thị bản ghi DKIM dạng chuỗi dài bắt đầu bằng:
v=DKIM1; k=rsa; p=
nghĩa là DKIM đã được tạo.
Nếu chưa có, bạn sẽ thấy tùy chọn tạo mới.
3. Tạo DKIM trong CyberPanel
Cách 1: Tạo bằng giao diện
Vào:
Email → DKIM Manager → Chọn Domain → Generate DKIM
CyberPanel sẽ tự tạo:
- Khóa riêng để ký email
- Khóa công khai để bạn thêm vào DNS
Sau khi tạo xong, hệ thống sẽ cung cấp bản ghi DNS dạng TXT.
Cách 2: Kiểm tra bằng SSH
Kết nối SSH vào server:
ssh root@IP-server
Kiểm tra thư mục chứa khóa DKIM:
ls /etc/opendkim/keys/yourdomain.com/
Nếu có file default.txt hoặc tương tự, DKIM đã được tạo.
Xem nội dung khóa công khai:
cat /etc/opendkim/keys/yourdomain.com/default.txt
Bạn sẽ thấy chuỗi bắt đầu bằng:
v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQE...
4. Thêm bản ghi DKIM vào DNS
Truy cập nơi quản lý DNS domain của bạn và thêm bản ghi:
| Type | Host/Name | Value |
|---|---|---|
| TXT | default._domainkey | (chuỗi DKIM CyberPanel cung cấp) |
Sau khi thêm, chờ DNS cập nhật.
Kiểm tra bằng lệnh:
dig TXT default._domainkey.yourdomain.com
Nếu trả về chuỗi DKIM, cấu hình đã đúng.
5. Tạo bản ghi DMARC cho domain
CyberPanel không tự tạo DMARC, bạn cần thêm thủ công trong DNS.
Bản ghi DMARC cơ bản
Thêm bản ghi TXT:
| Type | Host/Name | Value |
|---|---|---|
| TXT | _dmarc | v=DMARC1; p=none; rua=mailto:admin@yourdomain.com |
Ý nghĩa:
v=DMARC1xác định phiên bảnp=nonechỉ giám sát, chưa chặnrua=nhận báo cáo tổng hợp
Khi hệ thống ổn định
Bạn có thể tăng mức bảo vệ:
Chế độ cách ly
v=DMARC1; p=quarantine; pct=100; rua=mailto:admin@yourdomain.com
Chế độ từ chối hoàn toàn
v=DMARC1; p=reject; pct=100; rua=mailto:admin@yourdomain.com
6. Kiểm tra DMARC đã hoạt động chưa
Sau khi thêm DNS, kiểm tra:
dig TXT _dmarc.yourdomain.com
Nếu hiển thị chuỗi DMARC, bản ghi đã tồn tại.
Bạn cũng có thể gửi email từ domain đến Gmail và xem phần Show Original để kiểm tra:
- DKIM = PASS
- SPF = PASS
- DMARC = PASS
7. Kiểm tra DKIM ký email có hoạt động
Gửi một email từ tài khoản trên server đến Gmail, sau đó mở email đó và xem chi tiết kỹ thuật.
Tìm dòng:
DKIM-Signature:
Nếu Gmail hiển thị DKIM: PASS, cấu hình thành công.
8. Các lỗi thường gặp
Email vẫn vào spam dù đã có DKIM
Nguyên nhân có thể:
- Chưa có DMARC
- IP server nằm trong blacklist
- Nội dung email giống spam
DKIM fail
- DNS chưa cập nhật
- Sao chép sai chuỗi DKIM
- Có nhiều bản ghi DKIM trùng
DMARC fail
- DKIM hoặc SPF không khớp domain gửi
- Email gửi qua dịch vụ thứ ba chưa được cấu hình SPF/DKIM








