• 產品與解決方案
  • 行業解決方案
  • 服務
  • 支持
  • 合作夥伴
  • 關於我們

07-安全配置指導

目錄

11-SSH配置

本章節下載 11-SSH配置  (577.94 KB)

11-SSH配置


1 SSH

1.1  SSH簡介

SSH是Secure Shell(安全外殼)的簡稱,是一種在不安全的網絡環境中,通過加密機製和認證機製,實現安全的遠程訪問以及文件傳輸等業務的網絡安全協議。

SSH協議采用了典型的客戶端/服務器模式,並基於TCP協議協商建立用於保護數據傳輸的會話通道。設備既可以支持SSH服務器功能,接受多個SSH客戶端的連接,也可以支持SSH客戶端功能,允許用戶通過設備與遠程SSH服務器建立SSH連接。

目前,設備支持三種SSH應用:Stelnet、SFTP和SCP。

·     Stelnet是Secure Telnet的簡稱,可提供安全可靠的網絡終端訪問服務,使得用戶可以安全登錄到遠程設備,且能保護遠程設備不受諸如IP地址欺詐、明文密碼截取等攻擊。設備可支持Stelnet服務器、Stelnet客戶端功能。

·     SFTP是Secure FTP的簡稱,基於SSH2,可提供安全可靠的網絡文件傳輸服務,使得用戶可以安全登錄到遠程設備上進行文件管理操作,且能保證文件傳輸的安全性。設備可支持SFTP服務器、SFTP客戶端功能。

·     SCP是Secure Copy的簡稱,基於SSH2,可提供安全的文件複製功能。設備可支持SCP服務器、SCP客戶端功能。

SSH協議有兩個版本,SSH1和SSH2,兩者互不兼容,SSH2在性能和安全性方麵比SSH1有所提高。

說明

目前,設備作為SSH服務器時,在非FIPS模式下支持SSH2和SSH1兩個版本,在FIPS模式下隻支持SSH2版本;設備作為SSH客戶端時,隻支持SSH2版本。

 

1.1.1  SSH工作過程

說明

本小節以SSH2為例介紹SSH工作的過程。

 

SSH服務器端與SSH客戶端需要經曆表1-1所述的幾個階段的交互,才能實現SSH的安全連接,關於各階段的詳細介紹,請參見“SSH技術白皮書”。

表1-1 SSH服務器端與客戶端建立連接的幾個階段

階段

說明

連接建立

SSH服務器在22號端口偵聽客戶端的連接請求,在客戶端向服務器端發起連接請求後,雙方建立一個TCP連接

版本協商

雙方通過版本協商確定最終使用的SSH版本號

算法協商

SSH支持多種算法,雙方根據本端和對端支持的算法,協商出最終用於產生會話密鑰的密鑰交換算法、用於數據信息加密的加密算法、用於進行數字簽名和認證的公鑰算法,以及用於數據完整性保護的HMAC算法

密鑰交換

雙方通過DH(Diffie-Hellman Exchange)交換,動態地生成用於保護數據傳輸的會話密鑰和用來標識該SSH連接的會話ID,並完成客戶端對服務器端的身份認證

用戶認證

SSH客戶端向服務器端發起認證請求,服務器端對客戶端進行認證

會話請求

認證通過後,SSH客戶端向服務器端發送會話請求,請求服務器提供某種類型的服務(Stelnet、SFTP或SCP),即請求與服務器建立相應的會話

會話交互

會話建立後,SSH服務器端和客戶端在該會話上進行數據信息的交互

 

說明

·     交互會話階段,用戶在客戶端可以通過粘貼文本會話的方式執行命令,但文本會話不能超過2000字節,且粘貼的命令最好是同一視圖下的命令,否則服務器可能無法正確執行該命令。

·     如果粘貼的文本會話超過2000字節,可以采用將配置文件通過SFTP(Secure FTP,安全的FTP)方式上傳到服務器,利用新的配置文件重新啟動的方式執行這些命令。

 

1.1.2  SSH認證方式

設備作為SSH服務器可提供以下四種對客戶端的認證方式:

1. password認證

利用AAA(Authentication、Authorization、Accounting,認證、授權和計費)對客戶端身份進行認證。客戶端向服務器發出password認證請求,將用戶名和密碼加密後發送給服務器;服務器將認證請求解密後得到用戶名和密碼的明文,通過本地認證或遠程認證驗證用戶名和密碼的合法性,並返回認證成功或失敗的消息。

2. publickey認證

采用數字簽名的方式來認證客戶端。目前,設備上可以利用DSA和RSA公鑰算法實現數字簽名。客戶端發送包含用戶名、公鑰和公鑰算法(或者為攜帶公鑰信息的數字證書)的publickey認證請求給服務器端。服務器對公鑰進行合法性檢查,如果不合法,則直接發送失敗消息;否則,服務器利用數字簽名對客戶端進行認證,並返回認證成功或失敗的消息。

該認證方式下,設備支持客戶端采用不同的方式進行認證:

·     公鑰認證:客戶端直接提供用戶的公鑰信息給服務器,服務器對用戶公鑰進行合法性檢查。

·     證書認證:客戶端通過數字證書向服務器提供用戶的公鑰信息,服務器對用戶數字證書進行合法性檢查。目前,設備作為客戶端不支持此類認證。

3. password-publickey認證

對於SSH2版本的客戶端,要求同時進行password和publickey兩種方式的認證,且隻有兩種認證均通過的情況下,才認為客戶端身份認證通過;對於SSH1版本的客戶端,隻要通過其中任意一種認證即可。

4. any認證

不指定客戶端的認證方式,客戶端可采用password認證或publickey認證,且隻要通過其中任何一種認證即可。

說明

·     為便於描述,下文中提到的publickey/password認證方式是指涉及該認證方式的所有認證方式(publickey/password、password-publickey和any)。

·     客戶端進行password認證時,如果遠程認證服務器要求用戶進行二次密碼認證,則會在發送給服務器端的認證回應消息中攜帶一個提示信息,該提示信息被服務器端透傳給客戶端,由客戶端輸出並要求用戶再次輸入一個指定類型的密碼,當用戶提交正確的密碼並成功通過認證服務器的驗證後,服務器端才會返回認證成功的消息。

·     SSH1版本的SSH客戶端不支持AAA服務器發起的二次密碼認證。

 

1.2  配置SSH服務器

1.2.1  SSH服務器配置任務簡介

通過執行以下配置任務,可配置設備作為Stelnet、SFTP或SCP服務器。由於Stelnet、SFTP和SCP服務器功能的配置基本相同,因此除非特殊說明,本小節中使用SSH服務器作為Stelnet、SFTP和SCP服務器的統稱。

表1-2 SSH服務器配置任務簡介

配置任務

說明

詳細配置

生成本地DSA或RSA密鑰

必選

1.2.2 

使能SSH服務器功能

對於Stelnet、SFTP和SCP服務器均必選

1.2.3 

使能SFTP服務器功能

僅對於SFTP服務器必選

1.2.4 

配置SSH客戶端登錄時的用戶界麵

必選

1.2.5 

配置客戶端的公鑰

采用publickey認證方式且客戶端使用公鑰認證時必選

1.2.6 

配置認證客戶端證書的PKI

采用publickey認證方式且客戶端使用證書認證時必選

該PKI域中必須保存了用於認證客戶端證書的CA證書

請參見“安全配置指導”中的“PKI

配置SSH用戶

采用publickey認證方式時必選

其它情況下可選

1.2.7 

配置SSH管理功能

可選

1.2.8 

 

1.2.2  生成本地DSA或RSA密鑰對

