AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 415419
Accepted
Shadur
Shadur
Asked: 2012-08-09 01:03:35 +0800 CST2012-08-09 01:03:35 +0800 CST 2012-08-09 01:03:35 +0800 CST

DNSSEC KSK/ZSK 可接受的密钥长度是多少?

  • 772

我的任务是研究在我们的名称服务器上实施 DNSSEC。虽然这方面的技术(生成密钥、标志区、准备翻转)相对简单,但我遇到了后勤问题。

从我一直在阅读的文档来看,1024 位对于区域签名密钥来说是一个很好的大小,正确的程序是每个区域一个 ZSK,大约一个月的翻转

但是,在具有相当大熵的速度相当快的计算机上,最多需要 10 分钟才能生成 1024 位密钥……而且我为超过三千个区域的主机工作的 ISP。除非我以某种方式从头到尾自动化该过程,否则这将行不通——即使我这样做,到该过程完成时,也差不多该开始 NEXT 翻转了。

简而言之,这是不可行的。现在我将 DNSSEC 限制在明确要求的客户,但这充其量只是权宜之计。

我的问题:

  • 我是不是对密钥长度太过分了?
  • 如何加快密钥生成过程?
  • 我应该为每个区域和 ZSK 创建单独的密钥签名密钥吗?

编辑:添加了我用来生成密钥的确切命令:

caleburn: ~/Projects/Systemec/DNS-magic/DNSSEC/keys/ >time dnssec-keygen -r/dev/random -a RSASHA256 -f KSK -b 1280 -n ZONE example.com 
Generating key pair.............................+++++ ...+++++ 
Kexample.com.+008+10282

real    9m46.094s
user    0m0.092s
sys 0m0.140s

caleburn: ~/Projects/Systemec/DNS-magic/DNSSEC/keys/ >time dnssec-keygen -r/dev/random -a RSASHA256  -b 1280 -n ZONE example.com 
Generating key pair.........................+++++ .........+++++ 
Kexample.com.+008+22173

real    12m47.739s
user    0m0.124s
sys 0m0.076s
domain-name-system
  • 2 2 个回答
  • 2483 Views

2 个回答

  • Voted
  1. Best Answer
    Cakemox
    2012-08-09T02:33:30+08:002012-08-09T02:33:30+08:00

    dnssec-keygen默认从中读取/dev/random。如果您系统上的熵很低,您将无法获得足够的随机数据来及时生成密钥。strace 可能会显示很多东西,比如:

    select(4, [3], [], NULL, NULL)          = 1 (in [3])
    read(3, "5%\5\32\316\337\241\323", 46)  = 8
    read(3, 0x7fff5b6c3df0, 38)             = -1 EAGAIN (Resource temporarily unavailable)
    select(4, [3], [], NULL, NULL)          = 1 (in [3])
    read(3, "\305\35\201c\31\343\251\21", 38) = 8
    read(3, 0x7fff5b6c3df0, 30)             = -1 EAGAIN (Resource temporarily unavailable)
    

    /dev/random如果没有足够的熵就会阻塞,所以可能需要一段时间。

    您有几个选项可以使它更快。最简单的方法是使用 change -r /dev/randomto-r /dev/urandom使用非阻塞(但不那么安全)的随机数生成器。对于您希望使用数年的 GPG 或 SSH 密钥之类的东西,这可能不被认为是安全的,但对于您每 30 天更改一次的东西来说,这可能是安全的。

    另一种选择是使用EGD或haveged 之类的东西来替代/dev/random.

    如果您想要更安全的 RNG,最好使用专用硬件 RNG。除非您管理的是 TLD 或银行域,否则这些对于 DNSSEC 来说可能有些矫枉过正。

    对于 KSK,您可能希望坚持使用 /dev/random,但对于 ZSK,/dev/urandom 应该是好的。

    • 4
  2. Chopper3
    2012-08-09T02:30:52+08:002012-08-09T02:30:52+08:00

    我认为普遍的共识是您的 ZSK 应该是 1024 位并且每季度轮换一次,而您的 KSK 应该是 2048 位并且每两年轮换一次。

    • 2

相关问题

  • Solaris DNS

  • resolv.conf 在经过一段时间后被更改

  • 为什么有些网站的网址中没有“www”就无法显示?[关闭]

  • 为本地网络中的名称解析添加自定义 dns 条目

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve