
SSH 터미널을 열려고 하는데 포트 22에서 연결이 거부되었습니다. 내 nmap에 포트 22가 표시되지 않습니까? 내 서버에 어떻게 연결할 수 있나요?
PORT STATE SERVICE
21/tcp open ftp
25/tcp open smtp
80/tcp open http
4000/tcp filtered remoteanything
4001/tcp filtered newoak
4002/tcp filtered mlchat-proxy
이것은 hackertarget.com의 내 포트 스캔입니다:
PORT STATE SERVICE VERSION
21/tcp open ftp ProFTPD 1.3.1
22/tcp closed ssh
25/tcp open smtp Postfix smtpd
80/tcp open http lighttpd 1.4.29
110/tcp closed pop3
139/tcp closed netbios-ssn
143/tcp closed imap
443/tcp closed https
445/tcp closed microsoft-ds
1433/tcp closed ms-sql-s
3306/tcp closed mysql
8080/tcp closed http-proxy
SSHD를 어떻게 닫을 수 있나요?
답변1
연결이 거부되고 Nmap에 포트가 닫혀 있다고 표시되면 연결할 수 없습니다. 액세스할 수 있는 다른 방법(물리적 터미널, 가상 콘솔 등)이 있는 경우 다음 명령 중 하나를 사용하여 SSH 데몬이 실행되고 있는지 확인할 수 있습니다(일부는 시스템에서 사용하지 못할 수 있음).
ps -f -C sshd
ps aux | grep sshd
sudo netstat -ptan | grep sshd
service ssh status
실행 중이 아니면 시작해야 합니다. 이를 수행하는 일반적인 방법은 다음과 같습니다.
service ssh start
invoke-rc.d ssh start
/etc/init.d/ssh start
/usr/sbin/sshd
이러한 모든 명령에는 루트 권한(예: sudo)이 필요합니다.
데몬이 실행 중이지만 여전히 연결할 수 없다면 네트워크 장치나 호스트의 iptables 방화벽이 연결을 차단하고 있을 가능성이 있습니다. 를 사용하여 자신만의 규칙을 볼 수 있지만 iptables -L
방화벽 관리자(UFW는 Ubuntu에서 널리 사용됨)를 사용하는 경우 테이블을 읽기 어려울 수 있으므로 사용 중인 도구( ufw status
예: ) 에 대한 사용자 인터페이스를 확인해야 합니다. . Nmap 출력에 몇 개의 필터링된(방화벽) 포트가 표시되고 22/tcp가 그 포트에 없기 때문에 네트워크 장치가 이를 차단할 가능성은 없습니다.
마지막으로 몇 가지 방어 도구와 스크립트(예:실패2금지및 기타) 정책 위반으로 인해 주소를 차단할 수 있으므로(예: 너무 많은 로그인 시도 실패) 로그를 확인해야 할 수도 있습니다.
답변2
다음을 사용하여 원격으로 SSH 서버의 상태를 확인할 수 있습니다.nmap
$ nmap -v -nn serverip 22
SSH 서버가 다운된 것으로 표시되면 SSH 서버에 대한 로컬 액세스 권한을 얻고 다음과 같은 명령을 실행해야 합니다.
$ /etc/init.d/ssh status
이 show ssh 서비스가 다운된 경우 다음과 같이 시작해야 합니다.
$ sudo /etc/init.d/ssh start
또는
$ service ssh start