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  连接字符串(join %)
Sep 06 Python
python生成日历实例解析
Aug 21 Python
Python中unittest用法实例
Sep 25 Python
Python删除空文件和空文件夹的方法
Jul 14 Python
python使用matplotlib绘制折线图教程
Feb 08 Python
Python3安装Pymongo详细步骤
May 26 Python
pandas 实现字典转换成DataFrame的方法
Jul 04 Python
Python3 log10()函数简单用法
Feb 19 Python
解决python明明pip安装成功却找不到包的问题
Aug 28 Python
OpenCV模板匹配matchTemplate的实现
Oct 18 Python
python opencv旋转图片的使用方法
Jun 04 Python
Python实现简单的猜单词
Jun 15 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
ThinkPHP模板判断输出Present标签用法详解
2014/06/30 PHP
PHP基于php_imagick_st-Q8.dll实现JPG合成GIF图片的方法
2014/07/11 PHP
Codeigniter发送邮件的方法
2015/03/19 PHP
php7函数,声明,返回值等新特性介绍
2018/05/25 PHP
php+Ajax处理xml与json格式数据的方法示例
2019/03/04 PHP
Use Word to Search for Files
2007/06/15 Javascript
动感效果的TAB选项卡jquery 插件
2011/07/09 Javascript
FusionCharts图表显示双Y轴双(多)曲线
2012/11/22 Javascript
js加强的经典分页实例
2013/03/15 Javascript
判断JS对象是否拥有某种属性的两种方式
2013/12/02 Javascript
JS操作iframe里的dom(实例讲解)
2014/01/29 Javascript
如何通过js实现图片预览功能【附实例代码】
2016/03/30 Javascript
ES6新特征数字、数组、字符串
2016/10/01 Javascript
快速实现jQuery多级菜单效果
2017/02/01 Javascript
利用angular、react和vue实现相同的面试题组件
2018/02/19 Javascript
JS FormData对象使用方法实例详解
2020/02/12 Javascript
在vue中实现echarts随窗体变化
2020/07/27 Javascript
在arcgis使用python脚本进行字段计算时是如何解决中文问题的
2015/10/18 Python
Python面向对象之类的内置attr属性示例
2018/12/14 Python
Python OS模块实例详解
2019/04/15 Python
如何基于Python爬虫爬取美团酒店信息
2020/11/03 Python
利用Python pandas对Excel进行合并的方法示例
2020/11/04 Python
如何使用canvas绘制可移动网格的示例代码
2020/12/14 HTML / CSS
Lentiamo丹麦:购买便宜的隐形眼镜
2021/01/13 全球购物
美国价格实惠的在线眼镜网站:Zeelool
2020/12/25 全球购物
就业自荐书
2013/12/05 职场文书
领导失职检讨书
2014/02/24 职场文书
2014年小学植树节活动方案
2014/03/02 职场文书
校园文明标语
2014/06/13 职场文书
2014大学校园光棍节活动策划书
2014/09/29 职场文书
golang中切片copy复制和等号复制的区别介绍
2021/04/27 Golang
Python一些基本的图像操作和处理总结
2021/06/23 Python
CentOS MySql8 远程连接实战
2022/04/19 MySQL
常用的文件对应的MIME类型汇总
2022/04/26 HTML / CSS
解决Python保存文件名太长OSError: [Errno 36] File name too long
2022/05/11 Python
Win11 25163.1010更新补丁KB5016904推送,测试服务验证管道(附更新修复汇总)
2022/07/23 数码科技