모든 SSH 시도가 시간 초과로 인해 실패하는 이유는 무엇입니까?

모든 SSH 시도가 시간 초과로 인해 실패하는 이유는 무엇입니까?

저는 SSH 및 관련 기술을 처음 사용하기 때문에 몇 가지 기본적인 사항을 이해하지 못할 수도 있습니다.

SSH를 통해 내가 소유한 웹 서버에 연결하려고 하는데 시간 초과로 인해 연결이 설정되지 않습니다.

~ $ ssh -vvv example.com
OpenSSH_6.2p2, OSSLShim 0.9.8r 8 Dec 2011
debug1: Reading configuration data /Users/USER/.ssh/config
debug1: Reading configuration data /etc/ssh_config
debug1: /etc/ssh_config line 20: Applying options for *
debug1: /etc/ssh_config line 102: Applying options for *
debug2: ssh_connect: needpriv 0
debug1: Connecting to example.com [123.45.67.89] port 22.
debug1: connect to address IPADD port 22: Operation timed out
ssh: connect to host example.com port 22: Operation timed out

처음에는 도메인을 잘못 지정했거나 사이트에 문제가 있다는 생각이 들었습니다. 그래서 FTP를 통해 동일한 도메인에 연결을 시도했는데 제대로 작동했습니다(사용자 이름을 묻는 메시지가 표시됨).

~ $ ftp
ftp> open
(to) example.com
Connected to example.com.
220---------- Welcome to Pure-FTPd [privsep] [TLS] ----------
220-You are user number 2 of 50 allowed.
220-Local time is now 12:47. Server port: 21.
220-This is a private system - No anonymous login
220-IPv6 connections are also welcome on this server.
220 You will be disconnected after 15 minutes of inactivity.
Name (example.com:USER):

그래서 나는 아마도 SSH를 잘못 사용하고 있다고 생각했습니다. 이거 보기 시작했는데튜토리얼 영상. 약 1분 후에 그는 이 작업을 수행하고 사용자 이름 프롬프트를 받지만 위와 동일한 시간 초과가 발생합니다. 그런 다음 동일한 효과를 시도했습니다. 반면에 그것은 훌륭하게 작동합니다. 따라서 문제는 네트워크의 SSH 요청과 관련된 것 같습니다.ssh [email protected]ssh google.comssh localhost

다음 생각은 이것이 방화벽 문제일 수도 있다는 것이었습니다. 이 컴퓨터에 Sophos가 설치되어 있지만 관리자에 따르면 나가는 SSH 요청을 "차단해서는 안 됩니다".

왜 이런 일이 발생하는지 알아내는 데 도움을 줄 수 있는 사람이 있나요?

답변1

이 오류 메시지는 연결하려는 서버가 포트 22의 SSH 연결 시도에 응답하지 않음을 의미합니다. 세 가지 이유가 있을 수 있습니다.

  1. 컴퓨터에서 SSH 서버가 실행되고 있지 않습니다. SSH를 통해 접속하려면 설치가 필요합니다.
  2. 이 컴퓨터에서 SSH 서버를 실행하고 있지만 비표준 포트를 사용하고 있습니다. 포트 2222에 있다고 가정하고 실행 중인 포트를 파악한 다음 를 실행해야 합니다 ssh -p 2222 hostname.
  3. 해당 컴퓨터에서 SSH 서버를 실행하고 있으며 연결하려는 포트를 사용하고 있지만 컴퓨터에 연결을 허용하지 않는 방화벽이 있습니다. 방화벽을 변경하는 방법을 알아내거나 다른 호스트에서 SSH를 통해 허용할 수도 있습니다.

편집하다: 주석에서 (정확하게) 지적했듯이, 세 번째 경우는 클라이언트가 연결을 시도할 때 서버가 TCP "재설정" 패킷을 보내도록 하여 "연결 거부" 오류 메시지가 나타나는 경우입니다. , 시간 초과 대신 수신됩니다. 이는 다른 두 가지에도 해당될 수 있지만 계속하기 전에 세 번째를 수정해야 합니다.

답변2

Telnet 명령을 통해 SSH 포트 22에 연결할 수 있는지 확인하십시오. 연결이 안되면 확인해 보세요. 먼저 포트 번호에 연결할 수 있어야 합니다. 서버에 22개.

기본적으로 SSH 포트는 22입니다. 그러나 다른 포트를 구성한 경우 22 대신 해당 포트를 사용하십시오.

텔넷 <서버 IP/URL> <포트>

예를 들어 telnetdomain.com 22

답변3

어리석은 것 같지만 나에게 일어난 일입니다. 연결하려는 장치와 동일한 네트워크에 있는지 확인하십시오. 집에서 사용하는 Wi-Fi가 아닌 휴대전화의 핫스팟 Wi-Fi를 사용하고 있습니다.

예를 들어, ping:을 사용하여 확인할 수 있습니다 ping 192.168.0.3. 컴퓨터에 ping을 보낼 수 없으면 컴퓨터에 연결할 수 없습니다. 잘못된 네트워크에 있거나 컴퓨터가 실행되고 있지 않습니다.

관련 정보