目錄

簡介

必要條件

需求

採用元件

備份程式

Windows作為SFTP伺服器

MAC作為SFTP伺服器

Linux作為SFTP伺服器

備份錯誤

如何測試SFTP伺服器上的絕對路徑

簡介

本檔案介紹如何設定Cisco Unified Session Initiation Protocol (SIP) Proxy (CUSP) 10.2或更新版本，以使用安全檔案傳輸通訊協定(SFTP)執行備份。

CUSP 10.2僅支援SFTP，並且要求使用並非由每個SFTP應用程式處理的Absolute Path；本文檔提供指導，以便將此設定與三個不同的平台設定為SFTP伺服器。

作者：Luis Ramirez，思科TAC工程師。

必要條件

需求

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

- SFTP

- 殘留

- Windows

- Linux

- MAC

採用元件

本檔案中的資訊是根據以下軟體版本：

- CUSP 10.2

- Windows 10

- Windows Server 2019

- 烏班圖18.04

- MAC Mojave

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

備份程式

CUSP 10.2不支援FTP，並且僅出於安全原因允許SFTP。

進行此更改時，CUSP需要Absolute Path才能進行備份和恢復過程的配置，但是此選項不由許多Windows SFTP應用程式處理。

這些選項提供了將Windows、MAC和Linux作為SFTP伺服器設定CUSP備份的步驟，以及如何設定伺服器。

注意：有關CUSP 10.2備份的詳細資訊，請檢視Cisco Unified SIP Proxy 10.2版GUI管理指南

Windows作為SFTP伺服器

最新版本的Windows 10和Windows Server 2016可以選擇安裝Openssh，後者也可用於SFTP。

SFTP伺服器設定。

訪問系統Windows設定中的應用和功能，然後選擇可選功能。

如果OpenSSH客戶端和OpenSSH伺服器未在清單中顯示為已安裝，請選擇增加功能。

查詢OpenSSH Client和OpenSSH Server並安裝它們。

注意：如果這些選項沒有顯示在清單中，請確保連線到Internet且Windows安裝了最新的更新。

安裝完成後，打開服務並啟動OpenSSH SSH伺服器的服務。

SFTP伺服器的根資料夾是運行服務的Windows使用者。

在本示例中，根目錄是C:\Users\luirami2

注意：有關此過程的詳細資訊，請參閱Microsoft網站

CUSP配置

由於需要使用SFTP伺服器的絕對路徑配置CUSP，因此可以配置兩個選項。

1. 根資料夾的絕對路徑。

- sftp://SFTP伺服器IP地址/C：/Users/luirami2

2. 到根目錄內另一個資料夾的絕對路徑。

- sftp://SFTP伺服器IP地址/C：/Users/luirami2/Desktop/CUSP10.2

用於登入Windows帳戶的使用者名稱和密碼應該相同。

MAC作為SFTP伺服器

在帶有Mojave或較新版本的MAC PC上，SFTP伺服器已經是一個選項，但需要啟用。

SFTP伺服器設定。

在系統首選項下，選擇共用，然後選中檔案共用和遠端登入覈取方塊。

這些選項啟用帶有運行服務的MAC PC使用者根資料夾的SFTP。

在本示例中，根為/Users/luirami2

CUSP Configuration。

由於需要使用SFTP伺服器的絕對路徑配置CUSP，因此可以配置兩個選項。

1. 根資料夾的絕對路徑。

- sftp://SFTP伺服器IP地址/使用者/luirami2

2. 到根目錄內另一個資料夾的絕對路徑。

- sftp://SFTP伺服器IP地址/使用者/luirami2/CUSP10.2

用於登入MAC PC帳戶的使用者名稱和密碼應該相同。

Linux作為SFTP伺服器

在Linux上，需要安裝SSH才能將其用作SFTP伺服器。

本示例適用於Ubuntu 18.04。

SFTP伺服器設定。

使用sudo apt install ssh 命令安裝SSH

