Si sus scripts de shell de Linux se están tropezando con huellas SSH, Jack Wallen tiene una solución fácil para evitar el problema.

    Digamos que ha escrito un script bash que escanea todos los servidores Linux de su centro de datos en busca de tiempo de actividad. Dicho archivo podría contener los siguientes contenidos:

    ssh $1 "uptime" (tiempo de actividad)

    Cuando ejecuta su script, puede verse frustrado por un problema en el que es detenido por un servidor al que aún no se le ha añadido su huella digital de clave SSH al archivo known_hosts. Cuando esto sucede, su script se vuelve inútil.

    Huella digital de la llave SSH

    ¿Qué es una huella dactilar de una llave SSH? Simple: Es la huella dactilar de una llave que se verifica cuando se intenta iniciar sesión en un equipo remoto utilizando SSH. Cuando inicie sesión en un servidor SSH por primera vez, verá algo parecido a lo que se muestra en la .

    Si no acepta la huella dactilar, la conexión se interrumpirá inmediatamente. Entonces, ¿qué sucede cuando se trabaja con un script bash que no puede aceptar entradas, para aprobar la adición de la huella digital SSH remota?

    Afortunadamente, los desarrolladores de SSH pensaron en esto, y han añadido un comando que le permite añadir fácilmente huellas digitales SSH al archivo known_hosts.

    Añadir la huella dactilar

    Demostraré cómo añadir la huella dactilar de un servidor remoto a una máquina local. Digamos que el servidor remoto está en 192.168.1.162. Para añadir esa huella dactilar, el comando sería:

    ssh-keyscan -H 192.168.1.162 >> ~/.ssh/known_hosts

    El comando se ejecutará y agregará la huella digital SSH remota a la máquina local, sin su entrada .

    Así que una adición al script de bash podría parecerse a:

    ssh-keyscan $1 >> ~/.ssh/known_hosts

    La adición anterior tomaría el argumento del comando (digamos, por ejemplo, ./script 192.168.1.118) y añadiría la huella dactilar a ~/.ssh/known_hosts antes de que se mueva a la siguiente línea, evitando así el problema de la huella dactilar SSH que falta. Por supuesto, lo anterior sólo funcionará correctamente si tiene configurada la autenticación de la clave ssh. De lo contrario, tendrá que introducir la contraseña del equipo remoto.

    Las cosas simples

    A veces son las cosas simples las que hacen tropezar nuestros guiones de la fiesta. Si ese problema clave de huellas dactilares le ha estado causando dolores de cabeza con sus scripts, ahora tiene los medios para evitarlo.

    Boletín Semanal de Código Abierto

    No se pierda nuestros consejos, tutoriales y comentarios sobre el sistema operativo Linux y las aplicaciones de código abierto. Entregado los martes

    mismo

    Vea también