简介
本文档介绍如何配置思科统一会话初始协议(SIP)代理(CUSP) 10.2或更高版本,以便使用安全文件传输协议(SFTP)执行备份。
CUSP 10.2仅支持SFTP,并且要求使用并非由每个SFTP应用程序处理的绝对路径;本文档提供了使用三个不同平台作为SFTP服务器进行设置的指南。
作者:Cisco TAC工程师Luis Ramirez。
先决条件
要求
Cisco 建议您了解以下主题:
- SFTP
- CUSP
- Windows 窗口版本
- Linux
- MAC
使用的组件
本文档中的信息基于以下软件版本:
- CUSP 10.2
- Windows 10
- Windows Server 2019
- Ubuntu 18.04
- MAC Mojave
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您的网络处于活动状态,请确保您了解所有命令的潜在影响。
备份过程
CUSP 10.2消除了对FTP的支持,并且出于安全原因仅允许SFTP。
进行此更改后,CUSP需要绝对路径才能进行备份和恢复过程配置,但许多Windows SFTP应用程序无法处理此选项。
这些选项提供了将Windows、MAC和Linux作为SFTP服务器设置CUSP备份的步骤,以及如何设置服务器。
注意:有关CUSP 10.2备份的详细信息,请查看思科统一SIP代理版本10.2的GUI管理指南
Windows作为SFTP服务器
最新版本的Windows 10和Windows Server 2016具有安装Openssh的选项,该选项也可用于SFTP。
SFTP服务器设置。
访问系统Windows设置中的应用和功能,然后选择可选功能。
如果OpenSSH Client和OpenSSH Server未在列表中显示为已安装,请选择Add a feature。
查找OpenSSH Client和OpenSSH Server并安装它们。
注意:如果这些选项没有显示在列表中,请确保连接到Internet并且Windows安装了最新的更新。
安装完成后,请打开服务并启动OpenSSH SSH服务器的服务。
SFTP服务器的根文件夹是运行服务的Windows用户。
在本示例中,根目录是C:\Users\luirami2
注意:有关此过程的详细信息,请参阅Microsoft网站
CUSP配置
由于CUSP需要使用SFTP服务器的绝对路径进行配置,因此可以配置两个选项。
- 根文件夹的绝对路径。
- 到根目录内另一个文件夹的绝对路径。
用于登录Windows帐户的用户名和密码应相同。
MAC作为SFTP服务器
在具有Mojave或更高版本的MAC PC上,SFTP服务器已经是一个选项,但需要启用。
SFTP服务器设置。
在系统首选项下,选择共享,然后选中文件共享和远程登录复选框。
这些选项启用带有运行服务的MAC PC用户根文件夹的SFTP。
在本示例中,根目录为/Users/luirami2
CUSP配置。
由于CUSP需要使用SFTP服务器的绝对路径进行配置,因此可以配置两个选项。
- 根文件夹的绝对路径。
- 到根目录内另一个文件夹的绝对路径。
用于登录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 service ssh restart
这些选项启用带有运行服务的Linux用户的Root文件夹的SFTP。
在本示例中,根目录为/home/luirami2
CUSP配置。
由于CUSP需要使用SFTP服务器的绝对路径进行配置,因此可以配置两个选项。
- 根文件夹的绝对路径。
- 到根目录内另一个文件夹的绝对路径。
用于登录Linux PC帐户的用户名和口令应相同。
备份错误
当备份或还原失败时,在“Report”(报告)下会显示错误,即“Backup History”(备份历史记录)或“Restore History”(还原历史记录)。
所有这些错误都是客户端URL (CURL)响应,它们都会打印returnvalue:但只有一些会打印其定义。
此处可找到CURL错误代码。
如何测试SFTP服务器上的绝对路径
从Linux服务器中,可以使用SFTP服务器对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
如果使用绝对路径进行测试并且SFTP服务器不接受该命令,则每个命令都将被拒绝,原因为9CURL_REMOTE_ACCESS_DENIED,当使用绝对路径的SFTP服务器拒绝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