Python实现的ftp服务器功能详解【附源码下载】


Posted in Python onJune 26, 2019

本文实例讲述了Python实现的ftp服务器功能。分享给大家供大家参考,具体如下:

python 具备强大的网络编程功能,而且代码简介,用简单的代码,就能实现一个功能强大的FTP 服务器。我亲自测试了这个 python ftp server. 代码下载,在文章的末尾处,整个部署介绍如下:

1. 环境, python 2.7.3 ,centos 6.2 .

2. 定义服务器ip ,端口等信息,可以在下载的源码中查看

listen_ip = "192.168.4.128" # ftp server 的 ip 地址
listen_port = 2111 # ftp 端口,默认21,这里我设置成2111.
conn_list = []
root_dir = "/home/summer/ftp" # 这是定义的ftp目录,可以改成你想要的.
max_connections = 500
conn_timeout = 120

3. 搭建一个测试ftp 目录

/home/summer/ftp 目录下,新建 目录 :anonymous ,这是为了支持匿名用户的

/home/summer/ftp 目录下,新建 目录 :yihaomen, 目录名也就是用户名,然后再yihaomen 目录下创建 ".xxftp" 目录,然后在此目录中建立一个文件 password, 并用 vi 编辑,添加内容为"5f4dcc3b5aa765d61d8327deb882cf99" 其实这就是 "password"  的 md5 加密后的字符串.

Python实现的ftp服务器功能详解【附源码下载】

4. 现在启动 python Ftp脚本,启动后会显示提示: ftpd is listening on  192.168.4.128:2111

5. 找一台windows 机器登陆:用户名:yihaomen,密码:password

Python实现的ftp服务器功能详解【附源码下载】

由于我们开启了匿名用户,所以不用登陆也是可以的。
登陆之后,你就可以创建文件夹,添加删除文件了。

Python实现的ftp服务器功能详解【附源码下载】

6. 回到 centos 服务器上面,你会发现 你添加的东西已经生效。

用这种方法,可以很灵活的实现一个自己需要的FTP server ,而且也很好继承到各种环境中,也很方便.

完整实例代码点击此处本站下载

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
Python struct模块解析
Jun 12 Python
浅谈Python中列表生成式和生成器的区别
Aug 03 Python
浅谈Python中range和xrange的区别
Dec 20 Python
python微信公众号之关键词自动回复
Jun 15 Python
Python使用pymongo模块操作MongoDB的方法示例
Jul 20 Python
对Python生成汉字字库文字,以及转换为文字图片的实例详解
Jan 29 Python
python中类的输出或类的实例输出为这种形式的原因
Aug 12 Python
Python 实现平台类游戏添加跳跃功能
Mar 27 Python
基于打开pycharm有带图片md文件卡死问题的解决
Apr 24 Python
Python特殊属性property原理及使用方法解析
Oct 09 Python
对Pytorch 中的contiguous理解说明
Mar 03 Python
python和Appium的移动端多设备自动化测试框架
Apr 26 Python
利用python numpy+matplotlib绘制股票k线图的方法
Jun 26 #Python
python读csv文件时指定行为表头或无表头的方法
Jun 26 #Python
对Python3之方法的覆盖与super函数详解
Jun 26 #Python
python调用pyaudio使用麦克风录制wav声音文件的教程
Jun 26 #Python
python装饰器常见使用方法分析
Jun 26 #Python
解决python super()调用多重继承函数的问题
Jun 26 #Python
Python实现获取系统临时目录及临时文件的方法示例
Jun 26 #Python
You might like
解析php中call_user_func_array的作用
2013/06/07 PHP
在PHP站点的页面上添加Facebook评论插件的实例教程
2016/01/08 PHP
值得分享的php+ajax实时聊天室
2016/07/20 PHP
thinkphp自带验证码全面解析
2016/09/18 PHP
判断目标是否是window,document,和拥有tagName的Element的代码
2010/05/31 Javascript
JavaScript 获取当前时间戳的代码
2010/08/05 Javascript
js子页面获取父页面数据示例
2014/05/15 Javascript
java和javascript获取word文档的书签位置对比
2014/06/19 Javascript
对之前写的jquery分页做下升级
2014/06/19 Javascript
D3.js实现饼状图的方法详解
2016/09/21 Javascript
自适应布局meta标签中viewport、content、width、initial-scale、minimum-scale、maximum-scale总结
2017/08/18 Javascript
vue单页面打包文件大?首次加载慢?nginx带你飞,从7.5M到1.3M蜕变过程(推荐)
2018/01/16 Javascript
浅谈MUI框架中加载外部网页或服务器数据的方法
2018/01/31 Javascript
使用vue实现HTML页面生成图片的方法
2020/03/12 Javascript
[52:15]2014 DOTA2国际邀请赛中国区预选赛5.21 HGT VS LGD-GAMING
2014/05/23 DOTA
[01:00:06]加油DOTA_EP01_网络版
2014/08/09 DOTA
Python简单实现enum功能的方法
2016/04/25 Python
浅谈python中真正关闭socket的方法
2018/12/18 Python
python通过配置文件共享全局变量的实例
2019/01/11 Python
Python插入Elasticsearch操作方法解析
2020/01/19 Python
Python函数的迭代器与生成器的示例代码
2020/06/18 Python
scrapy结合selenium解析动态页面的实现
2020/09/28 Python
聊聊python在linux下与windows下导入模块的区别说明
2021/03/03 Python
Tessabit美国:集世界奢侈品和设计师品牌的意大利精品买手店
2020/06/29 全球购物
如何查找和删除数据库中的重复数据
2014/11/05 面试题
上课迟到检讨书
2014/02/19 职场文书
老公爱的承诺书
2014/03/31 职场文书
红色旅游心得体会
2014/09/03 职场文书
2014年保育员工作总结
2014/12/02 职场文书
2015年护士医德医风自我评价
2015/03/03 职场文书
会议通知
2015/04/15 职场文书
公司地址变更通知
2015/04/25 职场文书
2015教师个人德育工作总结
2015/07/22 职场文书
职工趣味运动会开幕词
2016/03/04 职场文书
2016年世界艾滋病日宣传活动总结
2016/04/01 职场文书
pytorch中Schedule与warmup_steps的用法说明
2021/05/24 Python