服務器端的DSA或RSA密鑰對有兩個用途,其一是用於在密鑰交換階段生成會話密鑰和會話ID,另外一個是客戶端用它來對連接的服務器進行認證。客戶端驗證服務器身份時,首先判斷服務器發送的公鑰與本地保存的服務器公鑰是否一致,確認服務器公鑰正確後,再對服務器發送的該公鑰計算出的數字簽名進行驗證。

雖然一個客戶端隻會采用DSA和RSA公鑰算法中的一種來認證服務器,但是由於不同客戶端支持的公鑰算法不同,為了確保客戶端能夠成功登錄服務器,建議在服務器上同時生成DSA和RSA兩種密鑰對。

表1-3 生成本地DSA或RSA密鑰對

操作

命令

說明

進入係統視圖

system-view

-

生成本地DSA或RSA密鑰對

public-key local create { dsa | rsa }

必選

缺省情況下,不存在任何DSA和RSA密鑰對

 

說明

·     public-key local create命令的詳細介紹請參見“安全命令參考”中的“公鑰管理”。

·     通過public-key local create rsa命令生成RSA密鑰對時,將同時生成兩個密鑰對——服務器密鑰對和主機密鑰對,二者都包括一個公鑰和一個私鑰。SSH1中利用SSH服務器端的服務器公鑰加密會話密鑰,以保證會話密鑰傳輸的安全;SSH2中通過DH算法在SSH服務器和SSH客戶端上生成會話密鑰,不需要傳輸會話密鑰,因此SSH2中沒有利用服務器密鑰對。

·     通過public-key local create dsa命令生成DSA密鑰對時,隻生成一個主機密鑰對。

·     SSH1中不支持DSA算法。

·     在FIPS模式下,設備不支持DSA算法。

 

1.2.3  使能SSH服務器功能

該配置任務用於使能設備上的SSH服務器功能,使客戶端能用SSH協議與服務器進行通信。

表1-4 使能SSH服務器功能

操作

命令

說明

進入係統視圖

system-view

-

使能SSH服務器功能

ssh server enable

必選

缺省情況下,SSH服務器功能處於關閉狀態

 

說明

設備作為SCP服務器時,同一時間隻允許有一個SCP用戶訪問SCP服務器。

 

1.2.4  使能SFTP服務器功能

該配置任務用於使能設備上的SFTP服務器功能,使客戶端能用SFTP的方式登錄到服務器。

表1-5 啟動SFTP服務器功能

操作

命令

說明

進入係統視圖

system-view

-

使能SFTP服務器功能

sftp server enable

必選

缺省情況下,SFTP服務器處於關閉狀態

 

說明

設備作為SFTP服務器時,同一時間隻允許有一個用戶訪問SFTP服務器。

 

1.2.5  配置SSH客戶端登錄時使用的用戶界麵

SSH客戶端通過VTY用戶界麵訪問設備。因此,需要配置SSH客戶端登錄時采用的VTY用戶界麵,使其支持SSH遠程登錄協議。配置將在客戶端下次登錄時生效。

表1-6 配置SSH客戶端登錄時使用的用戶界麵

操作

命令

說明

進入係統視圖

system-view

-

進入VTY用戶界麵視圖

user-interface vty number [ ending-number ]

-

配置登錄用戶界麵的認證方式為scheme方式

authentication-mode scheme

必選

缺省情況下,用戶界麵認證為password方式

配置所在用戶界麵支持SSH協議

protocol inbound { all | ssh }

可選

缺省情況下,係統同時支持Telnet和SSH協議

 

說明

·     authentication-modeprotocol inbound命令的詳細介紹,請參見“基礎配置命令參考”中的“登錄設備”。

·     配置用戶界麵支持SSH協議之前,必須首先配置登錄用戶界麵的認證方式為scheme方式,否則protocol inbound命令會執行失敗。

 

1.2.6  配置客戶端的公鑰

說明

本配置僅適用於publickey認證方式且客戶端使用公鑰認證的情況。

 

服務器在采用公鑰驗證客戶端身份時,首先比較客戶端發送的SSH用戶名、主機公鑰是否與本地配置的SSH用戶名以及相應的客戶端主機公鑰一致,在確認用戶名和客戶端主機公鑰正確後,對客戶端發送的數字簽名進行驗證,該簽名是客戶端利用主機公鑰對應的私鑰計算出的。因此,需要在服務器端配置客戶端的DSA或RSA主機公鑰,並在客戶端為該SSH用戶指定與主機公鑰對應的DSA或RSA主機私鑰(若設備作為客戶端,則在向服務器發起連接時通過指定公鑰算法來實現)。

服務器端可以通過手工配置和從公鑰文件中導入兩種方式來配置客戶端的公鑰:

·     手工配置:事先在客戶端上查看並記錄客戶端主機公鑰的內容,然後采用手工輸入的方式將客戶端的公鑰配置到服務器上。手工輸入遠端主機公鑰時,可以逐個字符輸入,也可以一次拷貝粘貼多個字符。這種方式要求手工輸入或拷貝粘貼的主機公鑰必須是未經轉換的DER(Distinguished Encoding Rules,特異編碼規則)公鑰編碼格式。

·     從公鑰文件中導入:事先將客戶端的公鑰文件保存到服務器上(例如,通過FTP或TFTP以二進製方式將客戶端的公鑰文件保存到服務器),服務器從本地保存的該公鑰文件中導入客戶端的公鑰。導入公鑰時,係統會自動將客戶端公鑰文件轉換為PKCS(Public Key Cryptography Standards,公共密鑰加密標準)編碼形式。

說明

·     手工配置客戶端的公鑰時,輸入的主機公鑰必須滿足一定的格式要求。在設備作為客戶端情況下,通過display public-key local rsa public命令顯示的公鑰可以作為輸入的公鑰內容。通過其他方式查看到的公鑰可能不滿足格式要求,導致主機公鑰保存失敗。因此,建議選用從公鑰文件導入的方式配置遠端主機的公鑰。

·     SSH服務器上最多可以配置20個SSH客戶端的公鑰。

 

表1-7 手工配置客戶端的公鑰

操作

命令

說明

進入係統視圖

system-view

-

進入公鑰視圖

public-key peer keyname

-

進入公鑰編輯視圖

public-key-code begin

-

配置客戶端的公鑰

直接輸入公鑰內容

必選

在輸入公鑰內容時,字符之間可以有空格,也可以按回車鍵繼續輸入數據

退回公鑰視圖,並保存配置的主機公鑰

public-key-code end

必選

退出公鑰編輯視圖時,係統自動保存配置的公鑰密鑰

退回係統視圖

peer-public-key end

-

 

表1-8 從公鑰文件中導入客戶端的公鑰

操作

命令

說明

進入係統視圖

system-view

-

從公鑰文件中導入SSH用戶的公鑰

public-key peer keyname import sshkey filename

必選

 

說明

 

1.2.7  配置SSH用戶

說明

·     如果服務器采用publickey方式認證客戶端,則必須通過本配置在設備上創建相應的SSH用戶。

·     如果服務器采用password方式認證客戶端,則必須將SSH用戶的賬號信息配置在設備(適用於本地認證)或者遠程認證服務器(如RADIUS服務器,適用於遠程認證)上,而並不要求通過本配置創建相應的SSH用戶。如果通過本配置創建了相應的SSH用戶,則必須保證指定正確的服務類型以及認證方式。關於本地及遠程認證的相關配置請參見“安全配置指導”中的“AAA”。

 

本配置用於創建SSH用戶,並指定SSH用戶的服務類型、認證方式以及客戶端的公鑰或數字證書。

