Respaldo y restauraci贸n de claves SSH con frases semilla 馃摑

Nos apoyaremos en la aplicaci贸n Melt para el proceso de respaldo y restauraci贸n. Son de los mismos creadores de Gum y de muchas otras herramientas y aplicaciones muy interesantes que pueden explorar aqu铆.


En su pagina de github disponemos de varias opciones de instalaci贸n, en Arch Linux esta en los repositorios AUR.

Para mas informacion como instalarlo desde este repositorio, aqu铆.


Creaci贸n de llaves con ssh-keygen

Melt por ahora, solo tiene soporte para las llaves ssh Ed25519, as铆 que vamos a crear unas de prueba. Pero antes, creamos un directorio de trabajo.

$ mkdir test

Luego con la herramienta ssh-keygen perteneciente a OpenSSH, creamos las llaves de la manera siguiente.

$ ssh-keygen -t Ed25519 -f test/prueba



Se creo unas llaves con el nombre de prueba, en el directorio test y sin passphrase.

Si desea saber como colocar o cambiarle el passphrase a la llave privada, puede ver aqu铆.

En el directorio, tenemos una llave privada (prueba) y una llave p煤blica (prueba.pub).



El contenido de la clave privada, es la siguiente.

-----BEGIN OPENSSH PRIVATE KEY-----
b3BlbnNzaC1rZXktdjEAAAAABG5vbmUAAAAEbm9uZQAAAAAAAAABAAAAMwAAAAtzc2gtZW
QyNTUxOQAAACBzGIPeS4wCq9+SjqjEfc29XshGxb3WSS8J77+qyUfLlAAAAJisFd3urBXd
7gAAAAtzc2gtZWQyNTUxOQAAACBzGIPeS4wCq9+SjqjEfc29XshGxb3WSS8J77+qyUfLlA
AAAEAmmPLqDe6vob55wfTlC2VM9JvVDeqLeGsnQ2X1rFdD73MYg95LjAKr35KOqMR9zb1e
yEbFvdZJLwnvv6rJR8uUAAAAD3RydWtvMjJAcGljYW50ZQECAwQFBg==
-----END OPENSSH PRIVATE KEY-----

 

Y de la llave p煤blica.

ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHMYg95LjAKr35KOqMR9zb1eyEbFvdZJLwnvv6rJR8uU


Respaldo con Melt

Ahora usamos Melt, para generar las frases semillas para el respaldo.

$ melt ~/test/prueba



Me genero las siguientes.

charge shy ritual bridge turtle speak wheat deal
visual choose sun okay endless tunnel dash fabric
journey float speak slogan food close autumn treat


Tambi茅n podemos guardarlas, en un archivo de texto.

$ melt ~/test/prueba > t.txt

 

Restaurar llaves con Melt

Ahora directamente en el directorio home, genero las llaves a partir de las frases semillas en el archivo de texto.

$ cat t.txt | melt restore - 


Me genero la siguiente llave privada.

-----BEGIN OPENSSH PRIVATE KEY-----
b3BlbnNzaC1rZXktdjEAAAAABG5vbmUAAAAEbm9uZQAAAAAAAAABAAAAMwAAAAtz
c2gtZWQyNTUxOQAAACBzGIPeS4wCq9+SjqjEfc29XshGxb3WSS8J77+qyUfLlAAA
AIgUbotpFG6LaQAAAAtzc2gtZWQyNTUxOQAAACBzGIPeS4wCq9+SjqjEfc29XshG
xb3WSS8J77+qyUfLlAAAAEAmmPLqDe6vob55wfTlC2VM9JvVDeqLeGsnQ2X1rFdD
73MYg95LjAKr35KOqMR9zb1eyEbFvdZJLwnvv6rJR8uUAAAAAAECAwQF
-----END OPENSSH PRIVATE KEY-----
La 煤nica diferencia es en el final, que faltan estos caracteres Bg== 馃


Para generar a partir de las frases semillas, la llave privada y p煤blica, usando el archivo de texto.

$ cat t.txt | melt restore ./my-key

 


Si quieres restaurar las llaves colocando las frases semillas (seed phrase).

$ melt restore ./my-key --seed "seed phrase"


Comparaci贸n de las llaves p煤blicas.

Las llaves p煤blicas, son id茅nticas.


 

 

Palabras finales

Me ha parecido una herramienta muy interesante, es muy parecido al mecanismo usado por las carteras de criptomonedas, de todos modos en el github, explican el procedimiento que usan.

Prob茅 la llave privada generada por Melt y funciona igual a la generada por ssh-keygen.




Para mas informaci贸n sobre SSH en el blog, aqu铆.


Entradas populares 馃ぉ

Super Mario RPG 馃幃