root@ubuntu:~$ sudo apt install ssh Reading package lists... Done Building dependency tree Reading state information... Done The following NEW packages will be installed: ssh 0 upgraded, 1 newly installed, 0 to remove and 300 not upgraded. Need to get 5,204 B of archives. After this operation, 106 kB of additional disk space will be used. Get:1 http://us.archive.ubuntu.com/ubuntu bionic-updates/main amd64 ssh all 1:7.6p1-4ubuntu0.3 [5,204 B] Fetched 5,204 B in 10s (506 B/s) Selecting previously unselected package ssh. (Reading database ... 128438 files and directories currently installed.) Preparing to unpack .../ssh_1%3a7.6p1-4ubuntu0.3_all.deb ... Unpacking ssh (1:7.6p1-4ubuntu0.3) ... Setting up ssh (1:7.6p1-4ubuntu0.3) …

安裝後，在文檔末尾使用這些更改修改/etc/ssh/sshd_config檔案。

sudo vi /etc/ssh/sshd_config

Match group sftp

ChrootDirectory /home

X11Forwarding no

AllowTcpForwarding no

ForceCommand internal-sftp

使用此命令儲存更改並重新啟動ssh服務。

sudo服務ssh重新啟動

這些選項啟用帶有運行服務的Linux使用者的Root資料夾的SFTP。

在本示例中，根為/home/luirami2

CUSP Configuration。

由於需要使用SFTP伺服器的絕對路徑配置CUSP，因此可以配置兩個選項。

1. 根資料夾的絕對路徑。

- sftp://SFTP伺服器IP地址/home/luirami2

2. 到根目錄內另一個資料夾的絕對路徑。

- sftp://SFTP伺服器IP地址/home/luirami2/SFTP/CUSP10.2

用於登入Linux PC帳戶的使用者名稱和密碼應相同。

備份錯誤

當備份或還原失敗時，會在報告下顯示錯誤，備份歷史記錄或還原歷史記錄。

所有這些錯誤都是客戶端URL (CURL)響應，它們都列印出returnvalue：但只列印了部分定義。

可以在此處找到CURL錯誤代碼。

如何測試SFTP伺服器上的絕對路徑

從Linux伺服器開始，可以使用SFTP伺服器測試CURL，以瞭解CURL是理解絕對路徑還是只理解縮寫路徑。

這五個命令可用於測試身份驗證/目錄清單、上傳、下載、刪除和目錄建立。

如果使用縮寫路徑進行測試，應該可以正常工作。

Authentication and Directory List

root@ubuntu:~$ curl -k "sftp://SFTP IP:22/" --user "username:pasword"

drw-rw-rw 1 root root 0 Sep 11 18:19 .

drw-rw-rw 1 root root 0 Sep 11 18:19 ..

-rw-rw-rw 1 root root 38 Sep 11 18:04 TextFile.txt

Upload a file

root@ubuntu:~$ curl -k "sftp://SFTP IP:22/" --user "username:pasword" -T "/home/TestCapture.pcap" --ftp-create-dirs

% Total % Received % Xferd Average Speed Time Time Time Current

Dload Upload Total Spent Left Speed

100 11.8M 0 0 100 11.8M 0 4143k 0:00:02 0:00:02 --:--:-- 4142k

100 11.8M 0 0 100 11.8M 0 4142k 0:00:02 0:00:02 --:--:-- 4142k

Download a file

root@ubuntu:~$ curl -k "sftp://SFTP IP:22/TextFile.txt" --user "username:pasword" -o "/home/TextFile.txt" --ftp-create-dirs

% Total % Received % Xferd Average Speed Time Time Time Current

Dload Upload Total Spent Left Speed

100 38 100 38 0 0 181 0 --:--:-- --:--:-- --:--:-- 181

100 38 100 38 0 0 181 0 --:--:-- --:--:-- --:--:-- 181

Delete a file

