Postfix가 공용 네트워크 인터페이스에서 실행되고 수신되는 것 같지만 외부 클라이언트가 연결할 수 없습니다.

Postfix가 공용 네트워크 인터페이스에서 실행되고 수신되는 것 같지만 외부 클라이언트가 연결할 수 없습니다.

저는 Debian 12에 새로운 Postifx 서버를 설정하고 있습니다. Debian 패키지를 설치했고 Postfix가 실행 중이고 포트 25, 465및 에서 수신 대기하고 있음을 확인했습니다 587.

Postfix가 실행 중이고 로그에 오류가 없습니다. 감옥을 비활성화했는데 master.cf이 서버에 소프트웨어 방화벽이 실행되고 있지 않습니다.

Postifx는 다음과 같이 모든 인터페이스에 바인딩됩니다 netstat.

netstat -plnt
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 0.0.0.0:587             0.0.0.0:*               LISTEN      8417/master
tcp        0      0 0.0.0.0:465             0.0.0.0:*               LISTEN      8417/master         
tcp        0      0 0.0.0.0:25              0.0.0.0:*               LISTEN      8417/master
tcp6       0      0 :::587                  :::*                    LISTEN      8417/master 
tcp6       0      0 :::465                  :::*                    LISTEN      8417/master         
tcp6       0      0 :::25                   :::*                    LISTEN      8417/master 

서버 자체에서 텔넷을 사용하고 공용 IP를 통해 Postfix에 연결할 수 있습니다.

telnet xx.xx.xx.xx 587
Trying xx.xx.xx.xx...
Connected to xx.xx.xx.xx.
Escape character is '^]'.
220 mydomain.com ESMTP Postfix

하지만 서버 외부에서 이것을 시도하면 연결되지 않습니다.

telnet mydomain.com 587
Trying xx.xx.xx.xx...
Trying xxxx:xxxx::xxxx:xxxx:xxxx:xxxx...
telnet: Unable to connect to remote host: Network is unreachable

클라이언트 관점에서 DNS가 서버에 올바르게 해석되는 것을 확인했습니다.

내 직장/집의 ISP는 나가는 포트를 차단하지 않습니다. 집에서 Gmail의 SMTP 서버에 텔넷을 연결하여 에 연결할 수 있기 때문입니다 EHLO.

서버 호스팅 회사에서는 차단되는 포트가 없다고 주장합니다.

traceroute -I옵션 없이는 홈 클라이언트에서 서버에 연결할 수 없습니다 -I.

솔직히 다른 무엇을 시도해야할지 모르겠습니다. 텔넷을 시도할 때 Postfix에서 뭔가를 얻어야 합니다. 메일 차단을 위한 대부분의 옵션은 이후에 발생하며 EHLO아직까지는 도달하지 못했습니다.

netstatPostifx가 바인딩되어 있고 로그에 오류가 없으며 서버 자체에서 텔넷할 때 Postfix가 서버의 외부 IP에서 텔넷에 응답한다고 표시될 때 서버에서 가능한 설정은 Postifx가 외부 인터페이스에서 수신 또는 응답하는 것을 방지합니까 ?

inet_interfaces = all설정됩니다. inet_protocols = all설정됩니다.

Postfix가 출력 없이 자동으로 연결 요청을 삭제하게 만드는 구성 설정이 있습니까?

그 밖에 무엇을 확인하거나 시도해 볼 수 있나요? Postfix의 어떤 설정이 초기 연결 요청을 삭제하거나 수락하지 않습니까?

답변1

iptables이것이 다른 사람에게 도움이 되기를 바랍니다. 및 외에도 다양한 방화벽이 있는 것으로 보입니다 ucf.

다음 유용한 게시물을 찾았습니다.https://surgemail.com/knowledge-base/disable-your-firewall/, 찾을 수 있는 모든 가능성을 나열합니다. 제 경우에는 이었습니다 nft.

비활성화하거나 확인할 방화벽의 전체 목록은 다음과 같습니다.

nft flush ruleset
systemctl mask nftables.service

systemctl stop firewalld
systemctl disable firewalld

service iptables stop
service iptables disable

service ipchains disable
service ipchains stop

iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
iptables -t nat -F
iptables -t mangle -F
iptables -F
iptables -X

cfx -x

관련 정보