python做一个FTP服务器

python有一个叫做pyftpdlib的库

下面的脚本使用基本配置,它可能是了解事物工作原理的最佳起点。它使用基本的 DummyAuthorizer 添加一堆“虚拟”用户,设置传入连接的限制 和一系列被动端口

from pyftpdlib.authorizers import DummyAuthorizer
from pyftpdlib.handlers import FTPHandler
from pyftpdlib.servers import FTPServer
def main():
    authorizer = DummyAuthorizer()
    authorizer.add_user('username', 'password', 'D:\\', perm='elradfmwMT')
    authorizer.add_user('username2', 'password', 'C:\\', perm='elradfmwMT')
    authorizer.add_anonymous("D:\\")
    handler = FTPHandler
    handler.authorizer = authorizer
    handler.banner = "pyftpdlib based ftpd ready."
    handler.masquerade_address = '151.25.42.11'#这个如果你在NAT后面需要填写,否则不用,通常用于云服务器,需要填写公网ip
    handler.passive_ports = range(60000, 65535)
    address = ('0.0.0.0', 2121)#需要防火墙通过2121端口
    server = FTPServer(address, handler)
    server.max_cons = 256
    server.max_cons_per_ip = 5
    server.serve_forever()
if __name__ == '__main__':
    main()
上一篇:Shiro踩坑记(一):关于shiro-spring-boot-web-starter自动注解无法注入authorizer的问题


下一篇:pyftpdlib快速搭建一个简单的FPT