除password認證方式外,其它認證方式下均需要指定客戶端的公鑰或證書。

·     對於使用公鑰認證的SSH用戶,服務器端必須指定客戶端的公鑰,且指定的公鑰必須已經存在,公鑰內容的配置請參見“1.2.6  配置客戶端的公鑰”。

·     對於使用證書認證的SSH用戶,服務器端必須指定用於驗證客戶端證書的PKI域,PKI域的配置請參見“安全配置指導”中的“PKI”。為保證合法的SSH用戶可以成功通過認證,通過本命令指定的PKI域中必須存在用於驗證其證書的CA證書。

表1-9 配置SSH用戶

操作

命令

說明

進入係統視圖

system-view

-

配置SSH用戶

SSH用戶的服務類型為stelnet

ssh user username service-type stelnet authentication-type { password | { any | password-publickey | publickey } assign { pki-domain pkiname | publickey keyname } }

根據服務類型選擇其一

SSH用戶的服務類型為allscpsftp

ssh user username service-type { all | scp | sftp } authentication-type { password | { any | password-publickey | publickey } assign { pki-domain pkiname | publickey keyname  } work-directory directory-name }

 

說明

·     SSH服務器上最多可以創建1024個SSH用戶。

·     SSH1不支持服務類型sftpscp,因此設備不支持SSH1版本的客戶端發起的SFTP連接或SCP連接。

·     SFTP用戶登錄時使用的工作目錄與用戶使用的認證方式有關。隻要是采用publickey認證方式的用戶,使用的工作目錄均為通過ssh user命令為該用戶設置的工作目錄;僅采用password認證方式的用戶,使用的工作目錄為通過AAA授權的工作目錄。

·     隻要是使用publickey認證方式的用戶登錄服務器後,可以訪問的命令級別均為在用戶界麵上通過user privilege level命令配置的級別。

·     僅使用password認證方式的用戶登錄服務器後,用戶可以訪問的命令級別由AAA來授權。

·     對SSH用戶配置的修改,對於已經登錄的SSH用戶不會生效,隻在SSH用戶下次登錄時生效。

 

1.2.8  配置SSH管理功能

通過配置服務器上的SSH管理功能,可提高SSH連接的安全性。SSH的管理功能包括:

·     設置SSH服務器是否兼容SSH1版本的客戶端

·     設置RSA服務器密鑰對的更新時間,此配置僅對SSH客戶端版本為SSH1的用戶有效,SSH的核心是密鑰的協商和傳輸,因此密鑰的管理是非常重要的,可靈活設置更新時間間隔。

·     設置SSH用戶認證的超時時間。為了防止不法用戶建立起TCP連接後,不進行接下來的認證,而是空占著進程,妨礙其它合法用戶的正常登錄,可以設置驗證超時時間,如果在規定的時間內沒有完成認證就拒絕該連接。

·     設置SSH用戶請求連接的認證嚐試最大次數,限製登錄的重試次數,防止非法用戶對用戶名和密碼進行惡意地猜測和破解。

·     設置SFTP用戶連接的空閑超時時間。當SFTP用戶連接的空閑時間超過設定的閾值後,係統會自動斷開此用戶的連接,從而有效避免用戶長期占用連接而不進行任何操作。

表1-10 配置SSH管理功能

操作

命令

說明

進入係統視圖

system-view

-

設置SSH服務器兼容SSH1版本的客戶端

ssh server compatible-ssh1x enable

可選

缺省情況下,SSH服務器兼容SSH1版本的客戶端

設置RSA服務器密鑰對的更新時間

ssh server rekey-interval hours

可選

缺省情況下,係統不更新RSA服務器密鑰對

設置SSH用戶的認證超時時間

ssh server authentication-timeout time-out-value

可選

缺省情況下,SSH用戶的認證超時時間為60秒

設置SSH認證嚐試的最大次數

ssh server authentication-retries times

可選

缺省情況下,SSH連接認證嚐試的最大次數為3次

設置SFTP用戶連接的空閑超時時間

sftp server idle-timeout time-out-value

可選

缺省情況下,SFTP用戶連接的空閑超時時間為10分鍾

 

說明

SSH客戶端通過publickey和password兩種方式進行認證嚐試的次數總和,不能超過ssh server authentication-retries命令配置的SSH連接認證嚐試次數。

 

1.3  配置Stelnet客戶端

1.3.1  Stelnet客戶端配置任務簡介

表1-11 SSH客戶端配置任務簡介

配置任務

說明

詳細配置

為Stelnet客戶端指定源IP地址或源接口

可選

1.3.2 

配置SSH客戶端是否支持首次認證

可選

1.3.3 

建立與Stelnet服務器端的連接

必選

1.3.4 

 

1.3.2  為Stelnet客戶端指定源IP地址或源接口

Stelnet客戶端與Stelnet服務器通信時,缺省采用路由決定的源IP地址作為發送報文的源地址。如果使用本配置指定了源IP地址或源接口,則采用該地址與服務器進行通信。為保證Stelnet客戶端與Stelnet服務器通信鏈路的可達性,以及增加認證業務對SFTP客戶端的可管理性,通常建議指定Loopback接口或Dialer接口作為源接口。

表1-12 為Stelnet客戶端指定源IP地址或源接口

操作

命令

說明

進入係統視圖

system-view

-

為Stelnet客戶端指定源IP地址或源接口

為Stelnet客戶端指定源IPv4地址或源接口

ssh client source { interface interface-type interface-number | ip ip-address }

二者必選其一

缺省情況下,客戶端用設備路由指定的接口地址訪問Stelnet服務器

為Stelnet客戶端指定源IPv6地址或源接口

ssh client ipv6 source { interface interface-type interface-number | ipv6 ipv6-address }

 

1.3.3  配置SSH客戶端是否支持首次認證

設備作為SSH客戶端和服務器端連接時,將根據是否支持首次認證決定,在本地沒有配置服務器端的主機公鑰時,是否仍然信任服務器並繼續訪問該服務器:

·     如果支持首次認證,則當SSH客戶端首次訪問服務器,而客戶端沒有配置服務器端的主機公鑰時,用戶可以選擇繼續訪問該服務器,並在客戶端保存該主機公鑰;當用戶下次訪問該服務器時,就以保存的主機公鑰來認證該服務器。首次認證在比較安全的網絡環境中可以簡化客戶端的配置,但由於該方式下客戶端完全相信服務器公鑰的正確性,因此存在一定的安全隱患。

·     如果不支持首次認證,則當客戶端沒有配置服務器端的主機公鑰時,客戶端將拒絕訪問該服務器。用戶必須事先將要訪問的服務器端的主機公鑰配置在本地,同時指定要連接的服務器端的主機公鑰名稱,以便客戶端對連接的服務器進行認證。

1. 配置SSH客戶端支持首次認證

表1-13 配置SSH客戶端支持首次認證

操作

命令

說明

進入係統視圖

system-view

-

設置SSH客戶端支持首次認證

ssh client first-time enable

可選

缺省情況下,客戶端支持首次認證

 

2. 配置SSH客戶端不支持首次認證

如果配置SSH客戶端不支持首次認證,則需要在客戶端配置服務器端的主機公鑰,並為要連接的服務器指定主機公鑰名稱。

表1-14 配置SSH客戶端不支持首次認證

操作

命令

說明

進入係統視圖

system-view

-

設置SSH客戶端不支持首次認證

undo ssh client first-time

必選

缺省情況下,客戶端支持首次認證

配置服務器端的主機公鑰

請參見“1.2.6  配置客戶端的公鑰

必選

