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 相关文章推荐
使用django-suit为django 1.7 admin后台添加模板
Nov 18 Python
玩转python爬虫之爬取糗事百科段子
Feb 17 Python
Python打包文件夹的方法小结(zip,tar,tar.gz等)
Sep 18 Python
Python使用Turtle模块绘制五星红旗代码示例
Dec 11 Python
python爬虫爬取淘宝商品信息
Feb 23 Python
在python中按照特定顺序访问字典的方法详解
Dec 14 Python
Python3.5内置模块之shelve模块、xml模块、configparser模块、hashlib、hmac模块用法分析
Apr 27 Python
Python分析彩票记录并预测中奖号码过程详解
Jul 09 Python
Python中调用其他程序的方式详解
Aug 06 Python
使用Python的turtle模块画国旗
Sep 24 Python
python使用selenium爬虫知乎的方法示例
Oct 28 Python
教你如何用python开发一款数字推盘小游戏
Apr 14 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查看当前变量类型的方法
2015/07/31 PHP
php实现图片上传时添加文字和图片水印技巧
2020/04/18 PHP
使用js如何实现全选与全不选
2013/12/30 Javascript
js识别uc浏览器的代码
2015/11/06 Javascript
jquery实现简易的移动端验证表单
2015/11/08 Javascript
Vue中fragment.js使用方法详解
2017/03/09 Javascript
微信小程序 input表单与redio及下拉列表的使用实例
2017/09/20 Javascript
详解webpack性能优化——DLL
2017/10/20 Javascript
微信小程序左滑动显示菜单功能的实现
2018/06/14 Javascript
JS异步错误捕获的一些事小结
2019/04/26 Javascript
微信小程序实现禁止分享代码实例
2019/10/19 Javascript
Openlayers实现距离面积测量
2020/09/28 Javascript
[02:11]2014DOTA2 TI专访VG战队Fenrir:队伍气氛良好
2014/07/11 DOTA
[03:28]2014DOTA2国际邀请赛 走近EG战队天才中单Arteezy
2014/07/12 DOTA
[01:11]回顾历届DOTA2国际邀请赛中国区预选赛
2017/06/26 DOTA
python3简单实现微信爬虫
2015/04/09 Python
分享一下如何编写高效且优雅的 Python 代码
2017/09/07 Python
centos 安装python3.6环境并配置虚拟环境的详细教程
2018/02/22 Python
浅谈pandas中DataFrame关于显示值省略的解决方法
2018/04/08 Python
python logging重复记录日志问题的解决方法
2018/07/12 Python
解决tensorflow1.x版本加载saver.restore目录报错的问题
2018/07/26 Python
Python3内置模块pprint让打印比print更美观详解
2019/06/02 Python
在pyqt5中QLineEdit里面的内容回车发送的实例
2019/06/21 Python
Python计算一个点到所有点的欧式距离实现方法
2019/07/04 Python
pygame实现俄罗斯方块游戏(AI篇2)
2019/10/29 Python
使用python动态生成波形曲线的实现
2019/12/04 Python
Django2 连接MySQL及model测试实例分析
2019/12/10 Python
python图形界面开发之wxPython树控件使用方法详解
2020/02/24 Python
Html5新特性用canvas标签画多条直线附效果截图
2014/06/30 HTML / CSS
设计师大码女装:11 Honoré
2020/05/03 全球购物
植树造林的宣传标语
2014/06/23 职场文书
批评与自我批评发言稿
2014/10/15 职场文书
幼儿园小班见习报告
2014/10/31 职场文书
2014企业年终工作总结
2014/12/23 职场文书
优秀团支部申报材料
2014/12/26 职场文书
独生子女证明范本
2015/06/19 职场文书