Directorio DATA y Certificado SSL en NEXTCLOUD
Este tutorial se puede decir que es la segunda parte del tutorial Nextcloud como Servidor Cloud Privado. Lo cierto es que en su momento pensé en hacer este tutotial, pero seguí con otras cosas y no lo monté.
En los comentarios de los videos de Youtube me han hecho varias preguntas sobre este tema y no una persona, sino varias, por lo que he visto necesario montarlo…
Al terminal el tutorial de instalación de Nextcloud nos encontramos con que nuestro servidor funciona con la IP local y solo podemos trabajar con el de forma local. Esto es suficiente si lo quieres tener en casa y solamente accedes tú, pero si lo que quieres es poder acceder a él desde Internet y que cualquiera pueda conectarse necesitamos algunas cosas que inicialmente no se instalan.
Si tenemos el servidor Nexcloud alojado en un Hosting de empresa, no necesitamos tener un dominio DDNS porque tiene una IP fija y puedes localizar el servidor desde Internet siempre así que puedes usar un dominio de pago para hacer esto.
En cambio, si tenemos el servidor de Nextcloud en casa o en la oficina, es posible que nuestra IP externa cambie, así que necesitamos un dominio DDNS para que tal dominio siempre esté relacionado con nuestra IP.
Una vez tengamos ese dominio, redireccionaremos los puertos del router para que apunten hacia nuestro servidor y crearemos un certificado SSL para que podamos conectarnos al servidor desde Internet pero de manera segura con el HTTPS por delante.
Una vez tengamos todo esto, configuraremos Nextcloud para que acepte el acceso al servidor desde el nuevo dominio y ya podremos utilizarlo de forma local y desde Internet de forma segura.
Por otro lado, veremos como cambiar de sitio el directorio DATA que es donde se alojan todos los ficheros que tengamos en nuestra cuenta de Nextcloud. Con esto si te has quedado sin espacio y quieres moverlo a otro disco duro podrás hacerlo sin problemas.
Este tutorial se basa en una distribución Linux Debian 11 y el servidor Nextcloud recién instalado, por lo que aún estamos trabajando con él con la IP local.
Sin más, aquí os dejo el video donde se explican todos los detalles y más abajo el tutorial rápido …
APUNTES
Certificado de seguridad SSL en Nextcloud
Creamos un dominio DDNS desde la web freemyip.com y copiamos la dirección que nos dé.
Nos identificamos como super usuario ROOT en nuestro servidor con el comando…
su
Si no tenemos el programa CURL instalado lo instalamos con …
apt install curl
Ahora abrimos otra terminal con el usuario del sistema que tengamos y ejecutamos …
crontab -e
Una vez dentro hacemos que curl ejecute la url que nos dio freemyip.com para que siempre tengamos el dominio relacionado con nuestra IP externa. Insertamos lo siguiente …
*/5 * * * * curl https://freemyip.com/update?token=........TUDIRECCIÓN
Volvemos a la terminal donde estamos identificados con el super usuario ROOT y vamos a ver la IP que tiene nuestro servidor …
ip addr
Accedemos a nuestro router y redireccionamos el puerto 80 y 443 con los protocolos TCP+UDP hacia la IP de nuestro servidor.
Vamos a crear un certificado de seguridad SSL con Certbot pero antes vamos a instalar …
apt install snapd
Instalamos el core con …
snap install core
Ahora instalamos Certbot con snap …
snap install --classic certbot
Cremos un enlace simbolico…
ln -s /snap/bin/certbot /usr/bin/certbot
Creamos el certificado para nuestro dominio y se lo especificamos en esta configuración …
certbot --apache
Le decimos al servidor de Nexcloud que también acepte conexiones desde nuestro nuevo dominio freemyip.com. Editamos el fichero de configuración …
nano /var/www/html/nextcloud/config/config.php
Dentro del array nos encontramos …
0 => 'tu.ip.local',
Bajo esta linea insertamos nuestro dominio DDNS …
1 => 'midominio.freemyip.com',
Guardamos el fichero y listo.
Vamos a modificar la zona de Apache que nos ha creado Certbot …
nano /etc/apache2/sites-available/000-default-le-ssl.conf
En la ruta de DocumentRoot /var/www/html la modificamos por /var/www/html/nextcloud
Reiniciamos Apache con …
systemctl restart apache2
Ahora ya puedes usar tu servidor Nextcloud para trabajar con el desde internet.
Como mover el directorio DATA en Nextcloud
Nos identificamos como super usuario ROOT en nuestro servidor con el comando…
su
Acedemos al directorio de Nextcloud …
cd /var/www/html/nextcloud
Paramos el servidor web Apache …
systemctl stop apache2
Copiamos el directorio donde se almacenan todos los datos a la ubicación que queramos …
cp -r data/. /home/forat/data/
Renombramos el directorio DATA …
mv data a por ejemplo dataOLD
Hacemos un enlace simbólico desde el nuevo directorio donde queramos alojar el directorio data a data …
ln -s /nueva/ruta/data data
Modificamos el usuario y grupo para el nuevo directorio …
chown -R www-data:www-data data
Modificamos el usuario y grupo para el directorio real …
chown -R www-data:www-data /nueva/ruta/data
Reiniciamos Apache …
systemctl start apache2
Con esto ya lo tenemos funcionando y operativo en la nueva ubicación.