Arista EOS 和 Cisco IOS 如何加密 tacacs+ 加密密钥?

Arista EOS 和 Cisco IOS 如何加密 tacacs+ 加密密钥?

我们在网络设备上使用 tacacs 作为 AAA,我对我们的设备如何加密设备端密码很感兴趣/好奇。

Arista EOS 手册,第 139 页,我正在运行:

switch(config)#tacacs-server key 0 cv90jr1

指南告诉我相应的加密字符串是020512025B0C1D70

switch(config)#show running-config | grep tacacs
tacacs-server key 7 1306014B5B06167B

看到加密字符串与他们提到的不同,我很好奇。所以我又添加了十次相同的密钥,并查看了加密版本:

tacacs-server key 7 0110105D0B01145E
tacacs-server key 7 070C37151E030B54
tacacs-server key 7 020512025B0C1D70
tacacs-server key 7 1306014B5B06167B
tacacs-server key 7 020512025B0C1D70
tacacs-server key 7 020512025B0C1D70
tacacs-server key 7 0110105D0B01145E
tacacs-server key 7 110A0F5C4718195D
tacacs-server key 7 0007055F54511957
tacacs-server key 7 03074D525605331D

我找不到任何相关信息。我特别感兴趣的是,我三次碰撞了手册的密钥,并且在那里发生了另一次单独的碰撞。无论他们做什么加盐,似乎都没有特别大的输入域。

那么这到底是如何加密的呢?如果对手获取了设备的配置信息(比如说的输出show running-config),计算真正的 tacacs+ 密钥有多难/多容易?

Cisco IOS 的工作方式是否相同?我没有实验室 Cisco 设备来对此进行实验,但我的印象是 Arista 认为不需要不同的功能在 Arista 和 Cisco 之间是相同的。

答案1

这是 Cisco 7 型编码。我不太愿意称之为加密,因为它是一种非常弱的算法。为了演示,请将任何加密字符串放入此工具,它会立即给你密钥。

加密输出中的可变性确实来自某种盐 - 具体来说tfd;kfoA,.iyewrkldJKD。该字符串是恒定的,变化的是起点 - 加密字符串的前两个字符表示在盐上开始解密的位置。

这里有关算法实现细节的更多信息。

答案2

正如 Shane 所说,这些密钥几乎没有加密,人们普遍认为这只是防止密钥和密码被偷看的手段。事实上,如果你没有服务密码加密在 Cisco 中启用时,密钥将是纯文本。

通常建议,如果您需要与组织外部的某人共享此配置,则需要从配置文件中删除密钥以及使用类型 7 的任何其他密码。

相关内容