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

作者:轻舞肥羊 时间:2021-12-23 08:30:55 

本文实例讲述了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程序设计有所帮助。

来源:http://www.yihaomen.com/article/python/287.htm

标签:Python,ftp,服务器
0
投稿

猜你喜欢

  • JS的IE和FF兼容性问题汇总

    2008-03-08 13:01:00
  • ASP基础教程:常用的 ASP ActiveX 组件

    2008-10-14 15:15:00
  • Python的type函数结果你知道嘛

    2023-01-07 11:33:51
  • 关于matlab图像滤波详解(二维傅里叶滤波)

    2022-04-16 19:51:35
  • PyQt5的相对布局管理的实现

    2022-02-23 08:11:18
  • javascript实现瀑布流动态加载图片原理

    2024-06-05 09:13:54
  • C#实现复制数据库 C#将A数据库数据转到B数据库

    2024-01-23 11:56:09
  • 用js实现键盘方向键翻页功能的代码

    2024-04-18 09:36:49
  • PHP和JS之间的数据交互并处理

    2023-05-25 00:57:08
  • SaaS中的用户体验设计

    2009-05-20 12:28:00
  • 在Web关闭页面时发送Ajax请求的实现方法

    2024-04-18 10:14:37
  • 使用pyinstaller打包django的方法实现

    2021-04-10 21:58:11
  • spring boot 不连接数据库启动的解决

    2024-01-18 06:38:54
  • Django-Model数据库操作(增删改查、连表结构)详解

    2024-01-20 14:11:17
  • Antd的table组件表格的序号自增操作

    2024-04-28 09:31:40
  • Python 列表(List)操作方法详解

    2023-06-15 10:10:04
  • Python queue模块功能大全

    2023-02-23 23:42:27
  • 日期垂直排列的两种技巧

    2009-08-28 12:38:00
  • Golang json 库中的RawMessage功能原理

    2024-04-30 10:07:27
  • vue2 router 动态传参,多个参数的实例

    2024-05-11 09:13:17
  • asp之家 网络编程 m.aspxhome.com