"ssh user@ip"를 사용하여 SSH를 통해 연결하려고 할 때마다 다음 오류가 발생합니다.
ssh: 호스트 192.168.80.131 포트 22에 연결 중: 연결이 거부되었습니다.
내 라우터가 포트 전달을 위해 설정되어 있는지 확인했는데 다음과 같이 한 것 같습니다.
내 서버에 포트 전달이 설정되어 있는지 확인했습니다.
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
tcp6 0 0 :::22 :::* LISTEN
또한 방화벽이 구성되어 있는지 확인했습니다.
To Action From
20 ALLOW Anywhere
22 ALLOW Anywhere
80 ALLOW Anywhere
23 ALLOW Anywhere
8080 ALLOW Anywhere
20 (v6) ALLOW Anywhere (v6)
22 (v6) ALLOW Anywhere (v6)
80 (v6) ALLOW Anywhere (v6)
23 (v6) ALLOW Anywhere (v6)
8080 (v6) ALLOW Anywhere (v6)
ssh, openssh-client 및 openssh-server도 내 서버에 설치되어 있습니다.
또한 서버에 연결하는 클라이언트는 LAN을 통해 라우터에 연결되고 서버는 Wi-FI를 통해 라우터에 연결된다는 점을 언급하고 싶습니다.
답변1
문제 설명에 따르면 다음과 같은 오류가 발생합니다.
ssh: connect to host 192.168.80.131 port 2222:Connection refused
이는 포트 2222에서 서버에 연결을 시도하고 있음을 나타냅니다. 예를 들어 다음과 같은 명령을 사용하고 있습니다.
ssh -p 2222 192.168.80.131
또한 다음 방화벽 규칙 목록을 게시합니다.
20 ALLOW Anywhere
22 ALLOW Anywhere
80 ALLOW Anywhere
23 ALLOW Anywhere
8080 ALLOW Anywhere
20 (v6) ALLOW Anywhere (v6)
22 (v6) ALLOW Anywhere (v6)
80 (v6) ALLOW Anywhere (v6)
23 (v6) ALLOW Anywhere (v6)
8080 (v6) ALLOW Anywhere (v6)
이 목록에는 포트 2222가 누락된 것 같습니다.
또한 포트 22 및 포트 2222에 대한 SSH 규칙이 포함된 포트 전달 구성 페이지를 보여주는 라우터 관리 GUI로 보이는 스크린샷을 게시했습니다. 구성된 네트워크의 모양을 정확하게 판단할 수 있는 충분한 정보를 제공하지 않았지만 이 두 포트 중 하나를 통해 호스트에 연결하려는 것 같습니다.
두 가지 분명한 다음 단계가 떠오릅니다.
예를 들어 포트 22에 연결해 보십시오
ssh 198.168.80.131
. 또는포트 2222에 다시 연결을 시도하기 전에 라우터의 관리 GUI를 통해 포트 2222에 대한 "허용" 규칙을 추가해 보십시오.
답변2
다음을 확인하세요
/etc/ssh/sshd_config
듣기 위해 편집하세요Port 2222
.#
숫자 앞에Port
(이 주석/기본값 이외의 주석 처리 해제) 가 없는지 확인하십시오.대부분의 방화벽 프로필에서는 포트를 22에서 2222로 변경해도 자동으로 변경되지 않으므로 방화벽을 통해 포트 2222를 허용합니다.
22 를 제외한 다른 포트에서 사용하는 경우
ssh
명령은 다음과 같아야 합니다.ssh user@host -p 2222
답변3
다음을 사용해 보세요:
ssh user@host -p 'port'
여기서 "포트"는 22 또는 2222입니다. 사용중인 실제 포트가 2222인지 22인지 모르겠습니다. 모르신다면 sshd_config를 보내주세요