💾 Archived View for srlobo.gorritodeplata.xyz › tecnica › t01.gmi captured on 2021-12-17 at 13:26:06. Gemini links have been rewritten to link to archived content
⬅️ Previous capture (2021-12-03)
-=-=-=-=-=-=-
Posiblemente hayas empezado en esto de gemini montandote tu propio servidor, usando alguna de las maquinas que tienes en casa, un pc antiguo o puede que una raspberry donde ya tienes otros servicios.
El caso es que hay personas a las que no les gusta la idea de publicar sus servicios desde su propia casa, ya sea por el "gasto" que supone hacerlo, los problemas derivados del mantenimiento en casa (ip's dinámicas, fallos en el suministro eléctrico, abrir puertos, la seguridad..) o simplemente porque no quiere exponer un dato que compromete su privacidad.
Sea cual sea la razón, una de las opciones es públicar tu cápsula en un servidor vps ubicado en el cloud y así evitar los problemas antes mencionados (tendras otros :P).
Casi con seguridad, tu proveedor te ofrecera la posibilidad de operar con tu vps mediante el protocolo ssh, el cual permite obtener una consola remota cifrada hacia tu servidor.
Si no te apetece darle más vueltas al tema, aquí acabaria la cosa pero, casi con toda seguridad, llegara el momento en el cual se te hará pesado tener que acceder siempre a tu servidor para publicar nuevas entradas o puede que te empiece a preocupar no tener una copia de seguridad.
Bien, para matar dos pajaros de un tiro, te propongo el uso de rsync.
Rsync es, basicamente, una herramienta de sincronización de directorios que permite la transmisión eficiente de datos entre equipos y los cuales pueden ir cifrados o comprimidos. Existe el modo incluso de especificar que opere a traves de una conexión ssh con lo que se ajustaria perfectamente a lo que necesitamos.
La idea es trabajar en local, creando todas nuestras entradas localmente, tanto ficheros como directorios, y las sincronizaremos con nuestro vps solo con un único comando consiguiendo de este modo tener un reflejo de nuestra cápsula en local y evitando el ir entrado y saliendo del servidor vps.
El comando se pareceria a algo como esto:
rsync -arvz --progress --delete "/ruta_local_cápsula/" [usuario_del_vps]@[ip_del_vps]:"/ruta_remota_cápsula"
En caso de haber usado un puerto que no sea el de 'por defecto' (muy aconsejable cambiarlo), ejecutaremos el mismo comando pero añadiendo la parametrización del puerto:
rsync -arvz -e 'ssh -p [NUM-PUERTO]' --progress --delete "/ruta_local_cápsula/" [usuario_del_vps]@[ip_del_vps]:"/ruta_remota_cápsula"
Una vez ejecutemos el comando, el sistema nos pedira la contraseña del usuario en el VPS y, acto seguido, ejecutara la sincronización.
Destacar que el comando crea un reflejo unidireccional de local-->vps especificado con el parametro "--delete" (el comando siempre descartara los cambios remotos).
Password:
sending incremental file list
./
index.gmi
2,232 100% 1.46MB/s 0:00:00 (xfr#1, to-chk=8/13)
sent 1,290 bytes received 126 bytes 404.57 bytes/sec
total size is 14,829 speedup is 10.47
El paso de la contraseña tambien lo podriamos automatizar cambiando el método de autentificación de contraseña a clave rsa.
Saludos!