SSH 연결이 거부되었습니다. 문제를 해결하는 방법은 무엇입니까?

SSH 연결이 거부되었습니다. 문제를 해결하는 방법은 무엇입니까?

제 생각에는:

$ ssh eric@myserver

myserver인트라넷의 컴퓨터는 어디에 있습니까? myserver포트 8080 등에서 HTTP에 ping을 보내거나 응답 할 수 있지만 시도하면 ssh다음과 같은 오류가 발생합니다.

ssh: connect to host myserver port 22: Connection refused

우분투 10을 사용하고 있습니다.

ps -ax, 제안된 대로 제공됨:

eric@Isaiah:~$ ps -ax | grep ssh
Warning: bad ps syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html
 1641 ?        Ss     0:04 /usr/bin/ssh-agent /usr/bin/dbus-launch --exit-with-session gnome-session
18376 pts/3    S+     0:00 grep --color=auto ssh

답변1

실행 중인 SSH 데몬이 없습니다. 명령의 출력을 보면 ps ax설명에 "ssh"가 포함된 두 개의 프로세스 ssh-agent(완전히 다른 작업을 수행함 sshd)와 grep ssh출력을 필터링하는 데 사용한 프로세스임을 알 수 있습니다 ps.

설치된 배포판에 따라 일반적 으로 패키지 관리자에 따라 ssh호출되는 서버를 설치하거나 실행해야 할 수도 있습니다 .openssh-serversshd

답변2

위 문제를 디버깅하는 단계:

  1. 도구를 사용하여 nmap이 서버에 어떤 포트가 열려 있는지 알아보세요. nmap포트 스캐너입니다. SSH 서버가 다른 포트에서 실행 중일 수 있기 때문입니다. nmap열린 포트 목록이 제공됩니다.

     $ nmap myserver
    

2. 이제 해당 포트에서 어떤 서버가 실행되고 있는지 확인할 수 있습니다. nmap의 출력에서 ​​포트 2424가 열려 있다고 가정합니다. 이제 nc(netcat) 도구를 사용하여 2424에서 실행 중인 서버를 확인할 수 있습니다.

 $ nc -v -nn myserver portno

포트 2424의 출력은 다음과 같다고 가정합니다.

myserver 2424 open
SSH-2.0-OpenSSH_5.5p1 Debian-4ubuntu5

이는 SSH가 2424에서 실행 중임을 의미합니다.

위 명령에서 포트 번호를 변경하고 nmap에 나열된 모든 열려 있는 포트를 확인하세요.

답변3

이는 SSH 서버가 해당 시스템에서 실행되고 있지 않거나 방화벽이 SSH 통과를 허용하지 않음을 의미합니다. 'ps -ax | grep ssh'.

답변4

이 문제도 발생했지만 VirtualBox 환경에서는 이 문제를 해결하려면 IP 주소를 동일한 네트워크 세그먼트로 설정해야 합니다. 예를 들면 다음과 같습니다.

내 호스트에서 을 열고 cmd입력하면 ipconfig100.2.2.1이 표시됩니다(예:).

따라서 가상 머신에서 가상 머신의 주소를 /etc/hosts100.2.2.3과 같은 것으로 설정하고 최종 번호를 확인한 다음 가상 머신을 팝업해야 하지만 가상 머신을 시작하기 전에 가상 머신 설정에서 네트워크 머신을 구성해야 합니다. 이므로 네트워크 어댑터를 브리지로 설정해야 합니다.

이 모든 작업은 Solaris 환경에서 수행됩니다.

관련 정보