root@ubuntu:~$ curl -k "sftp://SFTP IP:22/" --user "username:pasword" -Q "-RM TestCapture.pcap" --ftp-create-dirs

drw-rw-rw 1 root root 0 Sep 11 18:23 .

drw-rw-rw 1 root root 0 Sep 11 18:23 ..

-rw-rw-rw 1 root root 12386208 Sep 11 18:23 TestCapture.pcap

-rw-rw-rw 1 root root 38 Sep 11 18:04 TextFile.txt

Create a Directory

root@ubuntu:~$ curl -k "sftp://SFTP IP:22/" --user "username:pasword" -Q "-MKDIR /DirectoryFolder" --ftp-create-dirs

drw-rw-rw 1 root root 0 Sep 11 18:23 .

drw-rw-rw 1 root root 0 Sep 11 18:23 ..

-rw-rw-rw 1 root root 38 Sep 11 18:04 TextFile.txt

Authentication and Directory List (TestCapture.pcap has been deleted and DirectoryFolder has been created)

root@ubuntu:~$ curl -k "sftp://SFTP IP:22/" --user "username:pasword"

drw-rw-rw 1 root root 0 Sep 11 18:24 .

drw-rw-rw 1 root root 0 Sep 11 18:24 ..

drw-rw-rw 1 root root 0 Sep 11 18:24 DirectoryFolder

-rw-rw-rw 1 root root 38 Sep 11 18:04 TextFile.txt

如果使用Absolute Path進行測試，並且SFTP伺服器不接受該命令，則每個命令都將被拒絕，原因為9CURL_REMOTE_ACCESS_DENIED，當使用的SFTP伺服器拒絕由於使用Absolute Path的CURL命令時，將顯示相同的錯誤CUSP。

CURLE_REMOTE_ACCESS_DENIED (9)

拒絕存取URL中提供的資源。對於FTP，當遠端目錄發生更改時會發生這種情況。

Authentication and Directory List

root@ubuntu:~$ curl -k "sftp://SFTP IP:22/C:/Users/Administrator/Desktop/CUSP10.2" --user "username:pasword"

curl: (9) Could not open remote file for reading: SFTP server: Permission denied

Upload a file

root@ubuntu:~$ curl -k "sftp://SFTP IP:22/C:/Users/Administrator/Desktop/CUSP10.2" --user "username:pasword" -T "/home/TestCapture.pcap" --ftp-create-dirs

% Total % Received % Xferd Average Speed Time Time Time Current

Dload Upload Total Spent Left Speed

0 0 0 0 0 0 0 0 --:--:-- 0:00:01 --:--:-- 0

0 0 0 0 0 0 0 0 --:--:-- 0:00:01 --:--:-- 0

curl: (9) Access denied to remote resource

Download a file

root@ubuntu:~$ curl -k "sftp://SFTP IP:22/C:/Users/Administrator/Desktop/CUSP10.2/TextFile.txt" --user "username:pasword" -o "/home/TextFile.txt" --ftp-create-dirs

% Total % Received % Xferd Average Speed Time Time Time Current

Dload Upload Total Spent Left Speed

0 0 0 0 0 0 0 0 --:--:-- 0:00:01 --:--:-- 0

0 0 0 0 0 0 0 0 --:--:-- 0:00:01 --:--:-- 0

curl: (9) Could not open remote file for reading: SFTP server: Permission denied

Delete a file

root@ubuntu:~$ curl -k "sftp://SFTP IP:22/C:/Users/Administrator/Desktop/CUSP10.2" --user "username:pasword" -Q "-RM TestCapture.pcap" --ftp-create-dirs

curl: (9) Could not open remote file for reading: SFTP server: Permission denied

Create a Directory

root@ubuntu:~$ curl -k "sftp://SFTP IP:22/C:/Users/Administrator/Desktop/CUSP10.2" --user "username:pasword" -Q "-MKDIR /DirectoryFolder" --ftp-create-dirs

curl: (9) Could not open remote file for reading: SFTP server: Permission denied