DKIM Record Generator

Buat pasangan kunci DKIM di browser Anda dan dapatkan record untuk dipublikasikan. Memakai Google Workspace atau Microsoft 365? Merekalah yang membuat kuncinya: kami tunjukkan di mana.

Kunci dibuat dengan Web Crypto di browser Anda, tidak pernah dikirim · RFC 6376, 8301 dan 8463 · pengaturan DKIM 20 pengirim sudah dicek
Contoh

Buat kunci untuk example.com

Dibuat di browser Anda dengan Web Crypto. Kunci privat tidak pernah meninggalkan tab ini.

Siapa yang menandatangani email Anda?
Membuat kunci sendiri
Menerima kunci Anda
Memakai kunci Anda
kTipe kunci

Yang diminta RFC 8301. Pilihan yang lazim.

sSelector
._domainkey.example.com
Nama baru untuk setiap kunci baru. Nama bertanggal menunjukkan kapan dibuat.
tOpsi record
Lanjutan
Dibuat di browser Anda dengan Web Crypto. Kunci privat tidak pernah meninggalkan tab ini.

Kunci Anda

Kunci privat · Simpan di server AndaFrame terisolasi: tanpa jaringan, dan tidak ada skrip lain di halaman ini yang bisa membacanya

Berfungsi offline: matikan Wi-Fi Anda dan buat lagi.

Atur OpenDKIM

File kunci
# Key file: only the opendkim user may read it
$ sudo mkdir -p /etc/opendkim/keys/example.com
$ sudo nano /etc/opendkim/keys/example.com/s.private
$ sudo chown -R opendkim:opendkim /etc/opendkim/keys
$ sudo chmod 600 /etc/opendkim/keys/example.com/s.private

Rencana rotasi

  1. Hari iniPublikasikan , lalu mulai menandatangani dengannya.
  2. Enam bulan lagiBuat …, publikasikan di samping .
  3. BeralihTandatangani dengan ….
  4. 7 sampai 30 hari kemudianPertahankan tetap dipublikasikan untuk email yang masih dalam perjalanan.
  5. CabutPublikasikan kunci kosong di , jangan dihapus.v=DKIM1; k=rsa; p=

Setelah Anda memublikasikan

Pengecekan lengkap: example.comTautan membawa pengaturan ini, tidak pernah kunci. Ditanyakan dari browser Anda: resolver Cloudflare, Google sebagai pembanding.

Bagaimana cara membuat kunci dan record DKIM?

Buat pasangan kunci RSA 2048, simpan kunci privat di server yang menandatangani email Anda, dan publikasikan kunci publik sebagai record TXT di selector._domainkey.domainanda (RFC 6376).

Pilih nama selector baru untuk setiap kunci, misalnya bulan pembuatannya, agar kunci lama tetap dipublikasikan selagi email yang ditandatanganinya masih dalam perjalanan.

Lalu pasang kunci privat di penandatangan Anda dan kirim pesan uji: header DKIM-Signature menyebut domain (d=) dan selector (s=) yang akan dicari penerima.

Kunci privattetap di server email Andamenandatangani setiap pesan
DKIM-Signature: v=1; a=rsa-sha256; d=example.com; s=s202610; …
Kunci publikdipublikasikan di DNSs202610._domainkey.example.compenerima memverifikasi dengannya ✓
Dua bagian dari satu kunci
DKIM generator untuk membuat kunci DKIM: kunci privat RSA 2048 di frame terisolasi browser, file OpenDKIM dan rencana rotasiDKIM generator untuk membuat kunci DKIM: kunci privat RSA 2048 di frame terisolasi browser, file OpenDKIM dan rencana rotasiKunci privat yang tidak bisa dibaca skrip lainDibuat dan disimpan di frame terisolasi yang tidak bisa menjangkau jaringan.Bentuk yang dibaca penandatangan AndaPKCS#8, PKCS#1 atau satu baris base64, dipilih sesuai penandatangan Anda.Nol permintaan, dan berfungsi offlineHitungan langsung permintaan jaringan sejak Anda menekan Buat.File penandatangan AndaOpenDKIM, rspamd, Exim, Postfix atau Amazon SES, dengan domain dan selector Anda sudah terisi.Selector bertanggalNamanya menyatakan kapan kunci dibuat; rencana rotasi di bawahnya menanggali kunci berikutnya dan pencabutannya.
Kunci RSA 2048 untuk OpenDKIM yang dibuat dengan Web Crypto: kunci privat di frame terisolasi tanpa jaringan, file penandatangan sudah terisi, dan rencana rotasi dengan tanggal sungguhan.

