VPSs y mas.

Mostrando entradas con la etiqueta ssh. Mostrar todas las entradas
Mostrando entradas con la etiqueta ssh. Mostrar todas las entradas

lunes, 1 de enero de 2018

Solucion de errores: SSH "Permission denied (publickey)". Luego de upgrade. Facil y rapido

En caso de que estes recibiendo el siguiente error al hacer un ssh:


"Permission denied (publickey)."

pero extrañamente venía funcionando todo quizás fue por un upgrade de openssh o del sistema operativo.
Lo primero que te recomiendo es realizar un ssh y con algo de debug (por ejemplo con el -v)

Quedarías así:


$ ssh -v -l alejandro miserver.com

Verás algo así:

$ ssh -v -l alejandro miserver.com
OpenSSH_7.6p1, LibreSSL 2.6.2
debug1: Reading configuration data /Users/alejandroacosta/.ssh/config
debug1: /Users/alejandroacosta/.ssh/config line 1: Applying options for *
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 49: Applying options for *
debug1: Connecting to miserver port 22.
debug1: Connection established.
debug1: key_load_public: No such file or directory
debug1: identity file /Users/alejandroacosta/.ssh/id_rsa type -1
debug1: key_load_public: No such file or directory
debug1: identity file /Users/alejandroacosta/.ssh/id_rsa-cert type -1
debug1: identity file /Users/alejandroacosta/.ssh/id_dsa type 1
debug1: key_load_public: No such file or directory
debug1: identity file /Users/alejandroacosta/.ssh/id_dsa-cert type -1
debug1: key_load_public: No such file or directory
debug1: identity file /Users/alejandroacosta/.ssh/id_ecdsa type -1
debug1: key_load_public: No such file or directory
debug1: identity file /Users/alejandroacosta/.ssh/id_ecdsa-cert type -1
debug1: key_load_public: No such file or directory
debug1: identity file /Users/alejandroacosta/.ssh/id_ed25519 type -1
debug1: key_load_public: No such file or directory
debug1: identity file /Users/alejandroacosta/.ssh/id_ed25519-cert type -1
debug1: Local version string SSH-2.0-OpenSSH_7.6
debug1: Remote protocol version 2.0, remote software version OpenSSH_6.6.1p1 Ubuntu-2ubuntu2.8
debug1: match: OpenSSH_6.6.1p1 Ubuntu-2ubuntu2.8 pat OpenSSH_6.6.1* compat 0x04000000
debug1: Authenticating to miserver.com:22 as 'alejandro'
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: algorithm: curve25519-sha256@libssh.org
debug1: kex: host key algorithm: ecdsa-sha2-nistp256
debug1: kex: server->client cipher: chacha20-poly1305@openssh.com MAC: compression: none
debug1: kex: client->server cipher: chacha20-poly1305@openssh.com MAC: compression: none
debug1: expecting SSH2_MSG_KEX_ECDH_REPLY
debug1: Server host key: ecdsa-sha2-nistp256 SHA256:0CjzVIchz9571bMTChmp6cMZ+9QVogt9mHSaK8JA5VQ
debug1: Host '[miserver.com]:22' is known and matches the ECDSA host key.
debug1: Found key in /Users/alejandroacosta/.ssh/known_hosts:20
debug1: rekey after 134217728 blocks
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: rekey after 134217728 blocks
debug1: Skipping ssh-dss key /Users/alejandroacosta/.ssh/id_dsa - not in PubkeyAcceptedKeyTypes
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey
debug1: Next authentication method: publickey
debug1: Trying private key: /Users/alejandroacosta/.ssh/id_rsa
debug1: Trying private key: /Users/alejandroacosta/.ssh/id_ecdsa
debug1: Trying private key: /Users/alejandroacosta/.ssh/id_ed25519
debug1: No more authentication methods to try.
alejandro@miserver.com: Permission denied (publickey).


La linea mas importante es:

"debug1: Skipping ssh-dss key /Users/alejandroacosta/.ssh/id_dsa - not in PubkeyAcceptedKeyTypes"


Existen varias maneras de solucionarlo, muchas estan mencionadas en:

https://stackoverflow.com/questions/39715135/problems-deploying-code-with-capistrano-since-upgrading-to-macos-10-12-sierra

y

https://rolfje.wordpress.com/2016/11/12/macos-sierra-ssh-permission-denied/


Sin embargo si estas urgido, corriendo puedes solucionarlo inmediatamente haciendo esto:

Solución

echo "Host *" >> ~/.ssh/config
echo "PubkeyAcceptedKeyTypes=+ssh-dss" >> ~/.ssh/config


Mas información:

https://ro-che.info/articles/2015-12-21-permission-denied-publickey-ssh-update












jueves, 27 de diciembre de 2012

Que hacer cuando falla "clear line N" en Cisco

Caso:
  Al realizar un "clear line" en Cisco para desconectar una sesión Telnet o SSH sencillamente sigue apareciendo el usuario.

Ejemplo:


IMP#sh user
    Line       User       Host(s)              Idle       Location
   2 vty 0     aacosta    idle                 00:00:01 a.b.c.d
*  4 vty 2     pepe idle                 00:00:00 xx.yy.zz.dd

Queremos sacar a pepe del equipo y realizamos:
 IMP#clear line vty 2


y sigue apareciendo:


IMP#who
    Line       User       Host(s)              Idle       Location
   2 vty 0     aacosta    idle                 00:00:39 a.b.c.d
*  4 vty 2     pepe    idle                 00:00:00 xx.yy.zz.dd


Procedimiento y solución:
Hay dos manera de hacerlo:

a) Manera rápida y 99% seguro que funciona (y menos probabilidades de error de dañar otra cosa). En vez de utilizar "clear line vty" utilizaremos "clear tcp line":