在客戶端配置服務器端主機公鑰的方法,與在服務器端配置客戶端公鑰的方法相同

在客戶端上指定要連接的服務器端的主機公鑰名稱

ssh client authentication server server assign publickey keyname

必選

 

1.3.4  建立與Stelnet服務器的連接

該配置任務用來啟動Stelnet客戶端程序,與遠程Stelnet服務器建立連接,並指定公鑰算法、首選加密算法、首選HMAC算法和首選密鑰交換算法。

表1-15 建立與Stelnet服務器的連接

操作

命令

說明

與Stelnet服務器端建立連接

與IPv4 Stelnet服務器端建立連接

·     在非FIPS模式下:

ssh2 server [ port-number ] [ identity-key { dsa | rsa } | prefer-compress { zlib | zlib-openssh } | prefer-ctos-cipher { 3des | aes128 | des } | prefer-ctos-hmac { md5 | md5-96 | sha1 | sha1-96 } | prefer-kex { dh-group-exchange | dh-group1 | dh-group14 } | prefer-stoc-cipher { 3des | aes128 | des } | prefer-stoc-hmac { md5 | md5-96 | sha1 | sha1-96 } ] *

·     在FIPS模式下:

ssh2 server [ port-number ] [ identity-key  rsa | prefer-ctos-cipher { aes128 | aes256 } | prefer-ctos-hmac { sha1 | sha1-96 } | prefer-kex dh-group14 | prefer-stoc-cipher { aes128 | aes256 } | prefer-stoc-hmac { sha1 | sha1-96 } ] *

二者必選其一

請在用戶視圖下執行本命令

與IPv6 Stelnet服務器端建立連接

·     在非FIPS模式下:

ssh2 ipv6 server [ port-number ] [ identity-key { dsa | rsa } | prefer-compress { zlib | zlib-openssh } | prefer-ctos-cipher { 3des | aes128 | des } | prefer-ctos-hmac { md5 | md5-96 | sha1 | sha1-96 } | prefer-kex { dh-group-exchange | dh-group1 | dh-group14 } | prefer-stoc-cipher { 3des | aes128 | des } | prefer-stoc-hmac { md5 | md5-96 | sha1 | sha1-96 } ] *

·     在FIPS模式下:

ssh2 ipv6 server [ port-number ] [ identity-key rsa | prefer-ctos-cipher { aes128 | aes256 } | prefer-ctos-hmac { sha1 | sha1-96 } | prefer-kex dh-group14 | prefer-stoc-cipher { aes128 | aes256 } | prefer-stoc-hmac { sha1 | sha1-96 } ] *

 

1.4  配置SFTP客戶端

1.4.1  SFTP客戶端配置任務簡介

表1-16 SFTP客戶端配置任務簡介

配置任務

說明

詳細配置

為SFTP客戶端指定源IP地址或源接口

可選

1.4.2 

配置SSH客戶端是否支持首次認證

可選

1.3.3 

建立與SFTP服務器端的連接

必選

1.4.3 

SFTP目錄操作

可選

1.4.4 

SFTP文件操作

可選

1.4.5 

顯示幫助信息

可選

1.4.6 

中止與SFTP服務器端的連接

可選

1.4.7 

 

1.4.2  為SFTP客戶端指定源IP地址或源接口

SFTP客戶端與SFTP服務器通信時,缺省采用路由決定的源IP地址作為發送報文的源地址。如果使用本配置指定了源IP地址或源接口,則采用該地址與服務器進行通信。為保證SFTP客戶端與SFTP服務器通信鏈路的可達性,以及增加認證業務對SFTP客戶端的可管理性,通常建議指定Loopback接口或Dialer接口作為源接口。

表1-17 為SFTP客戶端指定IP地址或源接口

操作

命令

說明

進入係統視圖

system-view

-

為SFTP客戶端指定源IP地址或源接口

為SFTP客戶端指定源IPv4地址或源接口

sftp client source { interface interface-type interface-number | ip ip-address }

二者必選其一

缺省情況下,客戶端用設備路由指定的接口地址訪問SFTP服務器

為SFTP客戶端指定源IPv6地址或源接口

sftp client ipv6 source { interface interface-type interface-number | ipv6 ipv6-address }

 

1.4.3  建立與SFTP服務器的連接

該配置任務用來啟動SFTP客戶端程序,與遠程SFTP服務器建立連接,並指定公鑰算法、首選加密算法、首選HMAC算法和首選密鑰交換算法。SFTP客戶端與服務器成功建立連接之後,用戶即可進入到服務器端上的SFTP客戶端視圖下進行目錄、文件等操作。

表1-18 建立與SFTP服務器端的連接

操作

命令

說明

與SFTP服務器建立連接,並進入SFTP客戶端視圖

與IPv4 SFTP服務器建立連接,並進入SFTP客戶端視圖

·     在非FIPS模式下:

sftp server [ port-number ] [ identity-key { dsa | rsa } | prefer-compress { zlib | zlib-openssh } | prefer-ctos-cipher { 3des | aes128 | des } | prefer-ctos-hmac { md5 | md5-96 | sha1 | sha1-96 } | prefer-kex { dh-group-exchange | dh-group1 | dh-group14 } | prefer-stoc-cipher { 3des | aes128 | des } | prefer-stoc-hmac { md5 | md5-96 | sha1 | sha1-96 } ] *

·     在FIPS模式下:

sftp server [ port-number ] [ identity-key rsa | prefer-ctos-cipher { aes128 | aes256 } | prefer-ctos-hmac { sha1 | sha1-96 } | prefer-kex dh-group14 | prefer-stoc-cipher { aes128 | aes256 } | prefer-stoc-hmac { sha1 | sha1-96 } ] *

二者必選其一

請在用戶視圖下執行此命令

與IPv6 SFTP服務器建立連接,並進入SFTP客戶端視圖

·     在非FIPS模式下:

sftp ipv6 server [ port-number ] [ identity-key { dsa | rsa } | prefer-compress { zlib | zlib-openssh } | prefer-ctos-cipher { 3des | aes128 | des } | prefer-ctos-hmac { md5 | md5-96 | sha1 | sha1-96 } | prefer-kex { dh-group-exchange | dh-group1 | dh-group14 } | prefer-stoc-cipher { 3des | aes128 | des } | prefer-stoc-hmac { md5 | md5-96 | sha1 | sha1-96 } ] *

·     在FIPS模式下:

sftp ipv6 server [ port-number ] [ identity-key rsa | prefer-ctos-cipher { aes128 | aes256 } | prefer-ctos-hmac { sha1 | sha1-96 } | prefer-kex dh-group14 | prefer-stoc-cipher { aes128 | aes256 } | prefer-stoc-hmac { sha1 | sha1-96 } ] *

 

1.4.4  SFTP目錄操作

SFTP目錄操作包括:改變或顯示當前的工作路徑、顯示指定目錄下的文件或目錄信息、改變服務器上指定的文件夾的名字、創建或刪除目錄等操作。

表1-19 SFTP目錄操作

操作

命令

說明

進入SFTP客戶端視圖

具體命令請參考1.4.3 

-

改變遠程SFTP服務器上的工作路徑

cd [ remote-path ]

可選

返回到上一級目錄

cdup

可選

顯示遠程SFTP服務器上的當前工作目錄

pwd

可選

顯示指定目錄下的文件列表

dir [ -a | -l ] [ remote-path ]

可選

dirls兩條命令的作用相同

ls [ -a | -l ] [ remote-path ]

改變SFTP服務器上指定的目錄的名字

rename oldname newname

可選

在遠程SFTP服務器上創建新的目錄

