gpt4 book ai didi

python - 使用python socket搭建ftp服务器

转载 作者:行者123 更新时间:2023-12-03 12:08:53 27 4
gpt4 key购买 nike

我想使用 python socket 来构建一个 FTP 服务器。
但客户端没有识别服务器发送的 FTP 包。
这是我访问我的 FTP 服务器时的情况
enter image description here
客户端仍然认为我发送了一个 TCP 包
这是我访问正式的 FTP 服务器时的情况
enter image description here
所以当我想让客户端进入被动模式时,客户端仍然认为这是一个tcp竞争。

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

s.bind(('192.168.233.129', 31503))
s.listen(5)
print 'Waiting for connection...'

clientSock, addr = s.accept()
print 'Accept new connection from %s:%s...' % addr

clientSock.send('220-\r\n220 end\r\n'.encode('utf-8'))
print clientSock.recv(65536)
clientSock.send('331 password\r\n'.encode('utf-8'))
print clientSock.recv(65536)
clientSock.send('230 login\r\n'.encode('utf-8'))
print clientSock.recv(65536)
clientSock.send('215 UnixType\r\n'.encode('utf-8'))
print clientSock.recv(65536)
clientSock.send('227 Entering Passive Mode (192,168,233,129,105,160).\r\n')
有什么方法可以让客户端将我的包识别为 FTP 包?
编辑:格式更改

最佳答案

您使用的端口号是多少,您应该使用 21 作为端口号。然后客户端可以将其检测为 FTP

如果您使用的不是 21 ,则在 Wireshark 中,您必须将端口号解码为 21(Wireshark --> 分析 --> 解码为 --> 提供您的端口号并解码为哪个协议(protocol))

关于python - 使用python socket搭建ftp服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47110884/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com