Así (nuevamente para desconectar a pepe):

IMP#clear tcp line 2
[confirm]
 [OK]

b) Manera más drástica:

Buscamos las conexiones TCP que tenga el router en ese momento. Para ello utilizamos el comando "show tcp brief". Filtramos el puerto 23 (Telnet) o 22 (SSH) según sea el caso. Por ejemplo:

IMP#show tcp brief | i \.23_
63820270  n.n.n.n.23        a.b.c.d.56691     ESTAB
637E1AC0  x.x.x.x.23             xx.yy.zz.dd.39431   ESTAB

  El valor del lado izquiero es la dirección dentro del TCB (TCP Block), esto es precisamente la conexión TCP que estaremos eliminando. 
  El comando es el siguiente:

IMP#clear tcp tcb 637E1AC0

  NOTA: Favor estar seguros antes de eliminar la sesión TCP, recuerden que el router puede tener conexiones HTTP, BGP y otras importantes.

Suerte, espero haya sido útil,

martes, 11 de septiembre de 2012

Telnet y SSH directo desde la consola/shell/prompt de Windows

Introduccion:  Si has llegado a este post es porque estas aburrido y quizas hasta molesto que Windows 7 no tenga un cliente telnet ni un cliente SSH incorporado.

Objetivo:  Poder hacer telnet y SSH de manera sencilla desde Windows. Por ejemplo, en el campo de ejecutar escribir algo tan sencillo como:
  telnet 192.168.1.1  o
  ssh 192.168.1.2 y que se ejecute el telnet o ssh para entrar en la direccion
  Hoy en dia existen diferentes progrmas que hacen eso, siendo quizas el mas famoso Putty.

Pasos:  Es mucho mas facil de lo que me esperaba. Sigue estos pasos:
1) Entra en: 
http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html
y baja los ejecutables (.exe) de putty y puttytel
2) Renombra putty.exe a ssh.exe y puttytel a telnet.exe
3) Copia/mueve ssh.exe y telnet.exe a: 
C:\Windows\System32

Voila!..., listo, ahora desde inicio-->ejecutar, desde una prompt DOS, etc puedes escribir ssh/telnet + IP y entrará.


Espero haya sido útil!

lunes, 18 de junio de 2012

Cliente SSH dura varios segundos para conectarse

Otro post sumamente rápido (pero útil):

Caso:
  Cuando intento conectarme a un servidor SSH (Linux server) el mismo dura varios segundos antes de pedir login/password.
  Esto es muy comun en servidores que no tienen acceso a Internet o DNSs mal configurados.

  Ocurre que cuando intentamos conectarnos al SSH Server intenta hacer una solicitud de DNS reverso para IP origen (de donde nos intentamos conectar).

  Por ejemplo, si quiero conectarme desde el equipo 192.168.1.2 al servidor SSH ubicado en el IP 10.1.1.21, este último, durante la conexión intentará buscar el reverso del IP 192.168.1.2.  El tiempo que vemos antes de obtener "Login" es precisamente el timeout del SSH Server durante la operación DNS.

Solución:
  La solución es sumamente sencilla, existen dos manera:

1) Si siempre nos vamos a conectar desde la misma dirección IP (o muy pocas diferentes):
  En el servidor editar el archivo /etc/hosts y colocar los IPs de origen desde donde me conectaré. ejemplo:

192.168.1.2  blog.acostasite.com  aacostaPC
192.168.1.3  www.lomejordelemail.com miPC

2) La solución alternativa es colocar al final del archivo /etc/ssh/sshd_config 


UseDNS no


Más información

Espero haya sido útil.


martes, 22 de mayo de 2012

cannot connect to X server despues de hacer SSH

Hola,
  Este es un post sumamente corto y espero que sea útil para alguien.

Problema:
  Luego de hacer SSH al momento de intentar ejecutar una aplicación que necesite X se recibe el mensaje "cannot connect to X server".
 
Solucion:
   Editar el archivo /etc/ssh/ssh_config  y ubicar la linea que indica:


#   ForwardX11no

y cambiarla por

   ForwardX11  yes

   Listo!, no es necesario reiniciar nada, solo realiza nuevamente el ssh y ejecuta tu aplicación X.


Espero sea útil,

Suerte,




martes, 20 de octubre de 2009

Configurar SSH en Router Cisco

Como todo sabemos, telnet es un protocolo que ofrece bajos niveles de seguridad, basta con que coloquemos un sniffer y podamos las ordenes que el usuario esta escribiendo, desde nombre del usuario hasta el password que este uso para entrar en el equipo.

Para poder habilitar SSH en un equipo Cisco, el IOS debe de tener los modulos de cifrado DES o 3DES, IPsec.

De resto, es bastante sencillo.


Le asignamos un nombre al equipo

Router(config)# hostname Router-SSH
Router-SSH(config)#

Luego configuramos un nombre de dominio para el equipo con el comando ip domain-name

Router-SSH(config)# ip domain-name acostanetwork.com
Router-SSH(config)#

Luego creamos una llave RSA para la autenticacion y cifrado de la data

Router-SSH(config)# crypto key generate rsa
The name for the keys will be: Router-SSH.acostanetwork.com
Choose the size of the key modulus in the range of 360 to 2048
for your General Purpose Keys. Choosing a key modulus greater than
512 may take a few minutes.

How many bits in the modulus [512]: 1024
% Generating 1024 bit RSA keys ...[OK]


Luego ejecutamos el siguiente comando para que el router solo acepte peticiones SSH, de esta manera deshabilitamos el TELNET en el equipo


Router-SSH(config-line)#transport input ssh


Y listo!



Saludos!!!!