Evitar que nos pida autenticacion el servidor SSH Siempre que intentemos conectarnos a un equipo remoto con SSH nos va a pedir la contraseña de acceso para asegurarse de que tenemos acceso al mismo. Hay una forma de evitar que nos pase eso siempre. Para ello hemos de generar un par de llaves RSA y DSA las cuales sirven como claves de autenticacion entre los dos equipos remotos.
RSA Es un algoritmo asimétrico cifrador de bloques, que utiliza una clave pública, la cual se distribuye en forma autenticada, y otra privada, la cual es guardada en secreto por su propietario. Los mensajes enviados usando el algoritmo RSA se representan mediante números y el funcionamiento se basa en el producto de dos números primos grandes mayores que 10100 elegidos al azar para conformar la clave de descifrado. DSA (Digital Signature Algorithm) Es un estándar del Gobierno Federal de los Estados Unidos de América para firmas digitales. Fue un Algoritmo propuesto por el Instituto Nacional de Normas y Tecnología de los Estados Unidos para su uso en su Estándar de Firma Digital. Este algoritmo como su nombre lo indica, sirve para firmar y no para cifrar información. Una desventaja de este algoritmo es que requiere mucho más tiempo de cómputo que RSA. El proceso para generar estas claves es el siguiente: Generación de claves RSA 1.-Teclee el siguiente comando desde una terminal BASH [NOTA: El comando debe ejecutarse en el equipo cliente] [root@ localhost ]# ssh-keygen -t rsa 2.-Al haber tecleado el comando este nos preguntara si queremos guardar esa clave en otra ubicación, por defecto seleccionaremos la que nos da por defecto 3.- Al haber aceptado nos pedirá introducir una contraseña y confirmarla nuevamente Enter passphrase (empty for no passphrase):xxxxxxxxxxxxxx Enter same passphrase again: xxxxxxxxxxxxxxx 4.- Finalmente nos creara dos tipos de clave: ● Una Publica, la cual sera almacenada en la ruta: /home/administrador/.ssh/id_rsa.pub ● Una Privada, la cual sera almacenada en la ruta: /home/administrador/.ssh/id_rsa Tras haber terminado de generar las claves nos tendrá que aparecer algo similar a esto: Your identification has been saved in /home/administrador/.ssh/id_rsa. Your public key has been saved in /home/administrador/.ssh/id_rsa.pub. The key fingerprint is: c8:d1:10:62:52:1d:97:5d:7d:5a:d3:84:b5:24:48:3d administrador@localdomain 5.- El siguiente paso sera cambiar los permisos de ejecución del siguiente directorio /home/administrador/.ssh lo cual se hará de la siguiente manera: [root@ localhost ]# chmod 755 /home/administrador/.ssh 6.- Lo siguiente sera copiar el contenido del fichero /home/administrador/.ssh/id_rsa.pub al fichero /home/usuarioRemoto/.ssh/authorized_keys del equipo remoto. Si este no existe no se preocupe, generelo con el uso del comando “touch” y pegue dentro de este el contenido del fichero. En caso de que el fichero authorized_keys exista solo pegue el contenido del fichero id_rsa.pub al fichero authorized_keys 7.- El siguiente paso sera cambiar los permisos de ejecución del siguiente directorio remoto /home/usuarioRemoto/.ssh/authorized_keys lo cual se hará de la siguiente manera: [root@ localhost ]# chmod 644 /home/usuarioRemoto/.ssh/authorized_keys Con esto habremos concluido la generación de la clave RSA, ahora solo nos falta generar la clave DSA Generación de claves DSA 1.-Teclee el siguiente comando desde una terminal BASH [NOTA: El comando debe ejecutarse en el equipo cliente] [root@ localhost ]# ssh-keygen -t dsa 2.-Al haber tecleado el comando este nos preguntara si queremos guardar esa clave en otra ubicación, por defecto seleccionaremos la que nos da por defecto 3.- Al haber aceptado nos pedirá introducir una contraseña y confirmarla nuevamente_ Enter passphrase (empty for no passphrase):xxxxxxxxxxxxxx Enter same passphrase again: xxxxxxxxxxxxxxx 4.- Finalmente nos creara dos tipos de clave: ● Una Publica, la cual sera almacenada en la ruta: /home/usuario/.ssh/id_dsa.pub ● Una Privada, la cual sera almacenada en la ruta: /home/usuario/.ssh/id_dsa Tras haber terminado de generar las claves nos tendrá que aparecer algo similar a esto: Your identification has been saved in /home/administrador .ssh/id_dsa. Your public key has been saved in /home/administrador/.ssh/id_dsa.pub. The key fingerprint is: 5d:7d:5a:d3:84:b5:24:48:3d:c8:d1:10:62:52:1d:97: administrador@localdomain 5.- El siguiente paso sera cambiar los permisos de ejecución del siguiente directorio /home/administrador/.ssh lo cual se hará de la siguiente manera: [root@ localhost ]# chmod 755 /home/administrador/.ssh 6.- Lo siguiente sera copiar el contenido del fichero /home/usuario/.ssh/id_dsa.pub al fichero /home/usuarioRemoto/.ssh/authorized_keys del equipo remoto. Si este no existe no se preocupe, generelo con el uso del comando “touch” y pegue dentro de este el contenido del fichero En caso de que el fichero authorized_keys exista solo pegue el contenido del fichero id_dsa.pub al fichero authorized_keys 7.- El siguiente paso sera cambiar los permisos de ejecución del siguiente directorio remoto /home/usuarioRemoto/.ssh/authorized_keys lo cual se hará de la siguiente manera: [root@ localhost ]# chmod 644 /home/usuarioRemoto/.ssh/authorized_keys Con esto habremos concluido la generación de las dos claves y de esa manera ya no tendremos que autenticarnos cada vez que nos conectemos vía SSH hacia algún equipo remoto -- Este mensaje le ha llegado mediante el servicio de correo electronico que ofrece Infomed para respaldar el cumplimiento de las misiones del Sistema Nacional de Salud. La persona que envia este correo asume el compromiso de usar el servicio a tales fines y cumplir con las regulaciones establecidas Infomed: http://www.sld.cu/ -- Este mensaje ha sido analizado por MailScanner en busca de virus y otros contenidos peligrosos, y se considera que est� limpio.
______________________________________________________________________ Lista de correos del Grupo de Usuarios de Tecnologías Libres de Cuba. Gutl-l@jovenclub.cu https://listas.jovenclub.cu/cgi-bin/mailman/listinfo/gutl-l