我已经在python中创建了一个非常基本的SMTP服务器来接收传入的邮件。一切都正常,但在本地运行,但是当服务器在docker中运行时,尝试向服务器发送电子邮件时,连接断开了。
我使用Wireshk嗅探流量,看起来smtp服务器在端口25上运行,但是客户端选择了一个随机端口,用于与打开SMTP请求的客户端进行通讯,我需要打开这在我的码头集装箱上?范围是多少?
这是我在本地运行时SMTP的交互作用:
看起来TCP流立即抛出[FIN]。知道会发生什么或如何调试吗?
要复制的步骤:
python -m smtpd -n -c DebuggingServer localhost:25
telnet localhost 25
docker run -p 25:25 -it --rm python:3.7-slim python -m smtpd -n -c DebuggingServer
(兴趣点:docker容器内的Telnet可以连接,因此它必须与网络/端口相关)