Apakah saya perlu membuat kunci DKIM sendiri?

Hanya jika server Anda sendiri yang menandatangani email: Google Workspace, Microsoft 365 dan kebanyakan layanan email membuat kuncinya sendiri dan menunjukkan record yang harus dipublikasikan, jadi kunci dari generator mana pun tidak akan dipakai.

Kunci sendiri penting untuk Postfix dengan OpenDKIM, rspamd, Exim, Haraka, aplikasi Anda sendiri, dan layanan yang menerimanya, seperti Amazon SES (BYODKIM) dan Mailgun.

PengirimKunci dibuat olehAnda publikasikanSelector
Google WorkspacepenyediaTXT (kunci mereka)google
Microsoft 365penyediaCNAME ke kunci merekaselector1, selector2
SendGridpenyediaCNAME ke kunci merekas1, s2
MailchimppenyediaCNAME ke kunci merekak2, k3
PostmarkpenyediaTXT (kunci mereka)<date>pm
BrevopenyediaCNAME ke kunci merekabrevo1, brevo2
Zoho MailpenyediaTXT (kunci mereka)zoho
Amazon SESsalah satuTXT (kunci Anda)bebas
Mailgunsalah satuTXT (kunci Anda)bebas
OpenDKIMAndaTXT (kunci Anda)bebas
rspamdAndaTXT (kunci Anda)bebas
EximAndaTXT (kunci Anda)bebas
Siapa yang membuat kunci

Apa isi record DKIM?

Record TXT di selector._domainkey.domain yang memuat v=DKIM1, tipe kunci k= dan kunci publik p=; tag opsional membatasi hash (h=) atau layanan (s=) atau menandai kunci sebagai uji coba (t=).

p= kosong berarti kunci dicabut. Kunci RSA dipublikasikan sebagai SubjectPublicKeyInfo, yang dibutuhkan OpenDKIM dan rspamd; kunci Ed25519 sebagai 32 byte mentah.

s202610._domainkey.example.com · TXT
v=DKIM1; k=rsa; h=sha256; s=email; p=MIIBIjANBgkqhkiG9w0BAQ…GQIDAQAB
TagArtiBawaan
vVersi, yang pertama jika adaDKIM1
kTipe kunci: rsa atau ed25519rsa
hHash yang diizinkansemua
sLayanan: email atau **
ty = uji coba, s = domain persistidak ada
nCatatan untuk manusiatidak ada
pKunci publik; kosong = dicabutwajib
Record DKIM, tag demi tag

RSA 1024, 2048, 4096 atau Ed25519?

Pakai RSA 2048: 1024 adalah minimum yang diterima penerima, 4096 membebani DNS, dan Ed25519 pendek tetapi uji independen menemukan penyedia kotak surat besar tidak memverifikasinya, jadi baru berguna di samping tanda tangan RSA.

Banyak alat masih memakai 1024 sebagai bawaan: opendkim-genkey, dkim_keygen rspamd dan Microsoft 365. RFC 8301 meminta 2048.

Jika Anda menambah Ed25519, tandatangani dengan RSA juga, di bawah selector kedua; Yahoo mungkin tidak meloloskan DMARC saat salah satu dari beberapa tanda tangan yang selaras gagal.

RSA 1024234 karakter · 1minimum
RSA 2048410 karakter · 2disarankan
RSA 3072582 karakter · 3cek penandatangan Anda
RSA 4096754 karakter · 3mungkin tidak muat di UDP
Ed2551966 karakter · 1belum diverifikasi penyedia besar

string 255 byte: 255, 510, 765

Panjang record per tipe kunci

Bagaimana cara mengatur OpenDKIM, rspamd atau Exim?

Simpan kunci privat di tempat yang hanya bisa dibaca penandatangan, petakan domain dan selector Anda ke kunci itu di konfigurasi penandatangan, lalu restart; tab menampilkan file setiap penandatangan dengan nama Anda sudah terisi.

Cek hasilnya dengan mengirim pesan ke diri sendiri dan membaca hasil DKIM di header, atau dengan pengecek DKIM kami.

OpenDKIM · KeyTable · SigningTable
# /etc/opendkim/KeyTable
s202610._domainkey.example.com example.com:s202610:/etc/opendkim/keys/example.com/s202610.private

# /etc/opendkim/SigningTable
*@example.com s202610._domainkey.example.com