mkdir remote-path

可選

刪除SFTP服務器上指定的目錄

rmdir remote-path&<1-10>

可選

 

1.4.5  SFTP文件操作

SFTP文件操作包括:改變文件名、下載文件、上傳文件、顯示文件列表、刪除文件。

表1-20 SFTP文件操作

操作

命令

說明

進入SFTP客戶端視圖

具體命令請參考1.4.3 

-

改變SFTP服務器上指定的文件的名字

rename old-name new-name

可選

從遠程服務器上下載文件並存儲在本地

get remote-file [ local-file ]

可選

將本地的文件上傳到遠程SFTP服務器

put local-file [ remote-file ]

可選

顯示指定目錄下的文件

dir [ -a | -l ] [ remote-path ]

可選

dirls兩條命令的作用相同

ls [ -a | -l ] [ remote-path ]

刪除SFTP服務器上指定的文件

delete remote-file&<1-10>

可選

deleteremove兩條命令的功能相同

remove remote-file&<1-10>

 

1.4.6  顯示幫助信息

本配置用於顯示命令的幫助信息,如命令格式、參數配置等。

表1-21 顯示客戶端命令的幫助信息

操作

命令

說明

進入SFTP客戶端視圖

具體命令請參考1.4.3 

-

顯示SFTP客戶端命令的幫助信息

help [ all | command-name ]

必選

 

1.4.7  終止與SFTP服務器的連接

表1-22 終止與SFTP服務器的連接

操作

命令

說明

進入SFTP客戶端視圖

具體命令請參考1.4.3 

-

終止與SFTP服務器的連接,並退回用戶視圖

bye

三者必選其一

byeexitquit三條命令的功能相同

exit

quit

 

1.5  配置SCP客戶端

1.5.1  SCP客戶端配置任務簡介

表1-23 SCP客戶端配置任務簡介

配置任務

說明

詳細配置

配置SSH客戶端是否支持首次認證

可選

1.3.3 

與遠程SCP服務器傳輸文件

必選

1.5.2 

 

1.5.2  與遠程SCP服務器傳輸文件

該配置任務用來啟動SCP客戶端程序,與遠程SCP服務器建立連接,並進行安全的文件傳輸操作。

表1-24 與遠程SCP服務器傳輸文件

操作

命令

說明

與遠程SCP服務器建立連接,並進行文件傳輸

向遠程SCP服務器上傳文件

·     非FIPS模式下:

scp [ ipv6 ] server [ port-number ] put source-file-path [ destination-file-path ]  [ identity-key { dsa | rsa } | prefer-compress { zlib | zlib-openssh } | prefer-ctos-cipher { 3des | aes128 | des } | prefer-ctos-hmac { md5 | md5-96 | sha1 | sha1-96 } | prefer-kex { dh-group-exchange | dh-group1 | dh-group14 } | prefer-stoc-cipher { 3des | aes128 | des } | prefer-stoc-hmac { md5 | md5-96 | sha1 | sha1-96 } ] *

·     FIPS模式下:

scp [ ipv6 ] server [ port-number ] put source-file-path [ destination-file-path ]  [ identity-key rsa | prefer-compress { zlib | zlib-openssh } | prefer-ctos-cipher { aes128 | aes256 } | prefer-ctos-hmac { sha1 | sha1-96 } | prefer-kex dh-group14 | prefer-stoc-cipher { aes128 | aes256 } | prefer-stoc-hmac { sha1 | sha1-96 } ] *

二者必選其一

從遠程SCP服務器下載文件

·     非FIPS模式下:

scp [ ipv6 ] server [ port-number ] get source-file-path [ destination-file-path ]  [ identity-key { dsa | rsa } | prefer-compress { zlib | zlib-openssh } | prefer-ctos-cipher { 3des | aes128 | des } | prefer-ctos-hmac { md5 | md5-96 | sha1 | sha1-96 } | prefer-kex { dh-group-exchange | dh-group1 | dh-group14 } | prefer-stoc-cipher { 3des | aes128 | des } | prefer-stoc-hmac { md5 | md5-96 | sha1 | sha1-96 } ] *

·     FIPS模式下:

scp [ ipv6 ] server [ port-number ] get source-file-path [ destination-file-path ]  [ identity-key rsa | prefer-compress { zlib | zlib-openssh } | prefer-ctos-cipher { aes128 | aes256 } | prefer-ctos-hmac { sha1 | sha1-96 } | prefer-kex dh-group14 | prefer-stoc-cipher { aes128 | aes256 } | prefer-stoc-hmac { sha1 | sha1-96 } ] *

 

1.6  SSH顯示和維護

在完成上述配置後,在任意視圖下執行display命令,可以顯示配置後SSH的運行情況,通過查看顯示信息驗證配置的效果。

表1-25 SSH顯示和維護

操作

命令

顯示當前為SFTP客戶端設置的源IP地址或者源接口

display sftp client source [ | { begin | exclude | include } regular-expression ]

顯示當前為Stelnet客戶端設置的源IP地址或者源接口

display ssh client source [ | { begin | exclude | include } regular-expression ]

在SSH服務器端顯示該服務器的狀態信息或會話信息

display ssh server { status | session } [ | { begin | exclude | include } regular-expression ]

在SSH客戶端顯示客戶端保存的服務器端的主機公鑰和服務器的對應關係

display ssh server-info [ | { begin | exclude | include } regular-expression ]

在SSH服務器端顯示SSH用戶信息

display ssh user-information [ username ] [ | { begin | exclude | include } regular-expression ]

顯示本地密鑰對中的公鑰部分

display public-key local  { dsa | rsa } public [ | { begin | exclude | include } regular-expression ]

顯示保存在本地的遠端主機的公鑰信息

display public-key peer [ brief | name publickey-name ] [ | { begin | exclude | include } regular-expression ]

 

說明

display public-key localdisplay public-key peer命令的詳細介紹請參見“安全命令參考”中的“公鑰管理”。

 

1.7  Stelnet典型配置舉例

1.7.1  設備作為Stelnet服務器配置舉例(password認證)

1. 組網需求

·     用戶可以通過Client上運行的Stelnet客戶端軟件(SSH2版本)安全地登錄到AC上進行配置管理;

·     AC采用password認證方式對Stelnet客戶端進行認證,客戶端的用戶名和密碼保存在本地。

說明

 

2. 組網圖

圖1-1 設備作為Stelnet服務器配置組網圖

 

3. 配置步驟

(1)     配置Stelnet客戶端

# 生成RSA密鑰對。

在客戶端運行PuTTYGen.exe,在參數欄中選擇“SSH-2 RSA”,點擊<Generate>,產生客戶端密鑰對。

圖1-2 生成客戶端密鑰(步驟1)

 

在產生密鑰對的過程中需不停地移動鼠標,鼠標移動僅限於下圖藍色框中除綠色標記進程條外的地方,否則進程條的顯示會不動,密鑰對將停止產生,見圖1-9

圖1-3 生成客戶端密鑰(步驟2)

 

密鑰對產生後,點擊<Save public key>,輸入存儲公鑰的文件名key.pub,點擊<保存>按鈕。

圖1-4 生成客戶端密鑰(步驟3)

 

點擊<Save private key>存儲私鑰,彈出警告框,提醒是否保存沒做任何保護措施的私鑰,點擊<Yes>,輸入私鑰文件名為private.ppk,點擊保存。

圖1-5 生成客戶端密鑰(步驟4)

 

客戶端生成密鑰對後,需要將保存的公鑰文件key.pub通過FTP/TFTP方式上傳到服務器,具體過程略。

