DNS RobotDNS Propagation Checker
Trang ChủDNSWHOISIPSSL
DNS RobotDNS Propagation Checker

Công cụ kiểm tra DNS thế hệ mới

Chính Sách Bảo MậtĐiều Khoản Dịch VụVề Chúng TôiBlogLiên hệ

Công Cụ DNS

Tra Cứu DNSKiểm Tra Tốc Độ DNSTên Miền Sang IPTra Cứu NSTra Cứu MXXem tất cả

Công Cụ Email

Kiểm Tra EmailKiểm Tra Bản Ghi SPFKiểm Tra DMARCKiểm Tra DKIMKiểm Tra SMTPXem tất cả

Công Cụ Website

Kiểm Tra Website SậpTra Cứu WHOISKiểm tra HostingKiểm Tra Tên MiềnTìm Tên Miền PhụXem tất cả

Công Cụ Mạng

Công Cụ PingTracerouteKiểm Tra CổngKiểm Tra Header HTTPKiểm Tra Chứng Chỉ SSLXem tất cả

Công Cụ IP

Tra Cứu IPIP Của Tôi Là GìKiểm Tra IPv6Kiểm Tra Rò Rỉ WebRTCĐăng Nhập ModemXem tất cả

Công Cụ Tiện Ích

Quét Mã QRTạo Mã QRUPI QR Code GeneratorWiFi QR Code GeneratorDịch Mã MorseXem tất cả
© 2026 DNS Robot. Phát triển bởi: ❤ Shaik Brothers
Tất cả hệ thống hoạt động bình thường
Made with
  1. Trang Chủ
  2. /
  3. Công Cụ Email
  4. /
  5. Tạo Bản Ghi DKIM

Tạo Khóa DKIM và Bản Ghi DKIM

Tạo cặp khóa DKIM và bản ghi DNS TXT tương ứng chỉ với một cú nhấp. Chọn RSA 2048 (khuyến nghị), 1024, 4096 hoặc Ed25519, đặt selector và sao chép bản ghi selector._domainkey. Khóa được tạo trong trình duyệt của bạn bằng Web Crypto, nên khóa riêng tư (private key) không bao giờ đến máy chủ của chúng tôi.

RSA 2048 & Ed25519Khóa Riêng Tư Không Rời MáyĐịnh Dạng Zone FileMiễn Phí, Không Đăng Ký

Tên bất kỳ bạn muốn, như default, s1 hoặc mail2026. Dùng selector mới khi bạn xoay vòng khóa.

Loại khóa

Khóa được tạo trong trình duyệt của bạn bằng Web Crypto. Không có gì được gửi đến máy chủ của chúng tôi.

Advertisement

Bản Ghi DKIM Là Gì?

DKIM (DomainKeys Identified Mail, RFC 6376) thêm chữ ký số vào mọi email mà máy chủ của bạn gửi đi. Chữ ký được tạo bằng khóa riêng tư (private key) nằm trên máy chủ. Khóa công khai (public key) tương ứng được công bố trong DNS dưới dạng bản ghi TXT tại selector._domainkey.yourdomain.com, và máy chủ nhận lấy nó về để kiểm tra rằng thư thực sự đến từ tên miền của bạn và không bị thay đổi trên đường đi.

Selector chỉ là một nhãn do bạn chọn, như default hoặc s1. Nó cho phép một tên miền công bố nhiều khóa cùng lúc, mỗi khóa cho một dịch vụ hoặc một thế hệ khóa. Chữ ký DKIM hợp lệ từ chính tên miền của bạn cũng là thứ giúp thư vượt qua DMARC khi SPF không khớp được, chẳng hạn sau khi thư bị chuyển tiếp.

Công cụ tạo bản ghi DKIM với cặp khóa RSA 2048 bit, host default._domainkey và giá trị TXT sẵn sàng sao chép
Chọn selector và loại khóa. Bản ghi TXT, dòng zone file và cả hai khóa đều sẵn sàng để sao chép hoặc tải xuống.

