{"id":26168,"date":"2020-05-18T16:19:48","date_gmt":"2020-05-18T14:19:48","guid":{"rendered":"https:\/\/eltallerdelbit.com\/?p=26168"},"modified":"2020-08-24T00:13:49","modified_gmt":"2020-08-23T22:13:49","slug":"solucionar-problemas-con-ssh","status":"publish","type":"post","link":"https:\/\/eltallerdelbit.com\/solucionar-problemas-con-ssh\/","title":{"rendered":"Solucionar problemas con SSH"},"content":{"rendered":"
<\/p>\n
<\/p>\n
Algunos mensajes cl\u00e1sicos de errores SSH son: “Connection timed out<\/em><\/strong>“, “unable to connect port 22<\/em><\/strong>“, “Port 22: Connection Refused<\/strong><\/em>” , “Could not resolve hostname<\/em>“, “Permission denied<\/em>” … <\/p>\n <\/p>\n <\/p>\n Este error nos muestra mensajes como estos que veremos a continuaci\u00f3n. –> En clientes OpenSSH veremos:<\/p>\n <\/p>\n –> En PuTTY<\/a> los errores ser\u00e1n como:<\/p>\n <\/p>\n <\/p>\n \u00bfQu\u00e9 podemos hacer para resolver el error Connection Timeout<\/em><\/strong> en SSH ?<\/span><\/p>\n <\/p>\n Este error es bastante claro. (Es algo diferente al error de Connection Timeout<\/em>). En el caso del error Connection Refused<\/em><\/strong>, la conexi\u00f3n SSH est\u00e1 siendo enrutada correctamente hacia servidor SSH destino, pero este rechaza la conexi\u00f3n. –> En clientes OpenSSH veremos:<\/p>\n <\/p>\n --> En PuTTY:<\/p>\n <\/p>\n <\/p>\n \u00bfQu\u00e9 podemos hacer para resolver el error Connection Refused<\/em><\/strong> en SSH ?<\/span><\/p<\n \n\n\n <\/p>\n <\/p>\n Para buscar la info de un puerto concreto:<\/p>\n <\/p>\n O usa grep para encontrar el puerto que utiliza tu servidor SSH:<\/p>\n <\/p>\n <\/p>\n En estos casos, al intentar conectar a un nombre de host, SSH nos responder\u00e1 algo como: Nombre o servicio desconocido. Algo as\u00ed como \"no se donde me has mandado conectar\" ...<\/p>\n Y es por un problema de resoluci\u00f3n de nombres.<\/p>\n <\/p>\n --> En clientes OpenSSH veremos:<\/p>\n <\/p>\n --> En PuTTY veremos:<\/p>\n <\/p>\n <\/p>\n \u00bfQu\u00e9 podemos hacer para solucionar errores SSH\u00a0 de resoluci\u00f3n de nombres de Host?<\/span><\/p>\n <\/p>\n <\/p>\n <\/p>\n En los casos del error \"Permission <\/span>denied<\/span> (<\/span>publickey<\/span><\/em><\/strong>)<\/em><\/strong>\", el problema est\u00e1 en que el servidor SSH nos est\u00e1 pidiendo una clave publica<\/a> que no tenemos, o bien tenemos una pero est\u00e1 equivocada, o se ha pasado con errores al servidor SSH ...<\/span><\/p>\n <\/p>\n <\/p>\n <\/p>\n Este error apunta a un cambio en el nombre del host<\/p>\n --> Si usamos PuTTY, veremos:<\/p>\n <\/p>\n De nuevo usaremos los diagn\u00f3sticos previos para confirmar que el hostname existe y podemos llegar hasta \u00e9l.<\/p>\n <\/p>\n <\/p>\n <\/p>\n <\/p>\n <\/p>\n <\/p>\n <\/p>\n <\/p>\n <\/p>\n <\/p>\n
\n <\/br><\/br>
\nHay una larga lista de errores SSH. Vamos a ver los errores m\u00e1s cl\u00e1sicos y la forma de solucionar problemas con SSH<\/strong>.<\/p>\nError SSH : Connection Timeout<\/strong><\/em> (El tiempo de conexi\u00f3n expir\u00f3)<\/span><\/h3>\n
\n <\/p>\nssh: connect to host 203.0.113.0 port 22: Connection timed out<\/code><\/pre>\n
Network error: Connection timed out<\/code><\/pre>\n
\n
\n
\n <\/p>\nError SSH : Connection Refused<\/em><\/strong> (Conexi\u00f3n rechazada)<\/span><\/h3>\n
\n <\/p>\nssh: connect to host [<\/span>...] port 22: connection refused\r\n
ssh: connect to host 203.0.113.0 port 22: Connection refused<\/pre>\n
Network error: Connection refused<\/pre>\n
\n
\n
service ssh status o systemctl status sshd<\/pre>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n
\n
\n
sudo netstat -plnt<\/code><\/pre>\n
netstat -na | find \"8080\"<\/pre>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n
\n
\n
\/etc\/ssh\/sshd_config<\/pre>\n
grep Port \/etc\/ssh\/sshd_conf<\/pre>\n
<\/pre>\n
\n
\n
iptables -L<\/pre>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n
\n
\n <\/p>\nError SSH : Problemas en resoluci\u00f3n de Nombres de Host<\/strong><\/span><\/h3>\n
ssh: Could not resolve hostname example.com: Name or service not known<\/pre>\n
Unable to open connection to example.com Host does not exist<\/pre>\n
\n
\n
Error SSH : Permission denied<\/em><\/strong> (publickey<\/strong>)<\/span><\/h3>\n
Permission denied (publickey)<\/pre>\n
Error SSH : Remote Host Identification has changed<\/strong><\/em><\/span><\/h3>\n
PuTTY error output<\/pre>\n
\n
\n <\/p>\nOtras causas de problemas SSH<\/strong><\/span><\/h3>\n
\n
\n
\r\nFeb 18 13:15:31 raspberrypi sshd[2392]: error: key_load_public: invalid format\r\nFeb 18 13:15:31 raspberrypi sshd[2392]: error: Could not load host key: \/etc\/ssh\/ssh_host_ed25519_key\r\nFeb 18 13:42:53 raspberrypi sshd[2770]: error: key_load_public: invalid format\r\nFeb 18 13:42:53 raspberrypi sshd[2770]: error: Could not load host key: \/etc\/ssh\/ssh_host_rsa_key\r\n<\/pre>\n
\n--> En este caso, puedes regenerar las claves SSH<\/a> (eliminando previamente las viejas):<\/p>\nsudo rm \/etc\/ssh\/ssh_host*<\/pre>\n
sudo dpkg-reconfigure openssh-server<\/pre>\n
Consejos generales para diagn\u00f3stico de errores SSH<\/strong><\/span><\/h3>\n
\n
\n
\n
\n