(2)     配置Stelnet服務器AC

# 生成RSA密鑰對。

<AC> system-view

[AC] public-key local create rsa

# 使能SSH服務器功能。

[AC] ssh server enable

# 配置VLAN接口2的IP地址,客戶端將通過該地址連接Stelnet服務器。

[AC] interface vlan-interface 2

[AC-Vlan-interface2] ip address 192.168.1.40 255.255.255.0

[AC-Vlan-interface2] quit

# 設置Stelnet客戶端登錄用戶界麵的認證方式為AAA認證。

[AC] user-interface vty 0 4

[AC-ui-vty0-4] authentication-mode scheme

# 設置AC上遠程用戶登錄協議為SSH。

[AC-ui-vty0-4] protocol inbound ssh

[AC-ui-vty0-4] quit

# 創建本地用戶client001,密碼為aabbcc,用戶級別為3級,服務類型為SSH。

[AC] local-user client001

[AC-luser-client001] password simple aabbcc

[AC-luser-client001] authorization-attribute level 3

[AC-luser-client001] service-type ssh

[AC-luser-client001] quit

# 配置SSH用戶client001的服務類型為Stelnet,認證方式為password認證。(此步驟可以不配置)

[AC] ssh user client001 service-type stelnet authentication-type password

(3)     Stelnet客戶端建立與Stelnet服務器的連接

說明

Stelnet客戶端軟件有很多,例如PuTTY、OpenSSH等。本文中僅以客戶端軟件PuTTY0.58為例,說明Stelnet客戶端的配置方法。

 

# 建立與Stelnet服務器端的連接。

打開PuTTY.exe程序,出現如圖1-6所示的客戶端配置界麵。在“Host Name(or IP address)”文本框中輸入Stelnet服務器的IP地址為192.168.1.40。

圖1-6 Stelnet客戶端配置界麵

 

圖1-6中,單擊<Open>按鈕,出現SSH客戶端界麵。按提示輸入用戶名client001及密碼aabbcc,即可進入AC的配置界麵。

1.7.2  設備作為Stelnet服務器配置舉例(publickey認證)

1. 組網需求

·     用戶可以通過Client上運行的Stelnet客戶端軟件(SSH2版本)安全地登錄到AC上進行配置管理;

·     AC采用publickey認證方式對Stelnet客戶端進行認證,使用的公鑰算法為RSA。

2. 組網圖

圖1-7 設備作為Stelnet服務器配置組網圖

 

3. 配置步驟

說明

 

(1)     配置Stelnet客戶端Client

# 生成RSA密鑰對。

在客戶端運行PuTTYGen.exe,在參數欄中選擇“SSH-2 RSA”,點擊<Generate>,產生客戶端密鑰對。

