Cisco 3750G - SSH Diffie Hellman Group 1 SHA1 错误

网络工程 思科 cisco催化剂 ssh 验证 cisco-3750
2021-08-01 00:00:52

我最近在我的 3750G 交换机堆栈上实施了 SSH 配置。

我有

-set the domain name
-generated the rsa key using 2048 bits
-ensured that the vty lines are set to transport input ssh

现在我收到来自多个 telnet/ssh 客户端的错误消息,或多或少地说了以下内容。

在此处输入图片说明

我已经尝试将 RSA 密钥归零并生成一个新的 2048 位密钥,但同样的问题仍然存在。

我似乎对其他位置的其他交换机堆栈没有问题(尽管那些是 3750X 不是 3750G)。这是此特定 IOS 或型号的已知问题吗?

我目前正在运行以下内容:

Switch Ports Model              SW Version            SW Image
------ ----- -----              ----------            ----------
     1 52    WS-C3750G-48TS     12.2(55)SE12          C3750-IPBASEK9-M
*    2 52    WS-C3750G-48PS     12.2(55)SE12          C3750-IPBASEK9-M
     3 52    WS-C3750G-48PS     12.2(55)SE12          C3750-IPBASEK9-M
     4 52    WS-C3750G-48PS     12.2(55)SE12          C3750-IPBASEK9-M
2个回答

您的 SSH 客户端说“我们无法就密码达成一致:服务器想要 X,但我配置为不说 X”。这是一个完全通用的 SSH 问题,与这种交换机模型没有特别的关系,即 SSH 客户端会定期更改,通常是为了禁止旧的、较弱的密码。这与密钥长度无关,而与密码算法有关。

您的选择包括:

  • 升级交换机软件(在这种情况下认为不可能)
  • 升级交换机硬件,使其拥有更新的软件(花费金钱和时间)
  • 强制客户端使用服务器会接受的东西(可能有风险,取决于你的安全情况,但这通常是你决定长期做什么时最好的即时解决方案)
  • 使服务器接受 telnet 或其他没有加密问题的东西(几乎肯定有风险,但取决于您的安全情况)
  • 获得物理访问权限并使用控制台

路由器运行旧软件的示例:

 $ ssh 192.168.17.1
 Unable to negotiate with 192.168.17.1 port 22: no matching cipher found.
 Their offer:  aes128-cbc,3des-cbc,aes192-cbc,aes256-cbc
 $ ssh -c aes128-cbc 192.168.17.1
 Password: 

OpenSSH 在此提供有关此问题的建议:https : //www.openssh.com/legacy.html

另一种可能性可能是添加某种外部 SSH 到串行单元,尽管有些人会认为这是所有世界中最糟糕的,但它可能会通过 SSH 提供良好的密码。

我的 3750g 也有同样的问题。我现在可以登录:

ssh -oKexAlgorithms=+diffie-hellman-group1-sha1 -c aes256-cbc username@switchname