
Quero abrir um terminal ssh, mas isso me dá uma conexão recusada na porta 22. Meu nmap não lista uma porta 22? Como posso me conectar ao meu servidor?
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
Esta é minha varredura de porta em 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
Como o sshd pode ser fechado?
Responder1
Se sua conexão for recusada e o Nmap mostrar que a porta está fechada, você não poderá se conectar. Se você tiver alguma outra forma (terminal físico, console virtual, etc) de obter acesso, poderá confirmar se o daemon SSH está sendo executado com algum destes comandos (alguns podem não estar disponíveis em seu sistema):
ps -f -C sshd
ps aux | grep sshd
sudo netstat -ptan | grep sshd
service ssh status
Se não estiver em execução, você precisará iniciá-lo. Maneiras comuns de fazer isso são:
service ssh start
invoke-rc.d ssh start
/etc/init.d/ssh start
/usr/sbin/sshd
Todos esses comandos devem exigir privilégios de root (por exemplo, sudo).
Se o daemon estiver em execução, mas você ainda não conseguir se conectar, é possível que um dispositivo de rede ou o firewall iptables do seu host esteja bloqueando as conexões. Você pode ver suas próprias regras com iptables -L
, mas se estiver usando um gerenciador de firewall (UFW é popular no Ubuntu), as tabelas podem ser difíceis de ler e você deve verificar a interface do usuário da ferramenta que está usando ( ufw status
, por exemplo) . Não é provável que um dispositivo de rede o esteja bloqueando, já que a saída do Nmap mostra algumas portas filtradas (com firewall) e 22/tcp não está entre elas.
Por último, existem algumas ferramentas e scripts de defesa (comofail2bane outros) que podem bloquear endereços por violação de políticas (como muitas tentativas de login malsucedidas), então você pode precisar verificar os logs para coisas assim.
Responder2
Você pode verificar o status do seu servidor ssh remotamente usandonmap
$ nmap -v -nn serverip 22
Se mostrar que o servidor ssh está inativo, você precisará obter algum acesso local ao servidor ssh e executar comandos como:
$ /etc/init.d/ssh status
Se este serviço show ssh estiver inativo, você deverá iniciá-lo
$ sudo /etc/init.d/ssh start
ou
$ service ssh start