Linux는 공개 IP SSH 요청에 응답하지 않습니다.

Linux는 공개 IP SSH 요청에 응답하지 않습니다.

홈 네트워크 외부에서 SSH를 통해 홈 서버에 연결을 시도했지만 응답이 없습니다.

해당 서버에 로컬로 SSH를 연결하려고 하면 모든 것이 정상입니다.

하지만 외부에서 이 작업을 수행하면 서버가 응답하지 않습니다.

  • 공용 동적 IP가 있고 IP DDNS 이름이 없습니다.
  • 포트 5001을 통해 SSH에 액세스합니다.
  • 내 라우터에서 포트 전달을 5001에서 22로 설정하고 서버의 IP(10.0.0.70)로 설정했습니다.
  • tshark를 사용하여 네트워크를 덤프하면 서버 IP로 들어오는 SSH 패킷을 볼 수 있지만(소스 IP는 내 라우터의 IP, 내 공용 IP임) 서버가 응답하지 않습니다.

이로 인해 공용 IP에 대한 필터 설정이 있다고 생각됩니다. UFW는 포트 22를 허용하도록 설정되어 있습니다.

sshd_config에 문제가 있을 수 있나요?

sshd_config에서 주석 처리되지 않은 유일한 줄은 다음과 같습니다.

  • include /etc/ssh/sshd_config.d/*.conf # sshd_config.d에 파일이 없습니다.
  • 챌린지 응답 인증 아니요
  • PAM 사용 예
  • X11 전달은
  • 인쇄 모델
  • AcceptEnv LANG LC_*
  • 하위 시스템 sftp /usr/lib/openssh/sftp-server

어떤 제안이 있으십니까? :)

편집: (더 많은 정보를 얻으려고 노력 중)

sobik@Sobik-MacBook-Pro ~ % ssh -v -p 5001 [email protected]
OpenSSH_8.6p1, LibreSSL 2.8.3
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 21: include /etc/ssh/ssh_config.d/* matched no files
debug1: /etc/ssh/ssh_config line 54: Applying options for *
debug1: Authenticator provider $SSH_SK_PROVIDER did not resolve; disabling
debug1: Connecting to myip.hopto.org port 5001.'

그럼..타임아웃

나는 sudo iptables -L -v -n | grep :22얻다:

30 1976 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:22

답변1

확인해야 할 사항:

  • 데비안 11은 에서 전환을 시작하고 있으니 iptables추가적으로 nftables확인해 iptables -L -vn보세요 nft list ruleset.
  • 데비안은 을 sshd사용하므로 libwrap.so및 의 내용은 허용되는 연결과 허용되지 않는 연결에 영향을 미칩니다. 어디에서나 들어오는 SSH 연결을 허용하려면 거기에 회선이 있는지 확인하십시오./etc/hosts.deny/etc/hosts.allow/etc/hosts.allowsshd: ALL
  • 서버 측에서는 합계가 grep sshd /var/log/auth.log확인 됩니다 journalctl _SYSTEMD_UNIT=sshd.service.

관련 정보