使用的组件
本文的信息根 据以下的软件及硬件版本。
- Cisco IOS 3600软件(C3640-IK9S-M),版本 12.2(2)T1
SSH介绍到 IOS platforms/images如下所示。
- SSH版本1.0 (SSHv1)服务器在起动在12.0.5.S 的一 些IOS platforms/images被引入了。
- SSH客户端在开始在12.1.3.T的一些IOS platforms/images介绍。
- SSH终端线 路接入(亦称反向Telnet)在开始在12.2.2.T的一些 IOS platforms/images被引入。
- 关 于信息关于SSH技术支持在交换机,参见 如何 配置SSH在运行CatcOs的Catalyst交换机。
关于一张完全特性集列表不同的平台 支持用不同的Cisco IOS版本和,参见
软件 顾问 (注册的用户)。
本文提供的信息在特定实验室环境里从设备被创建了 。用于本文的所有设备开始了以一个缺省(默认)配置。 如果在一个真实网络工作,保证您使用它以前了解所有命令 的潜在影响。
SSHv1与SSHv2 此时,IOS只支持SSHv1; Cisco没有计划实现 SSHv2。有此的几个原因,如下所述。
Cisco在Cisco IOS实现SSH当IP安全(IPSec) 通过互 联网工程任务组(IETF)被开发。在IPSec 开发过程期间,而 SSH的实施在IOS是更多一项战术措施提供接入路由器一个安全的方 法IPSec 是核心功能。Cisco投入人员维护SSH功能为修正, 但增进将制定要求低优先级。Cisco 做到配置IPSec为获取所有数据流,包括管理数据流到/从Cisco网络设备。
如果弱点在SSHv1的协议或实施被发 现,将制定他们的复核最优先考虑的事,和所有潜在安全漏洞。 注意Cisco IOS编码不是相同作为代码在UNIX、Windows,或 者所有其他设备查找。同样地,一个编码问题在那些实施之 一中在Cisco IOS很可能不会查找。 另外,不是所有的SSHv1 功能在Cisco实施可以被发现。值得注意,SSH在Cisco IOS不提供"会话转发",亦不提供建立隧道X11。 缺陷在通用代码 的这些部分不会是一个问题在Cisco IOS。如果任何申明的协议缺陷回顾表示,SSHv1协议在Cisco IOS是根本上残破的,则Cisco 确定那时移植到SSHv2是否是适当的。
网络图
测试认证 测试认证没有 SSH
我们测试认证没有 SSH首先将确信,认证通过用路由器卡特在添加SSH之前。 认证可以用运行TACACS+或RADIUS的验证、授权和记帐(AAA)服务器是 带有一个本地用户名/密码或。(认证通过线路密码不是可能的与SSH。) 下面的示例显示本地认证,让我们远程登录到路 由器带有用户名"cisco" 和密码"cisco"。
!--- aaa new-model causes the local username/password on the router !--- to be used in the absence of other aaa statements.
aaa new-model username cisco password 0 cisco line vty 0 4
!--- Instead of aaa new-model, the login local command may be used.
|
测试认证与 SSH 对测试认证与SSH, 我们在卡特补充说到前面的语句,启用SSH和测试SSH从PC和UNIX 工作站。
ip domain-name rtp.cisco.com
!--- Generate an SSH key to be used with SSH.
cry key generate rsa ip ssh time-out 60 ip ssh authentication-retries 2 |
这时,显示 生成的键, show cry key mypubkey rsa命令应该。在添加SSH配置以后 ,我们测试访问路由器从PC和UNIX 工作站。
可选配置设置 防止Non-SSH连接
如果我们想要防止non-SSH连接,我们添加
transport input SSH 在 线路之下对仅SSH连接限制路由器。平直的 (non-SSH) Telnets将拒绝。
line vty 0 4
!--- Prevent non-SSH Telnets.
transport input ssh
|
我们测试是确保的non-SSH用户不能远程登录到路由器卡特。
设置IOS 路由器或交换机作为SSH 客户端
有为启用SSH技术支持要求的四个步骤在IOS路由器。
- 配置 hostname命令。
- 配置DNS域。
- 生成将使用的SSH键。
- 启用SSH vtys的传输技术支持。
如果我们想要有一次设备操作作为SSH 客户端对其 他,我们能添加SSH到第二个设备,Reed。设备然后在客户端 服务器排列,用作为服务器和Reed的卡特作为客户端。 IOS SSH客户端配置在Reed是相同象为SSH 服务器配置需要在卡特。
!--- Step 1: Configure hostname if you have not previously done so.
hostname carter
!--- aaa new-model causes the local username/password on the router !--- to be used in the absence of other AAA statements.
aaa new-model username cisco password 0 cisco
!--- Step 2: Configure the router's DNS domain.
ip domain-name rtp.cisco.com
!--- Step 3: Generate an SSH key to be used with SSH.
cry key generate rsa ip ssh time-out 60 ip ssh authentication-retries 2
!--- Step 4: By default the vtys' transport is Telnet. In this case, !--- Telnet has been disabled and only SSH is supported.
line vty 0 4 transport input SSH
!--- Instead of aaa new-model, the login local command may be used.
测试此,发出以下命令对 SSH从IOS SSH 客户端(Reed)到IOS SSH服务器(卡特):
ssh -l cisco -c 3des 10.13.1.99
|
添加SSH 终端线路接入 如果 我们需要出局SSH终端线路验证,我们能为出局反向Telnet配置和测 试SSH通过卡特,作为通用服务器对Philly。
ip ssh port 2001 rotary 1 line 1 16 no exec rotary 1 transport input ssh exec-timeout 0 0 modem In Out Stopbits 1 |
如果Philly附有Carter端口2,我们会SSH 对Philly 通过卡特从Reed用以下命令:
ssh -c 3des -p 2002 10.13.1.99
从 Solaris,我们会使用以下命令:
ssh -c 3des -p 2002 -x -v 10.13.1.99 |
debug及show命令
在发出如下 被描述和说明的debug命令 之前,请参阅 重要信息关于Debug命令。 输 出解释器工具支持 某些show命令 (注 册的用户),允许您查看show命令输出分析 。
debug IP SSH - 显示调 试消息为SSH。
show SSH - 显示SSH服 务器连接状态。
carter#show ssh Connection Version Encryption State Username 0 1.5 DES Session started cisco show ip ssh - 显示版 本和配置数据为SSH。 carter#sho ip ssh SSH Enabled - version 1.5 Authentication timeout: 60 secs; Authentication retries: |
2
示例调试输出 注意一些此"好"调试输出包裹对多条线路由于间距注 意事项。
路由器调试
00:23:20: SSH0: starting SSH control process 00:23:20: SSH0: sent protocol version id SSH-1.5-Cisco-1.25 00:23:20: SSH0: protocol version id is - SSH-1.5-1.2.26 00:23:20: SSH0: SSH_SMSG_PUBLIC_KEY msg 00:23:21: SSH0: SSH_CMSG_SESSION_KEY msg - length 112, type 0x03 00:23:21: SSH: RSA decrypt started 00:23:21: SSH: RSA decrypt finished 00:23:21: SSH: RSA decrypt started 00:23:21: SSH: RSA decrypt finished 00:23:21: SSH0: sending encryption confirmation 00:23:21: SSH0: keys exchanged and encryption on 00:23:21: SSH0: SSH_CMSG_USER message received 00:23:21: SSH0: authentication request for userid cisco 00:23:21: SSH0: SSH_SMSG_FAILURE message sent 00:23:23: SSH0: SSH_CMSG_AUTH_PASSWORD message received 00:23:23: SSH0: authentication successful for cisco 00:23:23: SSH0: requesting TTY 00:23:23: SSH0: setting TTY - requested: length 24, width 80; set: length 24, width 80 00:23:23: SSH0: invalid request - 0x22 00:23:23: SSH0: SSH_CMSG_EXEC_SHELL message received 00:23:23: SSH0: starting shell for vty
|
服务器调试 注意: 此输出在Solaris 设备 被获取了。
rtp-evergreen.rtp.cisco.com# ssh -c 3des -l cisco -v 10.31.1.99 rtp-evergreen# /opt/CISssh/bin/ssh -c 3des -l cisco -v 10.13.1.99 SSH Version 1.2.26 [sparc-sun-solaris2.5.1], protocol version 1.5. Compiled with RSAREF. rtp-evergreen: Reading configuration data /opt/CISssh/etc/ssh_config rtp-evergreen: ssh_connect: getuid 0 geteuid 0 anon 0 rtp-evergreen: Allocated local port 1023. rtp-evergreen: Connecting to 10.13.1.99 port 22. rtp-evergreen: Connection established. rtp-evergreen: Remote protocol version 1.5, remote software version Cisco-1.25 rtp-evergreen: Waiting for server public key. rtp-evergreen: Received server public key (768 bits) and host key (512 bits). rtp-evergreen: Host '10.13.1.99' is known and matches the host key. rtp-evergreen: Initializing random; seed file //.ssh/random_seed rtp-evergreen: Encryption type: 3des rtp-evergreen: Sent encrypted session key. rtp-evergreen: Installing crc compensation attack detector. rtp-evergreen: Received encrypted confirmation. rtp-evergreen: Doing password authentication. cisco@10.13.1.99's password: rtp-evergreen: Requesting pty. rtp-evergreen: Failed to get local xauth data. rtp-evergreen: Requesting X11 forwarding with authentication spoofing. Warning: Remote host denied X11 forwarding, perhaps xauth program could not be run on the server side. rtp-evergreen: Requesting shell. rtp-evergreen: Entering interactive session. |
错在何处 下面是示例调试输出从几个不正确的配置。
SSH从SSH 客户端没被编译带有数据加密标准 (DES)
Solaris调试
rtp-evergreen# /opt/CISssh/bin/ssh -c des -l cisco -v 10.13.1.99 SSH Version 1.2.26 [sparc-sun-solaris2.5.1], protocol version 1.5. Compiled with RSAREF. rtp-evergreen: Reading configuration data /opt/CISssh/etc/ssh_config rtp-evergreen: ssh_connect: getuid 0 geteuid 0 anon 0 rtp-evergreen: Allocated local port 1023. rtp-evergreen: Connecting to 10.13.1.99 port 22. rtp-evergreen: Connection established. rtp-evergreen: Remote protocol version 1.5, remote software version Cisco-1.25 rtp-evergreen: Waiting for server public key. rtp-evergreen: Received server public key (768 bits) and host key (512 bits). rtp-evergreen: Host '10.13.1.99' is known and matches the host key. rtp-evergreen: Initializing random; seed file //.ssh/random_seed rtp-evergreen: Encryption type: des rtp-evergreen: Sent encrypted session key. cipher_set_key: unknown cipher: 2 路由器调试 00:24:41: SSH0: Session terminated normally 00:24:55: SSH0: starting SSH control process 00:24:55: SSH0: sent protocol version id SSH-1.5-Cisco-1.25 00:24:55: SSH0: protocol version id is - SSH-1.5-1.2.26 00:24:55: SSH0: SSH_SMSG_PUBLIC_KEY msg 00:24:55: SSH0: SSH_CMSG_SESSION_KEY msg - length 112, type 0x03 00:24:55: SSH: RSA decrypt started 00:24:56: SSH: RSA decrypt finished 00:24:56: SSH: RSA decrypt started 00:24:56: SSH: RSA decrypt finished 00:24:56: SSH0: sending encryption confirmation 00:24:56: SSH0: Session disconnected - error 0x07 错误密码 路由器调试 00:26:51: SSH0: starting SSH control process 00:26:51: SSH0: sent protocol version id SSH-1.5-Cisco-1.25 00:26:52: SSH0: protocol version id is - SSH-1.5-1.2.26 00:26:52: SSH0: SSH_SMSG_PUBLIC_KEY msg 00:26:52: SSH0: SSH_CMSG_SESSION_KEY msg - length 112, type 0x03 00:26:52: SSH: RSA decrypt started 00:26:52: SSH: RSA decrypt finished 00:26:52: SSH: RSA decrypt started 00:26:52: SSH: RSA decrypt finished 00:26:52: SSH0: sending encryption confirmation 00:26:52: SSH0: keys exchanged and encryption on 00:26:52: SSH0: SSH_CMSG_USER message received 00:26:52: SSH0: authentication request for userid cisco 00:26:52: SSH0: SSH_SMSG_FAILURE message sent 00:26:54: SSH0: SSH_CMSG_AUTH_PASSWORD message received 00:26:54: SSH0: password authentication failed for cisco 00:26:54: SSH0: SSH_SMSG_FAILURE message sent 00:26:54: SSH0: authentication failed for cisco (code=7) 00:26:54: SSH0: Session disconnected - error 0x07 SSH客户端发送不支持的(Blowfish) 密码 路由器调试 00:39:26: SSH0: starting SSH control process 00:39:26: SSH0: sent protocol version id SSH-1.5-Cisco-1.25 00:39:26: SSH0: protocol version id is - SSH-1.5-W1.0 00:39:26: SSH0: SSH_SMSG_PUBLIC_KEY msg 00:39:26: SSH0: SSH_CMSG_SESSION_KEY msg - length 112, type 0x03 00:39:26: SSH0: Session disconnected - error 0x20
|
(责任编辑:城尘 68476636-8003)