SCP y SSH sin claves en Linux

Para poder hacer login SSH y enviar archivos por SCP sin que te pida clave tienes que hacer lo siguiente:

Ejecutar el siguiente comando en tu home:

~$ ssh-keygen -t dsa

Esto generará una clave publica (id_dsa) y una privada(id_dsa.pub) en el directorio .ssh dentro de tu home. A continuación debes copiar la clave publica al host dónde quieras logear sin clave. En el host destino este archivo deberá llamarseauthorized_keys, el comando sería quedaría así:

~$ scp ~/.ssh/id_dsa.pub username@host:.ssh/authorized_keys

Una vez hecho esto ya podemos logear y enviar archivos en esa máquina sin tener que escribir la clave. Para hacer la operación inversa solo tienes que realizar los mismos pasos en la otra maquina.

Actualizado 26-03-2008

He descubierto que no hace falta complicarse tanto la vida, una vez creada la clave dsa o rsa puedes copiar directamente tu clave pública al servidor utilizando el comando:

ssh-copy-id usuario@host

Si has generado una clave rsa automáticamante copiara esta, si has creado otro tipo de clave puedes especificarla con el flag -i .

Categorized: Linux
Tagged:

2 comments on “SCP y SSH sin claves en Linux

  1. Al copiar la firma en el servidor de esta forma, estás sobreescribiendo el archivo authorized_keys borrando configuraciones anteriores. Si querés acceder sin clave desde varias pc al mismo servidor, deberías agregar las firmas sin borrar las existentes:
    ~$ scp ~/.ssh/id_dsa.pub username@host:.ssh/id_dsa_cliente.pub
    Luego loguearte al servidor:
    deberías agregar las firmas sin borrar las existentes:
    ~$ ssh username@host:.ssh
    ~$ cd .ssh
    ~$ cat id_dsa_cliente >> authorized_keys

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>