差異處
這裏顯示兩個版本的差異處。
兩邊的前次修訂版前次修改 下次修改 | 前次修改 | ||
dns:dnssec [2011/06/02 18:16] – jal | dns:dnssec [2021/11/14 17:26] (目前版本) – jal | ||
---|---|---|---|
行 4: | 行 4: | ||
===== 實作步驟 ===== | ===== 實作步驟 ===== | ||
- 產生 DNSKEY | - 產生 DNSKEY | ||
- | - 產生 ZSK (Zone sign key) | + | |
- | * dnssec-keygen -r / | + | - 產生 KSK (Key Signing Key) |
- | | + | * dnssec-keygen -r / |
- | * dnssec-keygen -r / | + | * 同樣會產生二個檔案(檔名請勿修改) |
+ | * Kjal.tw.+005+46449.key | ||
+ | * Kjal.tw.+005+46449.private | ||
+ | | ||
+ | * dnssec-keygen -r / | ||
+ | * 會產生二個檔案(檔名請勿修改) | ||
+ | * Kjal.tw.+005+30233.key | ||
+ | * Kjal.tw.+005+30233.private | ||
+ | * 005 是代表 RSASHA1,[[http:// | ||
+ | * 30258 代表 Key ID | ||
+ | - 使用 RSA/SHA-256 演算法 | ||
+ | * dnssec-keygen -r / | ||
+ | * Kjal.tw.+008+33567.key | ||
+ | * Kjal.tw.+008+33567.private | ||
+ | * dnssec-keygen -r / | ||
+ | * Kjal.tw.+008+42644.key | ||
+ | * Kjal.tw.+008+42644.private | ||
+ | * 這時你會發現演算法變成 8 = RSA/ | ||
+ | * Tips: 產生出來之後常常會混亂哪個是 KSK 哪個是 ZSK,簡單的判斷法,由於 KSK 是 2048 bits,所以檔案大小會比較大,這樣看最快了~ | ||
- 將 DNSKEY 放入 zone file | - 將 DNSKEY 放入 zone file | ||
* cat *.key >> / | * cat *.key >> / | ||
- 簽署網域 | - 簽署網域 | ||
- | * dnssec-signzone -o jal.tw -k Kjal.tw.ksk.key / | + | * dnssec-signzone -o jal.tw -k Kjal.tw.+008+33567.key / |
+ | * dnssec-signzone -o domain -k KSK_file zone_file ZSK_file | ||
* 完成後會出現 / | * 完成後會出現 / | ||
+ | * ps.20150116: | ||
- 啟用該檔案 | - 啟用該檔案 | ||
* < | * < | ||
行 22: | 行 42: | ||
- reload named | - reload named | ||
* named.reload | * named.reload | ||
- | ===== 相關文章 ===== | + | - 因為常常會忘記每個重新簽發,所以寫了個 php 小程式直接丟 crontab 處理。[[https:// |
+ | ===== 完成後檢查 ===== | ||
+ | * dig any trace jal.tw | ||
+ | * dig +dnssec jal.tw | ||
+ | * dig any trace jal.tw @8.8.8.8 | ||
+ | * dig -6 any trace jal.tw @dns.google.com | ||
+ | * dig -6 any trace he.net @ns2.he.net | ||
+ | |||
+ | ===== 註冊 DS 紀錄至上層 DNS ===== | ||
+ | 本人在此步驟卡關卡了大概有三年之久了,從此文章完成後沒多久就發現\\ | ||
+ | [[https:// | ||
+ | 但由於網頁上寫的不清不楚的(< | ||
+ | 最後在瘋狂測試及直接看原文的相關說明後終於被我試出來了。\\ | ||
+ | * 所需檔案 dsset-jal.tw. 內容會類似下面< | ||
+ | jal.tw. | ||
+ | jal.tw. | ||
+ | jal.tw. | ||
+ | jal.tw. | ||
+ | </ | ||
+ | * TFN DS 註冊方式 | ||
+ | * 重點在於那個 4 跟 1 之間的空格請刪除,它就會變成長度 64 的 DS 紀錄 | ||
+ | * TFN 可支援不同的 Algorithm 所產生的紀錄 | ||
+ | * 但是都只支援輸入 Digest type 2 (SHA-256) 的紀錄,也就是上述紀錄第 6 個欄位為 2 的紀錄。 | ||
+ | * Digest type 1 為 SHA-1 紀錄 | ||
+ | * Cloudflare 註冊方式 | ||
+ | * 重點是 Alg 是 13 ECDSA,原先 tw 各家註冊商都不支援,不過再反應給 TWNIC 後,聽說都支援了。 | ||
+ | |||
+ | ^ Key ID ^ Algorithm Number ^ DS紀錄 ^ | ||
+ | | 46449 | 5 | E548AEB1E2988A3D2F2BC64631E305D4ABD23181B3AFAE785D6549D460CBD40B | | ||
+ | | 42644 | 8 | 0D2CF5DB1BB12345E9122AE18DDA3C55F53CC2D2C1FFA398E93549D4132D2A21 | | ||
+ | |||
+ | * HiNet DS 註冊方式 | ||
+ | * 個人沒有 HiNet 的,但是從 GSN 的文件看的話,我猜輸入格式如下 | ||
+ | * 另外,HiNet 直接寫明僅接受 Algorithm 為 SHA-256 所產生的紀錄(所以 dnssec-keygen 請用 -a RSASHA256 來產生 key) | ||
+ | |||
+ | ^ Keytag ^ DS 設定 ^ | ||
+ | | 42644 | 0D2CF5DB1BB12345E9122AE18DDA3C55F53CC2D2C1FFA398E93549D4132D2A21 | | ||
+ | |||
+ | ===== 相關網站 | ||
- [[http:// | - [[http:// | ||
- [[http:// | - [[http:// | ||
- | - [[http:// | + | - [[http:// |
+ | - [[http:// | ||
+ | - [[http:// | ||
===== 結論 ===== | ===== 結論 ===== | ||
- | * 我完成所有設定了,可是,我卻無法找上層來進行簽署的動作,因為上層也都還沒完成 | + | * 我完成所有設定了,<del>可是,我卻無法找上層來進行簽署的動作,因為上層也都還沒完成</ |
+ | * 我終於可以刪除上面這句話的後半部了,以及真正的完成前半部。 |