# /etc/opendkim/TrustedHosts
127.0.0.1
localhost
Rspamd · dkim_signing.conf
# /etc/rspamd/local.d/dkim_signing.conf
domain {
  example.com {
    selector = "s202610";
    path = "/var/lib/rspamd/dkim/example.com.s202610.key";
  }
}
# only if example.com is a subdomain: use_esld = false;
# only if users log in without @example.com: allow_username_mismatch = true;

$ sudo rspamadm configtest && sudo systemctl restart rspamd
File penandatangan Anda

Mengapa record DKIM saya dipecah menjadi beberapa string?

Record kunci 2048 bit sekitar 410 karakter, lebih panjang dari satu string TXT 255 byte, jadi DNS menyimpannya sebagai dua string yang digabung verifikator tanpa sisipan apa pun.

Cloudflare, Azure dan panel ala cPanel menerima seluruh nilai dan memecahnya; Route 53 dan Google Cloud DNS meminta Anda menempel string bertanda kutip. GoDaddy membatasi nilai hingga 1024 karakter.

v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAtw0DwsqwlKexAE5H5WDgWwJlEz/C+7FIeL9/Y1TahjkvMvvX+lUQofjxhVmt/yMXVjvgrYb9jZIxtG96iO9qggOWi0vAeClBst4m3rj3O7GjkC/dfbG2BhQBpwJYt6ec76B8y6cyHBZ0+hMWGfAxuLQt/kkiVsaqwRxRQvEuMfnL4L9S8I7evV8GHFihlEgIaM9W8ag4zzL0ZxiEeznDaHYmJDbmgzarExXIY1IuMdpPu1/GmSrq9RCHEifKVvKsOPcmbv2u6xMbW63/EZmPIY78eZRqkioT8TangIPKsP7HEFZRKQwnQJy/OybqexdiFmt29BXBo7A745shhzueGQIDAQAB
1255 B2155 B
s202610._domainkey.example.com. 3600 IN TXT ( "v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAtw0DwsqwlKexAE5H5WDgWwJlEz/C+7FIeL9/Y1TahjkvMvvX+lUQofjxhVmt/yMXVjvgrYb9jZIxtG96iO9qggOWi0vAeClBst4m3rj3O7GjkC/dfbG2BhQBpwJYt6ec76B8y6cyHBZ0+hMWGfAxuLQt/kkiVsaqwRxRQvEuMfnL4L9S8I7evV8GHFihlEgIa"
	"M9W8ag4zzL0ZxiEeznDaHYmJDbmgzarExXIY1IuMdpPu1/GmSrq9RCHEifKVvKsOPcmbv2u6xMbW63/EZmPIY78eZRqkioT8TangIPKsP7HEFZRKQwnQJy/OybqexdiFmt29BXBo7A745shhzueGQIDAQAB" )
Record 2048 bit, seperti disimpan DNS

Bagaimana cara merotasi kunci DKIM?

Publikasikan kunci baru di selector baru, alihkan penandatanganan ke kunci itu, pertahankan record lama 7 sampai 30 hari untuk email yang masih dalam perjalanan, lalu cabut dengan p= kosong; M3AAWG menyatakan rotasi minimal setiap enam bulan.

Cabut, jangan hapus, agar verifikator melaporkan selector lama sebagai dicabut. Jangan pernah memakai ulang nama selector untuk kunci baru.

NovDesJanFebMarAprMeiJunJul
s202611menandatanganidipertahankan 7–30 harip= (dicabut)
s202705menandatangani
Dua selector, satu serah terima

Amankah membuat kunci DKIM secara online?

Hanya jika kunci dibuat di browser Anda dan tidak pernah dikirim: halaman ini membuatnya dengan Web Crypto di dalam frame terisolasi yang tidak bisa menjangkau jaringan, yang bisa Anda pastikan di developer tools browser.

Sebagian generator online membuat kunci di servernya dan mengirimkannya kembali dalam respons, tempat kunci itu bisa dicatat atau disimpan. Kunci yang dibuat di browser Anda hanya ada di tab Anda sampai Anda menyimpannya.

Tidak ada skrip lain di halaman ini yang bisa membaca frame yang menyimpan kunci, dan halaman berfungsi offline: matikan Wi-Fi Anda dan buat lagi.

Dibuat di browser Andaframe terisolasiberfungsi offline0permintaan jaringan
Dibuat di serverGET /generate?key_size=2048200 {"private_key": "-----BEGIN…"}bisa dicatat di log
Ke mana kunci privat berjalan

FAQ DKIM Record Generator

