Recién cambié de Windows 7 a Ubuntú debido a que mi máquina de Windows sufrió un desperfecto, y mientras me la reparaban le di formato a otra máquina genérica que tenía y le instalá la última versión de Ubuntu.
En Windows usaba el putty para conectarme a mi servidor y quise usar el comando ssh en ubuntu. Sólo contaba con mi archivo ppk que usaba en putty bajo windows, asi que busque una versión de putty sobre ubuntu y lo encontré: PuTTY SSH Client.
Configuré la conexión y pude conectarme utilizando el archivo ppk que tenía, todo bien hasta que quise hacer un copy – paste, la versión del putty sobre ubuntu ¡no me permitió hacerlo!
Se que todo linux trae su propio cliente ssh así que me dediqué a investigar como conectarme desde el comando ssh con la llave privada ppk que tenía, ya que no contaba con las llaves publica y privada originales y ¡encontré la solución! Enseguida dejo la traducción del artículo en inglés que encontré aquí.
Primero hay que convertir el archivo ppk to formato ssh:
1. Instala el paquete putty-tool, mi ubuntu ya lo traía por default instalado.
2. Extrae la llave pública ssh del archivo ppk ejecutando el siguiente comando en una terminal:
puttygen archivo.ppk -o id_rsa.pub -O public-openssh
3. Extrae la llave privada ssh del mismo archivo:
puttygen archivo.ppk -o id_rsa -O private-openssh
De esta forma ya tenemos nuestras llaves originales. Ahora copiamos las llaves creadas a nuestro directorio .ssh que se encuentra en nuestro directorio home:
cp rsa* .ssh
Si el directorio .ssh no existe dentro de nuestro directorio home, ejecutamos los comandos siguientes para crearlo:
mkdir ~/.ssh
chmod 700 ~/.ssh
Pensé que con eso era suficiente e intenté conectarme:
ssh miusuario@miservidor
Ubuntu me arrojó la siguiente respuesta:
Agent admitted failure to sign using the key.
Permission denied (publickey,gssapi-with-mic).
Volví a hacer una búsqueda del motivo de ese error y me encontré este artículo.
Me faltaba solamente ejecutar el comando siguiente:
ssh-add
Se lo di, me pidió la frase de la llave privada, se la di, volví a intentar conectarme y ¡listo! ¡pude conectarme!
Espero que les sea de utilidad.
Que mal te explicas. De dónde sacaste la carpeta .ssh? Nunca lo explicaste. Muy mal explicado.
Si la carpeta .ssh no existe en tu home, puedes crearla, esta carpeta se genera cuando anteriormente ya te habías conectado a algún servidor ssh.
Para crearla puedes usar:
mkdir ~/.ssh
chmod 700 ~/.ssh
Es importante establecer los permisos como se indican.
¡Saludos!