-2

目前,我的网络团队正在使用 FTP 服务器 (Filezilla) 下载固件版本。

我们在服务器上创建一个帐户,将固件上传到服务器,然后在 cisco 设备上我们使用命令copy ftp://username:password@server_ip/file_name storage_device:,设备正在从 ftp 服务器下载固件。

现在,我在 python 中使用 Flask 创建了一个网站,其中包含我的团队使用的一些脚本,我想添加一个脚本,允许用户将文件上传到网站,提供设备的 ip 和脚本将连接到设备并从服务器中提取文件。

在使用 创建 ftp 服务器pyftpdlib时,我遇到了一些问题,因为设备正在使用提供的用户登录,但没有下载文件。

如果我使用 FTP 客户端(FileZilla 客户端)登录服务器,我可以单独下载文件。

我想问题出在思科设备尝试在连接时直接下载固件。

我用来创建python服务器的代码:

import os

from pyftpdlib.authorizers import DummyAuthorizer
from pyftpdlib.handlers import FTPHandler
from pyftpdlib.servers import FTPServer

def main():
    authorizer = DummyAuthorizer()
    authorizer.add_user('username', 'password', '/ftp', perm='elradfmwMT')

    handler = FTPHandler
    handler.authorizer = authorizer
    handler.banner = "Test FTP server"

    address = ('0.0.0.0', 21)
    server = FTPServer(address, handler)

   server.max_cons = 256
   server.max_cons_per_ip = 10

   server.serve_forever()

if __name__ == '__main__':
    main()

如果有人遇到过类似的问题,我们将不胜感激。

谢谢!

4

1 回答 1

0

两个可能的问题: 1. 观察 IOS 设备上的磁盘空间。一些平台几乎没有额外图像的空间,因此良好的图像卫生至关重要。2. 在我的各种实验中,我发现将图像推送到设备通常比要求设备从其他地方拉图像更可靠。您可能需要添加配置条目“ip scp server enable”。然后您可以编写脚本以直接推送图像。

于 2020-06-03T12:39:24.010 回答