Bạn Có Cần Tự Tạo Khóa DKIM Không?

Thường là không. Google Workspace tự tạo khóa cho bạn (Admin console, Apps, Google Workspace, Gmail, Authenticate email), còn Microsoft 365 dùng hai bản ghi CNAME, selector1._domainkey và selector2._domainkey, trỏ đến các khóa do Microsoft quản lý. Phần lớn dịch vụ gửi bản tin và email giao dịch cũng cung cấp sẵn bản ghi riêng của họ.

Bạn cần cặp khóa riêng khi bạn tự vận hành máy chủ email, ví dụ Postfix với OpenDKIM hoặc rspamd, hay Exim, hoặc khi một ứng dụng hay relay yêu cầu bạn tải lên khóa riêng tư. Đó là lúc công cụ này phát huy tác dụng.

Advertisement

Cách Tạo Khóa DKIM và Công Bố Bản Ghi

1
Nhập tên miền và selector

Selector có thể là bất kỳ tên nào gồm chữ cái, chữ số và dấu gạch nối. Selector theo mốc thời gian, như s2026, giúp dễ theo dõi việc xoay vòng khóa.

2
Chọn loại khóa và tạo

RSA 2048 bit là lựa chọn đúng cho hầu hết mọi người. Cặp khóa được tạo trong trình duyệt ngay khi trang tải xong, và tạo lại khi bạn đổi loại khóa.

3
Lưu khóa riêng tư

Tải xuống và cài đặt nó trên máy chủ email. Khóa không được lưu ở bất kỳ đâu, nên nếu làm mất, bạn sẽ cần một cặp khóa mới.

4
Công bố bản ghi TXT và kiểm tra

Thêm bản ghi TXT với host selector._domainkey và giá trị đã tạo, gửi một email cho chính bạn rồi kiểm tra bằng công cụ kiểm tra DKIM.

Cú Pháp Bản Ghi DKIM

Bản ghi khóa DKIM là danh sách các cặp tag=value phân tách bằng dấu chấm phẩy. Chỉ p= là bắt buộc, nhưng bạn cũng nên công bố v và k.

Phiên bảnv=DKIM1

Xác định bản ghi là khóa DKIM. Nếu có, nó phải đứng đầu.

Loại khóak=rsa hoặc k=ed25519

Thuật toán của khóa. Nếu thiếu tag này, mặc định là rsa.

Bắt buộcp=

Khóa công khai ở dạng base64. p= để trống nghĩa là khóa đã bị thu hồi và các chữ ký tạo bằng khóa đó sẽ thất bại.

Kiểm thửt=y

Yêu cầu máy chủ nhận coi tên miền đang thử nghiệm DKIM. Hãy gỡ nó khi chữ ký đã được xác minh.

Nghiêm ngặtt=s

Chế độ nghiêm ngặt: định danh i= trong chữ ký phải dùng chính xác tên miền d=, không phải subdomain của nó.

Tùy chọnh= và s=

Giới hạn thuật toán băm (h=sha256) hoặc dịch vụ mà khóa dùng cho (s=email). Hầu hết bản ghi bỏ qua chúng.

Advertisement

So Sánh RSA 2048, 1024, 4096 và Ed25519

  • RSA 2048 bit: kích thước được khuyến nghị. RFC 8301 nói người ký nên dùng ít nhất 2048 bit. Giá trị TXT dài khoảng 410 ký tự.

  • RSA 1024 bit: vẫn được xác minh và là mức tối thiểu máy chủ nhận chấp nhận, nhưng yếu theo tiêu chuẩn ngày nay. Chữ ký từ khóa ngắn hơn không được coi là hợp lệ. Chỉ dùng nếu nhà cung cấp DNS của bạn không lưu được giá trị dài hơn.

  • RSA 4096 bit: máy chủ nhận bắt buộc phải xác minh được khóa đến 4096 bit, nhưng giá trị dài khoảng 750 ký tự, và một số bảng điều khiển DNS cùng hệ thống cũ xử lý nó không tốt. Nó cũng không tốt hơn 2048 là bao.

  • Ed25519: khóa hiện đại, ngắn hơn nhiều (cả bản ghi chỉ khoảng 66 ký tự, RFC 8463). Chưa phải máy chủ nhận nào cũng xác minh được, nên hãy ký thêm bằng khóa RSA dưới một selector thứ hai.

