sábado, 25 de mayo de 2024

crear llaves SSH sin prompt y en un path personalizado

Cuando hablamos de automatizar, a menudo podemos necesitar la creacion de llaves ssh para la autenticacion en nuestros servidores Linux, el comando ssh-key pide varios durante el proceso de la creacion de las llaves, para hacer que este proceso vaya sin interaccion del usuario, podemos hacerlo de la siguiente manera

$ ssh-keygen -m PEM -t rsa -b 4096 -N '' -f ./id_rsa

el argumento -N '' evita que nos pregunte por las passphrase

el argumento -f recibe como valor el path donde queremos almacenar las llave publicas y privadas, asi como el nombre que recibiran


martes, 21 de mayo de 2024

Eliminar una regla de reenvio de puertos para nuestra Vagrant VM

Se puede eliminar/deshabilitar una regla de port forwarding en caso de que no queramos que esto funciona, si nuestro escenario usa bridged netowork, por ejemplo, no es tan necesario esto, para hacer esto, solo debemos agregar al final de la regla, el argumento disabled: true

config.vm.network "forwarded_port", guest: 80, host: 8080, host_ip: "127.0.0.1", disabled: true
 

Modificar reenvio de puertos predeterminados en Vagrant

 Normalmente iriamos al Vagranfile y modificaramos las reglas forward

config.vm.network "forwarded_port", guest: 22, host: 2232

pero esto no funciona, solo nos va a agregar una nueva regla de port_forwarding usando el puerto 2232, el detalle esta en que hay que definir, el id de la regla para que la sobreescriba! en este caso, el id de la regla es bien simple, "ssh", entonces para sobreescribir la regla, definiriamos de la siguiente manera

config.vm.network "forwarded_port", guest: 22, host: 2232, id: "ssh"

pero si usamos boxes predefinidas y queremos sobreescribir sus reglas de forwarding, tendriamos que conocer sus ids, esto lo podemos obtener con el siguiente comando, despues de una primera ejecucion de la VM para que genere toda la configuracion, desde el directorio donde esta el Vagranfile.

VBoxManage showvminfo $(cat .vagrant/machines/_VMNAME_/virtualbox/id) | grep Rule

NIC 1 Rule(0):   name = ssh, protocol = tcp, host ip = 127.0.0.1, host port = 2222, guest ip = , guest port = 22

y con eso, podemos evitar conflictos de puertos para poder desplegar varias VMs