Cómo instalar Seafile para sincronizar y compartir archivos en CentOS 8


Seafile es una solución de intercambio y sincronización de archivos de código abierto, de alto rendimiento, segura y lista para la empresa, construida con Python. Cuenta con una organización de datos simple usando bibliotecas, sincronización rápida, confiable y eficiente entre dispositivos.

Viene con encriptación incorporada donde una biblioteca se encripta con una contraseña elegida por usted y los archivos se encriptan antes de sincronizar con el servidor. La seguridad adicional se implementa a través de la autenticación de dos factores, la detección de virus en busca de archivos y la eliminación remota.

Lectura recomendada: Cómo instalar Seafile en CentOS 7

También admite copias de seguridad y recuperación de datos, uso compartido de archivos y control de permisos (puede compartir bibliotecas y directorios con usuarios o grupos, con permisos de solo lectura o lectura y escritura). Seafile también admite historiales de archivos (o versiones) e instantáneas de bibliotecas que le permiten restaurar fácilmente cualquier archivo o directorio/carpeta en el historial.

Además, el cliente Seafile Drive le permite ampliar el espacio del disco local con la capacidad de almacenamiento masiva en el servidor Seafile simplemente mapeando el espacio de almacenamiento en el servidor Seafile como una unidad virtual en la máquina local.

Este artículo muestra cómo implementar fácilmente Seafile como un servidor de almacenamiento en la nube privada con Nginx como el servicio de proxy inverso y el servidor de base de datos MariaDB en CentOS 8.

  1. Un nuevo servidor de instalación de CentOS 8 con 2 núcleos, 2 GB o más de RAM, 1 GB de intercambio o más y más de 100 GB de espacio de almacenamiento para datos Seafile.

Instalación del software de alojamiento de archivos Seafile en CentOS 8

1. Si está implementando Seafile por primera vez, le recomendamos que utilice un script de instalación automático para implementar fácilmente el servicio Seafile en el servidor utilizando los siguientes comandos.

# cd /root
# wget --no-check-certificate https://raw.githubusercontent.com/haiwen/seafile-server-installer/master/seafile-7.1_centos
# bash seafile-7.1_centos 7.1.0

Después de invocar el script, se le pedirá que elija la edición de Seafile para instalar, seleccione 1 para Community Edition (CE) y presione Enter.

2. Una vez que se complete la instalación, verá el mensaje en la siguiente captura de pantalla, que muestra los detalles/parámetros de la instalación.

El paquete del servidor Seafile se compone de los siguientes componentes:

  1. Servidor Seafile (seaf-server): el principal demonio del servicio de datos para manejar la carga, descarga y sincronización de archivos sin procesar. Escucha en el puerto 8082 de forma predeterminada.
  2. Servidor Ccnet (ccnet-server): el demonio de servicio RPC (llamada a procedimiento remoto) que permite la comunicación entre múltiples componentes internos.
  3. Seahub: el front-end web de Django; funciona con un gunicorn de servidor HTTP Python ligero (de forma predeterminada, Seahub se ejecuta como una aplicación dentro de gunicorn).

3. El directorio de instalación raíz de Seafile es /opt/seafile , puede ver su contenido usando el comando ls.

# cd /opt/seafile/
# ls -lA

4. Además, durante la instalación, el instalador inicia los servicios Nginx, MariaDB, Seafile, Seahub y otros servicios necesarios por ahora, y les permite iniciarse automáticamente después de reiniciar el sistema.

Para ver el estado de cada servicio, ejecute estos comandos (reemplace el estado por detener, iniciar, reiniciar, está habilitado, etc. para realizar la acción correspondiente en un servicio).

# systemctl status nginx
# systemctl status mariadb
# systemctl status seafile
# systemctl status seahub

5. De forma predeterminada, puede acceder a seahub utilizando la dirección seafile.example.com. El archivo de configuración de Seafile para Nginx es /etc/nginx/conf.d/seafile.conf y aquí puede configurar su nombre de dominio como se muestra.

# vi /etc/nginx/conf.d/seafile.conf

Cambiar la línea:

server_name seafile.tecmint.lan;
to
server_name seafile.yourdomain.com;

6. A continuación, reinicie el servicio Nginx para realizar los últimos cambios.

# systemctl restart nginx

7. Si tiene el servicio firewalld en ejecución, abra los protocolos HTTP y HTTPS en el firewall para permitir solicitudes al servidor Nginx en el puerto 80 y 443 respectivamente.

# firewall-cmd --zone=public --permanent –add-service=http
# firewall-cmd --zone=public --permanent –add-service=https
# firewall-cmd --reload

8. Después de configurar todos los servicios de Seafile, para acceder a Seahub, abra un navegador web y apúntelo a la dirección (reemplace el nombre de dominio por lo que estableció en el archivo de configuración de Nginx para Seafile).

http://seafile.tecmint.lan/

9. Espere a que se cargue la interfaz de inicio de sesión de seahub. Luego inicie sesión con las credenciales del usuario administrador creadas por el instalador (ejecute cat /opt/seafile/aio_seafile-server.log para ver el archivo de registro de instalación y obtener las credenciales de inicio de sesión).

# cat /opt/seafile/aio_seafile-server.log

10. Ingrese su correo electrónico y contraseña de administrador de seafile en la siguiente interfaz de inicio de sesión.

11. Una vez que haya iniciado sesión, verá la interfaz de administración principal del usuario administrador de Seahub. Puede usarlo para editar configuraciones; cree, cifre y comparta bibliotecas, y más.

Para habilitar HTTPS para Nginx, consulte esta guía: Cómo proteger Nginx con Let's Encrypt en CentOS 8

Para obtener más información, lea la documentación oficial de Seafile. Y también recuerde compartir sus pensamientos sobre Seafile con nosotros a través del formulario de comentarios a continuación.