Vì Sao Bản Ghi DKIM Bị Chia Thành Nhiều Chuỗi?

Một chuỗi TXT chỉ chứa được tối đa 255 ký tự, trong khi giá trị DKIM 2048 bit dài hơn thế. DNS giải quyết bằng cách lưu giá trị thành nhiều chuỗi trong dấu ngoặc kép, và máy chủ nhận sẽ ghép chúng lại.

Hầu hết bảng điều khiển DNS chấp nhận nguyên giá trị dài và tự chia giúp bạn. Amazon Route 53 và zone file BIND cần bạn tự nhập dạng đã chia, đó chính là thứ nút zone file cung cấp (trong Route 53, chỉ dán các chuỗi trong ngoặc kép, trên một dòng). Đừng thêm khoảng trắng hay xuống dòng bên trong khóa, và đừng tách mỗi nửa thành một bản ghi riêng.

Advertisement

Cài Đặt Khóa Trên Máy Chủ Email

Lưu khóa riêng tư thành default.private (với selector của bạn), chỉ cho phép dịch vụ ký đọc nó, rồi trỏ trình ký tới tệp đó. Ví dụ OpenDKIM cho example.com với selector default:

Bảo vệ tệp khóa
sudo mkdir -p /etc/opendkim/keys/example.com sudo mv default.private /etc/opendkim/keys/example.com/ sudo chown opendkim:opendkim /etc/opendkim/keys/example.com/default.private sudo chmod 600 /etc/opendkim/keys/example.com/default.private
/etc/opendkim/KeyTable
default._domainkey.example.com example.com:default:/etc/opendkim/keys/example.com/default.private
/etc/opendkim/SigningTable (với SigningTable refile: trong opendkim.conf)
*@example.com default._domainkey.example.com
Thích dòng lệnh hơn? Cùng cặp khóa đó với OpenSSL
openssl genrsa -out default.private 2048 openssl rsa -in default.private -pubout -out default.public
Hoặc dùng công cụ riêng của OpenDKIM (tạo default.private và default.txt)
opendkim-genkey -b 2048 -d example.com -s default

Cách Xoay Vòng Khóa DKIM

  • Tạo cặp khóa mới dưới một selector mới, ví dụ s2027.

  • Công bố bản ghi TXT mới và chờ đến khi nó phân giải được ở mọi nơi.

  • Chuyển máy chủ email sang ký bằng selector mới.

  • Giữ bản ghi cũ khoảng một tuần, cho đến khi thư được ký bằng nó đã được gửi đến và kiểm tra xong.

  • Sau đó xóa bản ghi cũ, hoặc công bố nó với p= để trống để thu hồi khóa.

Advertisement

Thêm Công Cụ Xác Thực Email

DKIM là một trong ba bản ghi mà máy chủ nhận kiểm tra. Hãy hoàn thiện cả bộ:

Kiểm Tra DKIM

Tra cứu khóa đã công bố theo selector và kiểm tra cú pháp cùng kích thước.

Tạo Bản Ghi SPF

Tạo bản ghi SPF cho các nhà cung cấp của bạn kèm bộ đếm lần tra cứu trực tiếp.

Tạo Bản Ghi DMARC

Tạo chính sách DMARC dựa trên kết quả SPF và DKIM của bạn.

Phân Tích Email Header

Xem một email thực tế có vượt qua DKIM, SPF và DMARC hay không.

Câu Hỏi Thường Gặp Về Tạo Bản Ghi DKIM

Là công cụ tạo cặp khóa mà DKIM cần: một khóa riêng tư để máy chủ email ký thư, và khóa công khai được định dạng thành bản ghi TXT mà bạn công bố trong DNS tại selector._domainkey.yourdomain.

Advertisement