目錄

簡介

必要條件

需求

採用元件

設定

驗證

簡介

本檔案介紹如何在不提示輸入安全殼層(SSH)使用者密碼的情況下，ssh進入Cisco多層次資料交換器(MDS)9000或Nexus系列交換器。

您可以將ssh與基於金鑰的身份驗證結合使用並運行命令，這樣就不會出現密碼提示。

switch# ssh username@switch命令

必要條件

需求

思科建議您瞭解以下主題：

- 當前使用ssh應用程式的伺服器

採用元件

本文檔中的資訊基於使用ssh版本的Linux伺服器：

$ ssh -v

OpenSSH_5.0p1-hpn13v1,OpenSSL 0.9.8d 2006年9月28日

本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除（預設）的組態來啟動。如果您的網路正在作用，請確保您已瞭解任何指令可能造成的影響。

設定

要啟用此功能，請執行以下步驟：

步驟1.需要在MDS/Nexus交換機上啟用SSH。

#conf

(config)#feature ssh

步驟2.您需要從主機獲取公鑰，並在MDS/Nexus交換機上進行配置。

選項：

-v :Verbose已啟用

-b:金鑰的位數

-t:演算法型別DSA或RSA

$ ssh-keygen -v -b 1024 -t rsa

Generating public/private rsa key pair.

Enter file in which to save the key (/users/thteoh/.ssh/id_rsa):

Enter passphrase (empty for no passphrase):

Enter same passphrase again:

Your identification has been saved in /users/thteoh/.ssh/id_rsa.

Your public key has been saved in /users/thteoh/.ssh/id_rsa.pub.

The key fingerprint is:

61:18:ad:14:cd:a7:bf:44:89:73:4a:2e:09:96:bb:51 thteoh@people

附註：在本示例中，使用RSA時，您還可以選擇數位簽章演算法(DSA)金鑰。

使用cat with id_rsa.pub檔案驗證生成的金鑰（檔案也可以是id_dsa.pub）

$ cat id_rsa.pub

ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAIEAzDWrMuGDkDXFRnuCqdJRM9Yd+oi0ff2K6HxRsyqh82GmQJ3IX6OG7obiQTKnT9+eH7h2WCArEiMsOz3GYtakEkpYx6zR3cKwrsrgKv4TwRgSv8yUyH8GwPZOvZP97szJDu/3WP/ni4wJBb+yDqoI6+G1Rq/F2aYx45fh6SwlPv0= thteoh@people

步驟3.將id_rsa.pub（或id_dsa.pub）檔案傳輸到MDS/Nexus交換機的bootflash目錄並配置ssh公鑰。

在此示例中，SFTP用於在MDS交換機中傳輸id_rsa.pub

#copy sftp:  bootflash

要在Nexus交換機中傳輸檔案，請在命令中包括vrf。

步驟4.使用id_rsa.pub或id_dsa.pub在交換機上生成SSH金鑰。

用於參考teoh用戶名。

#conf

(config)#username teoh sshkey file bootflash:id_rsa.pub

步驟5.您可以檢查命令是否成功完成。

switch# show user-account teoh

user:teoh

this user account has no expiry date

roles:network-admin

ssh public key: ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAIEAzDWrMuGDkDXFRnuCqdJRM9Yd+oi0ff2K6HxRsyqh82GmQJ3IX6OG7o

biQTKnT9+eH7h2WCArEiMsOz3GYtakEkpYx6zR3cKwrsrgKv4TwRgSv8yUyH8GwPZOvZP97szJDu/3WP/ni4wJBb+yDqoI6+G1Rq/F2aYx45fh6Swl

Pv0= thteoh@people

switch#

驗證

現在，您可以通過ssh連線到switch，並在不提示密碼的情況下發出任何命令：

$ ssh teoh@10.66.78.53 "sh system uptime"

Warning: the output may not have all the roles

System start time: Tue May 29 17:51:30 2012

System uptime: 7 days, 19 hours, 42 minutes, 15 seconds

Kernel uptime: 7 days, 19 hours, 45 minutes, 17 seconds