Me he encontrado con un dilema cuando he montado ownCloud y es que antes tenía directorios en mi Raspberry con los que editaba mis orgmode, todo.txt, que ahora están dentro de la nube y no los puedo editar.
Para solucionar este problema, he creado un docker con un servidor SSH para conectarme via SFTP. De esta manera también soluciono el problema que me comento un oyente, de como crear un servidor para conectarse a un directorio remoto cifrando el tráfico, todo ello dentro de una red local.

Este docker va a permitir el compartir un directorio local con el servidor SSH, solo aquel que necesito acceder, sin tener que conectarnos a la máquina host.
Mediante el almacenamiento externo de ownCloud, voy a conectarme a este docker por SFTP y con esto ganaré el tener los archivos fuera de la nube ownCloud y mantener todas las ventajas de mi nube como el control de versiones.
He creado el docker para varias arquitecturas partiendo de un Alpine Linux, lo que significa que la imágen tan solo tiene 11mb de tamaño y no consume nada en reposo.
#+BEGIN_EXAMPLE
docker run -d --name=ssh -p 7777:22 -v /nube:/nube ugeek/ssh:arm
#+END_EXAMPLE
Por defecto:
#+BEGIN_EXAMPLE
docker run -d --name=ssh -p 7777:22 -v /nube:/nube ugeek/ssh:amd64
#+END_EXAMPLE
Por defecto:
Para conectarse al servidor con Linux:
ssh root@localhost -p 7777
Si nuestra ip fuera 192.168.1.100:
ssh root@192.168.1.100 -p 7777
EntraenlaMatrix es la contraseña por defecto, pero quizás quieras cambiarla por una que decidas tu.
Vamos a cambiar la contraseña. Para hacer esto, tenemos que utilizar el comando passwd.
Podemos hacerlo con un solo comando con:
#+BEGIN_EXAMPLE
docker exec -it ssh passwd
#+END_EXAMPLE
Ahora pedirá que pongamos la nueva contraseña que queremos utilizar, la introducimos dos veces y ya está.
El archivo de configuración del servidor ssh, lo podemos encontrar en /etc/ssh/ssh_config.
Para no tener que escribir la contraseña cada vez y para darle más seguridad a nuestro servidor, vamos añadir la llave pública en nuestro servidor.
Creamos directorio de configuración ssh
#+BEGIN_EXAMPLE
docker exec -it ssh mkdir /root/.ssh
#+END_EXAMPLE
Creamos el archivo authorized_keys y añadimos id_rsa.pub de nuestra máquina local
#+BEGIN_EXAMPLE
docker exec -it ssh vi /root/.ssh/authorized_keys
#+END_EXAMPLE
Ahora solo falta que envíes o añadas añadas la llave pública del servidor.
El Dockerfile de este contenedor, lo he extraído de un repositorio del GitHub https://github.com/AzagraMac/alpine-ssh
Publicado por Angel el Saturday 06 February del 2021
También te puede interesar:
Powered by org-bash-blog
Written in OrgMode with Emacs and converted to HTML with Pandoc

Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 4.0 Internacional.