Python FTP客户端服务器&虚拟框

时间:2017-10-23 21:38:22

标签: python ftp virtualbox portforwarding eoferror

我正在尝试进行python ftp服务器和客户端连接,在Fedora VM上运行服务器文件(使用VirtualBox),在主机Windows 10上运行客户端。 服务器似乎正在运行,但客户端没有连接到服务器并最终抛出EOFerror。以下是代码和输出说明。

在Guest VM Fedora上运行的一个服务器文件

ftpserver.py

from pyftpdlib.authorizers import DummyAuthorizer
from pyftpdlib.handlers import FTPHandler
from pyftpdlib.servers import FTPServer
import socket

ip=socket.gethostbyname(socket.gethostname())
print(ip)
authorizer = DummyAuthorizer()
authorizer.add_user("user", "12345", "/root", perm="elradfmw")
authorizer.add_anonymous("/root/pythonProgs/", perm="elradfmw")

handler =FTPHandler
handler.authorizer = authorizer

server = FTPServer((ip, 21), handler)
while True:

server.serve_forever()

在Host Windows 10上运行一个客户端文件

ftpclient.py:

from ftplib import FTP
ftp = FTP()

ftp.connect("127.0.0.1",21)
ftp.login("user", "12345")
#ftp.cwd('directory_name') #replace with your directory
ftp.retrlines("LIST")
Fedora VM上的

ifconfig和ftpserver输出ifconfig and ftpserver.py output on Fedora VM snapshot

主机Windows 10上的

ftpclient.py输出ftpclient.py output on Host Windows 10 snapshot

我已经为我的虚拟机fedora 做了端口转发,就像这样: port forwarding for fedora VM

这里有什么问题?我现在应该怎么做 ? 请帮忙!

0 个答案:

没有答案