Apa itu record DKIM?

Record DKIM adalah record TXT di selector._domainkey.domainanda yang memublikasikan separuh publik dari pasangan kunci. Server email Anda menandatangani setiap pesan dengan separuh privatnya, dan penerima mengambil kunci publik untuk memastikan pesan benar-benar berasal dari domain Anda dan tidak diubah di perjalanan. Standarnya RFC 6376.

Amankah membuat kunci DKIM di sini?

Ya. Pasangan kunci dibuat dengan Web Crypto di browser Anda, di dalam frame terisolasi tanpa akses jaringan, dan tidak ada skrip lain di halaman yang bisa membacanya. Tidak ada yang dikirim: Anda bisa melihat tab jaringan di developer tools browser tetap kosong, atau mematikan koneksi dan membuat lagi.

Ukuran kunci mana yang sebaiknya saya pakai?

RSA 2048. RFC 8301 meminta penandatangan memakai minimal 2048 bit, Gmail dan Yahoo menyarankannya, dan recordnya muat di kebanyakan host DNS sebagai dua string. 1024 adalah minimum yang diterima penerima; pakai hanya jika host DNS Anda tidak bisa menerima nilai panjang. 4096 menghasilkan record panjang yang mungkin tidak muat dalam jawaban DNS biasa.

Apakah saya butuh kunci DKIM untuk Google Workspace atau Microsoft 365?

Tidak. Google Workspace membuat kunci di Admin console dan menunjukkan record TXT untuk google._domainkey; Microsoft 365 menandatangani dengan kunci di balik dua record CNAME, selector1 dan selector2. Kunci dari generator mana pun tidak akan dipakai. Pilih pengirim Anda di generator untuk melihat persis apa yang harus dipublikasikan.

Apa itu selector DKIM?

Selector adalah nama di depan ._domainkey yang memberi tahu penerima kunci mana yang harus diambil, seperti s202610 di s202610._domainkey.example.com. Dengan selector, satu domain bisa punya beberapa kunci sekaligus, satu per server, layanan atau tanggal. Generator menyarankan selector bertanggal, sehingga setiap kunci baru mendapat nama baru dan rotasi jadi mudah.

Apa format kunci privatnya?

PKCS#8 PEM (BEGIN PRIVATE KEY) secara bawaan, yang dibaca OpenDKIM, rspamd dan Exim. Anda bisa beralih ke PKCS#1 (BEGIN RSA PRIVATE KEY), bentuk tradisional yang didokumentasikan sebagian alat, atau satu baris base64 tanpa header dan jeda baris, yang diminta Amazon SES BYODKIM. Simpan dengan izin yang hanya bisa dibaca penandatangan.

Bisakah satu domain punya lebih dari satu record DKIM?

Bisa, di selector yang berbeda: setiap layanan yang menandatangani email Anda bisa punya record sendiri, dan satu rotasi sebentar punya dua milik Anda. Namun satu nama selector hanya boleh memuat satu record TXT; dua record pada nama yang sama membuat hasilnya tidak terdefinisi, dan verifikator bisa memilih salah satunya.

Mengapa record DKIM saya lebih panjang dari 255 karakter?

Kunci publik RSA 2048 bit berupa 392 karakter base64, jadi seluruh record sekitar 410. Satu string TXT menampung paling banyak 255 byte, jadi DNS menyimpannya sebagai dua string, dan verifikator menggabungkannya tanpa sisipan apa pun. Kebanyakan host DNS memecahnya untuk Anda; Route 53 dan Google Cloud DNS butuh string bertanda kutip.

Apa arti t=y di record DKIM?

t=y menandai kunci sedang diuji: verifikator harus memperlakukan email yang ditandatangani dengannya persis seperti email tanpa tanda tangan, meski tanda tangannya gagal. Pakai selagi Anda mengecek pengaturan, lalu hapus, karena kunci uji coba tidak memberi DMARC apa pun. t=s berbeda: ia mewajibkan identitas tanda tangan memakai domain Anda persis, bukan subdomain.

Seberapa sering kunci DKIM harus dirotasi?

Minimal setiap enam bulan, seperti yang disarankan M3AAWG. Publikasikan kunci baru di selector baru, alihkan penandatangan Anda ke kunci itu, dan pertahankan record lama selama 7 sampai 30 hari selagi email bertanda tangan masih dalam perjalanan. Lalu cabut selector lama dengan memublikasikannya dengan p= kosong, jangan dihapus.

Ada yang kurang?Usulkan fitur atau alat baru