圖1-8 生成客戶端密鑰(步驟1

 

在產生密鑰對的過程中需不停地移動鼠標,鼠標移動僅限於下圖藍色框中除綠色標記進程條外的地方,否則進程條的顯示會不動,密鑰對將停止產生,見圖1-9

圖1-9 生成客戶端密鑰(步驟2

 

密鑰對產生後,點擊<Save public key>,輸入存儲公鑰的文件名key.pub,點擊<保存>按鈕。

圖1-10 生成客戶端密鑰(步驟3

 

點擊<Save private key>存儲私鑰,彈出警告框,提醒是否保存沒做任何保護措施的私鑰,點擊<Yes>,輸入私鑰文件名為private.ppk,點擊保存。

圖1-11 生成客戶端密鑰(步驟4

 

客戶端生成密鑰對後,需要將保存的公鑰文件key.pub通過FTP/TFTP方式上傳到服務器,具體過程略。

(2)     配置Stelnet服務器AC

# 生成RSA密鑰對。

<AC> system-view

[AC] public-key local create rsa

# 使能SSH服務器功能。

[AC] ssh server enable

# 配置VLAN接口2的IP地址,客戶端將通過該地址連接Stelnet服務器。

[AC] interface vlan-interface 2

[AC-Vlan-interface2] ip address 192.168.1.40 255.255.255.0

[AC-Vlan-interface2] quit

# 設置Stelnet客戶端登錄用戶界麵的認證方式為AAA認證。

[AC] user-interface vty 0 4

[AC-ui-vty0-4] authentication-mode scheme

# 設置AC上遠程用戶登錄協議為SSH。

[AC-ui-vty0-4] protocol inbound ssh

# 設置用戶能訪問的命令級別為3。

[AC-ui-vty0-4] user privilege level 3

[AC-ui-vty0-4] quit

# 從文件key.pub中導入遠端的公鑰,並命名為Key001。

[AC] public-key peer Key001 import sshkey key.pub

# 設置SSH用戶client002的認證方式為publickey,並指定公鑰為Key001。

[AC] ssh user client002 service-type stelnet authentication-type publickey assign publickey Key001

(3)     Stelnet客戶端建立與Stelnet服務器的連接

# 指定私鑰文件,並建立與Stelnet服務器的連接。

打開PuTTY.exe程序,出現如圖1-12所示的客戶端配置界麵。在“Host Name(or IP address)”文本框中輸入Stelnet服務器的IP地址為192.168.1.40。

圖1-12 Stelnet客戶端配置界麵

 

單擊左側導航欄“Connection->SSH”下麵的“Auth”(認證),出現如圖1-13的界麵。單擊<Browse…>按鈕,彈出文件選擇窗口。選擇與配置到服務器端的公鑰對應的私鑰文件private。

圖1-13 Stelnet客戶端配置界麵

 

圖1-13,單擊<Open>按鈕,出現SSH客戶端界麵。按提示輸入用戶名client002,即可進入AC的配置界麵。

1.7.3  設備作為Stelnet客戶端配置舉例(password認證)

1. 組網需求

·     配置AC作為Stelnet客戶端,用戶能夠通過AC安全地登錄到Switch上進行配置管理。

·     Switch作為Stelnet服務器采用password認證方式對Stelnet客戶端進行認證,客戶端的用戶名和密碼保存在Switch上。

2. 組網圖

圖1-14 設備作為Stelnet客戶端配置組網圖

 

3. 配置步驟

(1)     配置Stelnet服務器Switch

# 生成RSA密鑰對。

<Switch> system-view

[Switch] public-key local create rsa

# 使能SSH服務器功能。

[Switch] ssh server enable

# 配置VLAN接口2的IP地址,客戶端將通過該地址連接Stelnet服務器。

[Switch] interface vlan-interface 2

[Switch-Vlan-interface2] ip address 192.168.1.40 255.255.255.0

[Switch-Vlan-interface2] quit

# 設置Stelnet客戶端登錄用戶界麵的認證方式為AAA認證。

[Switch] user-interface vty 0 4

[Switch-ui-vty0-4] authentication-mode scheme

# 設置Switch上遠程用戶登錄協議為SSH。

[Switch-ui-vty0-4] protocol inbound ssh

[Switch-ui-vty0-4] quit

# 創建本地用戶client001,密碼為aabbcc,用戶級別為3級,服務類型為SSH。

[Switch] local-user client001

[Switch-luser-client001] password simple aabbcc

[Switch-luser-client001] authorization-attribute level 3

[Switch-luser-client001] service-type ssh

[Switch-luser-client001] quit

# 配置SSH用戶client001的服務類型為Stelnet,認證方式為password認證。

[Switch] ssh user client001 service-type stelnet authentication-type password

(2)     Stelnet客戶端建立與Stelnet服務器的連接

# 配置VLAN接口2的IP地址。

<AC> system-view

[AC] interface vlan-interface 2

[AC-Vlan-interface2] ip address 192.168.1.56 255.255.255.0

[AC-Vlan-interface2] quit

[AC] quit

# 配置客戶端對服務器不進行首次認證。

[AC] undo ssh client first-time

# 在客戶端配置SSH服務器端的主機公鑰。在公鑰編輯視圖輸入服務器端的主機公鑰。

[AC] public-key peer key1

[AC-pkey-public-key] public-key-code begin

[AC-pkey-key-code]308201B73082012C06072A8648CE3804013082011F0281810

0D757262C4584C44C211F18BD96E5F0

[AC-pkey-key-code]61C4F0A423F7FE6B6B85B34CEF72CE14A0D3A5222FE08CECE

65BE6C265854889DC1EDBD13EC8B274

[AC-pkey-key-code]DA9F75BA26CCB987723602787E922BA84421F22C3C89CB9B0

6FD60FE01941DDD77FE6B12893DA76E

[AC-pkey-key-code]EBC1D128D97F0678D7722B5341C8506F358214B16A2FAC4B3

68950387811C7DA33021500C773218C

[AC-pkey-key-code]737EC8EE993B4F2DED30F48EDACE915F0281810082269009E

14EC474BAF2932E69D3B1F18517AD95

[AC-pkey-key-code]94184CCDFCEAE96EC4D5EF93133E84B47093C52B20CD35D02

492B3959EC6499625BC4FA5082E22C5

[AC-pkey-key-code]B374E16DD00132CE71B020217091AC717B612391C76C1FB2E

88317C1BD8171D41ECB83E210C03CC9

[AC-pkey-key-code]B32E810561C21621C73D6DAAC028F4B1585DA7F42519718CC

9B09EEF0381840002818000AF995917

[AC-pkey-key-code]E1E570A3F6B1C2411948B3B4FFA256699B3BF871221CC9C5D

F257523777D033BEE77FC378145F2AD

[AC-pkey-key-code]D716D7DB9FCABB4ADBF6FB4FDB0CA25C761B308EF53009F71

01F7C62621216D5A572C379A32AC290

[AC-pkey-key-code]E55B394A217DA38B65B77F0185C8DB8095522D1EF044B465E

8716261214A5A3B493E866991113B2D

[AC-pkey-key-code]485348

[AC-pkey-key-code] public-key-code end

[AC-pkey-public-key] peer-public-key end

# 指定服務器192.168.1.40對應的主機公鑰名稱為key1。

[AC] ssh client authentication server 192.168.1.40 assign publickey key1

[AC] quit

# 建立到服務器192.168.1.40的SSH連接。

<AC> ssh2 192.168.1.40

Username: client001

Trying 192.168.1.40

Press CTRL+K to abort

Connected to 192.168.1.40...

Enter password:

******************************************************************************

* Copyright (c) 2004-2017 New H3C Technologies Co., Ltd. All rights reserved.*

* Without the owner's prior written consent,                                 *

* no decompiling or reverse-engineering shall be allowed.                    *

******************************************************************************

<Switch>

1.7.4  設備作為Stelnet客戶端配置舉例(publickey認證)

1. 組網需求

·     配置AC作為Stelnet客戶端,用戶能夠通過AC安全地登錄到Switch上進行配置管理。

·     Switch作為Stelnet服務器采用publickey認證方式對Stelnet客戶端進行認證,使用的公鑰算法為RSA。

2. 組網圖

圖1-15 設備作為Stelnet客戶端配置組網圖

 

3. 配置步驟

說明

 

(1)     配置Stelnet客戶端AC

# 配置VLAN接口2的IP地址。

<AC> system-view

[AC] interface vlan-interface 2

[AC-Vlan-interface2] ip address 192.168.1.56 255.255.255.0

[AC-Vlan-interface2] quit

# 生成RSA密鑰對。

[AC] public-key local create rsa

# 將生成的RSA主機公鑰導出到指定文件key.pub中。

[AC] public-key local export rsa ssh2 key.pub

[AC] quit

客戶端生成密鑰對後,需要將保存的公鑰文件key.pub通過FTP/TFTP方式上傳到服務器,具體過程略。

(2)     配置Stelnet服務器Switch(以H3C交換機為例)

# 生成RSA密鑰對。

<Switch> system-view

[Switch] public-key local create rsa

# 使能SSH服務器功能。

[Switch] ssh server enable

# 配置VLAN接口2的IP地址,客戶端將通過該地址連接SSH服務器。

[Switch] interface vlan-interface 2

[Switch-Vlan-interface2] ip address 192.168.1.40 255.255.255.0

[Switch-Vlan-interface2] quit

# 設置Stelnet客戶端登錄用戶界麵的認證方式為AAA認證。

[Switch] user-interface vty 0 4

[Switch-ui-vty0-4] authentication-mode scheme

# 設置Switch上遠程用戶登錄協議為SSH。

[Switch-ui-vty0-4] protocol inbound ssh

# 設置用戶能訪問的命令級別為3。

[Switch-ui-vty0-4] user privilege level 3

[Switch-ui-vty0-4] quit

# 從文件key.pub中導入遠端的公鑰,並命名為key001。

[Switch] public-key peer key001 import sshkey key.pub

# 設置SSH用戶client002的認證方式為publickey,並指定公鑰為key001。

[Switch] ssh user client002 service-type stelnet authentication-type publickey assign publickey key001

(3)     Stelnet客戶端建立與Stelnet服務器的連接

# 建立到服務器192.168.1.40的SSH連接。

<AC> ssh2 192.168.1.40

Username: client002

Trying 192.168.1.40 ...

Press CTRL+K to abort

Connected to 192.168.1.40 ...

 

The Server is not authenticated. Continue? [Y/N]:y

Do you want to save the server public key? [Y/N]:n

 

******************************************************************************

* Copyright (c) 2004-2017 New H3C Technologies Co., Ltd. All rights reserved.*

* Without the owner's prior written consent,                                 *

* no decompiling or reverse-engineering shall be allowed.                    *

******************************************************************************

<Switch>

1.8  SFTP典型配置舉例

1. 組網需求

如下圖所示,AC 1和AC 2之間建立SSH連接,AC 1作為SFTP客戶端登錄到AC 2,進行文件管理和文件傳送等操作,用戶名為client001,密碼為aabbcc。

2. 組網圖

圖1-16 設備作為SFTP client組網圖

 

3. 配置步驟

(1)     配置服務器端AC 2

# 生成RSA密鑰對,並啟動SSH服務器。

<AC2> system-view

[AC2] public-key local create rsa

[AC2] ssh server enable

# 配置VLAN接口2的IP地址,客戶端將通過該地址連接SSH服務器。

[AC2] interface vlan-interface 2

[AC2-Vlan-interface2] ip address 192.168.0.1 255.255.255.0

[AC2-Vlan-interface2] quit

# 設置SSH客戶端登錄用戶界麵的認證方式為AAA認證。

[AC2] user-interface vty 0 4

[AC2-ui-vty0-4] authentication-mode scheme

# 設置AC 2上遠程用戶登錄協議為SSH。

[AC2-ui-vty0-4] protocol inbound ssh

[AC2-ui-vty0-4] quit

# 創建本地用戶client001。

[AC2] local-user client001

[AC2-luser-client001] password simple aabbcc

[AC2-luser-client001]authorization-attribute level 3

[AC2-luser-client001] service-type ssh

[AC2-luser-client001] quit

# 配置SSH用戶認證方式為password,服務類型為SFTP

[AC2] ssh user client001 service-type sftp authentication-type password

說明

如果配置SSH用戶的認證方式為publickey,則需要配置AC 1的主機公鑰。具體配置方法可以參見“1.7.2  設備作為Stelnet服務器配置舉例(publickey認證)”。

 

# 啟動SFTP服務器。

[AC2] sftp server enable

(2)     配置客戶端AC 1

# 配置VLAN接口2的IP地址。

<AC1> system-view

[AC1] interface vlan-interface 2

[AC1-Vlan-interface2] ip address 192.168.0.2 255.255.255.0

[AC1-Vlan-interface2] quit

[AC1] quit

# 與遠程SFTP服務器建立連接,進入SFTP Client視圖。

<AC1> sftp 192.168.0.1

Input Username: client001

Trying 192.168.0.1 ...

Press CTRL+K to abort

Connected to 192.168.0.1 ...

 

The Server is not authenticated. Continue? [Y/N]:y

Do you want to save the server public key? [Y/N]:n

Enter password:

 

<sftp-client>

# 顯示服務器的當前目錄,刪除文件z,並檢查此目錄是否刪除成功。

<sftp-client> dir

-rwxrwxrwx   1 noone    nogroup      1759 Aug 23 06:52 startup.cfg

-rwxrwxrwx   1 noone    nogroup       225 Aug 24 08:01 pubkey2

-rwxrwxrwx   1 noone    nogroup       283 Aug 24 07:39 pubkey1

drwxrwxrwx   1 noone    nogroup         0 Sep 01 06:22 new

-rwxrwxrwx   1 noone    nogroup       225 Sep 01 06:55 pub

-rwxrwxrwx   1 noone    nogroup         0 Sep 01 08:00 z

End of file

Success

<sftp-client> delete z

The following File will be deleted:

/z

Are you sure to delete it? [Y/N]:y

This operation may take a long time.Please wait...

 

Success

File successfully Removed

<sftp-client> dir

-rwxrwxrwx   1 noone    nogroup      1759 Aug 23 06:52 startup.cfg

-rwxrwxrwx   1 noone    nogroup       225 Aug 24 08:01 pubkey2

-rwxrwxrwx   1 noone    nogroup       283 Aug 24 07:39 pubkey1

drwxrwxrwx   1 noone    nogroup         0 Sep 01 06:22 new

-rwxrwxrwx   1 noone    nogroup       225 Sep 01 06:55 pub

End of file

Success

# 新增目錄new1,並檢查新目錄是否創建成功。

<sftp-client> mkdir new1

Success

New directory created

sftp-client> dir

-rwxrwxrwx   1 noone    nogroup      1759 Aug 23 06:52 startup.cfg

-rwxrwxrwx   1 noone    nogroup       225 Aug 24 08:01 pubkey2

-rwxrwxrwx   1 noone    nogroup       283 Aug 24 07:39 pubkey1

drwxrwxrwx   1 noone    nogroup         0 Sep 01 06:22 new

-rwxrwxrwx   1 noone    nogroup       225 Sep 01 06:55 pub

drwxrwxrwx   1 noone    nogroup         0 Sep 02 06:30 new1

End of file

Success

# 將目錄名new1更名為new2,並查看是否更名成功。

<sftp-client> rename new1 new2

Success

File successfully renamed

<sftp-client> dir

-rwxrwxrwx   1 noone    nogroup      1759 Aug 23 06:52 startup.cfg

-rwxrwxrwx   1 noone    nogroup       225 Aug 24 08:01 pubkey2

-rwxrwxrwx   1 noone    nogroup       283 Aug 24 07:39 pubkey1

drwxrwxrwx   1 noone    nogroup         0 Sep 01 06:22 new

-rwxrwxrwx   1 noone    nogroup       225 Sep 01 06:55 pub

drwxrwxrwx   1 noone    nogroup         0 Sep 02 06:33 new2

End of file

Success

# 從服務器上下載文件pubkey2到本地,並更名為public。

<sftp-client> get pubkey2 public

Remote  file:/pubkey2 --->  Local file: public

End of file

Success

Downloading file successfully ended

# 將本地文件pu上傳到服務器上,更名為puk,並查看上傳是否成功。

<sftp-client> put pu puk

Local file:pu --->  Remote file: /puk

Success

Uploading file successfully ended

<sftp-client> dir

-rwxrwxrwx   1 noone    nogroup      1759 Aug 23 06:52 startup.cfg

-rwxrwxrwx   1 noone    nogroup       225 Aug 24 08:01 pubkey2

-rwxrwxrwx   1 noone    nogroup       283 Aug 24 07:39 pubkey1

drwxrwxrwx   1 noone    nogroup         0 Sep 01 06:22 new

drwxrwxrwx   1 noone    nogroup         0 Sep 02 06:33 new2

-rwxrwxrwx   1 noone    nogroup       283 Sep 02 06:35 pub

-rwxrwxrwx   1 noone    nogroup       283 Sep 02 06:36 puk

End of file

Success

<sftp-client>

# 退出SFTP

<sftp-client> quit

Bye

<AC1>

1.9  SCP典型配置舉例

1. 組網需求

如下圖所示,AC 1作為SCP客戶端,AC 2作為SCP服務器。現有如下具體需求:

·     用戶能夠通過AC 1安全地與AC 2進行文件傳輸。

·     AC 2采用password認證對SCP客戶端進行認證,客戶端的用戶名和密碼保存在AC 2上。

2. 組網圖

圖1-17 SCP文件傳輸配置組網圖

 

3. 配置步驟

(1)     配置SCP服務器AC 2

<AC2> system-view

[AC2] public-key local create rsa

# 使能SSH服務器功能。

[AC2] ssh server enable

# 配置接口VLAN接口2的IP地址,客戶端將通過該地址連接SCP服務器。

[AC2] interface vlan-interface 2

[AC2-Vlan-interface2] ip address 192.168.0.1 255.255.255.0

[AC2-Vlan-interface2] quit

# 設置Stelnet客戶端登錄用戶界麵的認證方式為AAA認證。

[AC2] user-interface vty 0 4

[AC2-ui-vty0-4] authentication-mode scheme

# 設置AC 2上遠程用戶登錄協議為SSH。

[AC2-ui-vty0-4] protocol inbound ssh

[AC2-ui-vty0-4] quit

# 創建本地用戶client001,密碼為aabbcc,服務類型為SSH。

[AC2] local-user client001

[AC2-luser-client001] password simple aabbcc

[AC2-luser-client001] service-type ssh

[AC2-luser-client001] quit

# 配置SSH用戶client001的服務類型為scp,認證方式為password認證。(此步驟可以不配置)

[AC2] ssh user client001 service-type scp authentication-type password

(2)     配置SCP客戶端AC 1

# 配置接口VLAN 2的IP地址。

<AC1> system-view

[AC1] interface vlan-interface 2

[AC1-Vlan-interface2] ip address 192.168.0.2 255.255.255.0

[AC1-Vlan-interface2] quit

[AC1] quit

(3)     SCP客戶端從SCP服務器下載文件

# 與遠程SCP服務器建立連接,並下載遠端的remote.bin文件,下載到本地後更名為local.bin。

<AC1> scp 192.168.0.1 get remote.bin local.bin

Username: client001

Trying 192.168.0.1 ...

Press CTRL+K to abort

Connected to 192.168.0.1 ...

 

The Server is not authenticated. Continue? [Y/N]:y

Do you want to save the server public key? [Y/N]:n

Enter password:

18471 bytes transfered in 0.001 seconds.

 

不同款型規格的資料略有差異, 詳細信息請向具體銷售和400谘詢。H3C保留在沒有任何通知或提示的情況下對資料內容進行修改的權利!

BOB登陆
官網
聯係我們