En este tutorial, le mostraremos cómo instalar Seafile en Ubuntu 20.04 LTS. Para aquellos de ustedes que no lo sabían, Seafile es una sincronización de archivos autohospedada de código abierto que comparte la solución con alto rendimiento y confiabilidad. Seafile le permite colocar archivos en su propio servidor y permitir que otros y sus diferentes dispositivos se sincronicen y accedan a él. Seafile está escrito en lenguaje de programación C y Python y proporciona funciones similares como Dropbox, mega. co.nz y otros.
Este artículo asume que tiene al menos conocimientos básicos de Linux, sabe cómo usar el shell y, lo que es más importante, aloja su sitio en su propio VPS. La instalación es bastante simple y asume que se están ejecutando en la cuenta raíz, si no, es posible que deba agregar 'sudo
' a los comandos para obtener privilegios de root. Le mostraré la instalación paso a paso del sistema de almacenamiento en la nube y alojamiento de archivos de código abierto Seafile en Ubuntu 20.04 (Focal Fossa). Puede seguir las mismas instrucciones para Ubuntu 18.04, 16.04 y cualquier otra distribución basada en Debian como Linux Mint.
Requisitos previos
- Un servidor que ejecuta uno de los siguientes sistemas operativos:Ubuntu 20.04, 18.04, 16.04 y cualquier otra distribución basada en Debian como Linux Mint.
- Se recomienda que utilice una instalación de sistema operativo nueva para evitar posibles problemas.
- Acceso SSH al servidor (o simplemente abra Terminal si está en una computadora de escritorio).
- Un
non-root sudo user
o acceder alroot user
. Recomendamos actuar como unnon-root sudo user
, sin embargo, puede dañar su sistema si no tiene cuidado al actuar como root.
Instalar Seafile en Ubuntu 20.04 LTS Focal Fossa
Paso 1. Primero, asegúrese de que todos los paquetes de su sistema estén actualizados ejecutando el siguiente apt
comandos en la terminal.
sudo apt update sudo apt upgrade
Paso 2. Paso 2. Instale las dependencias requeridas.
Ahora se requiere instalar todas las dependencias necesarias para la instalación del servidor Seafile usando apt
comandos a continuación:
sudo apt install python3 python3-{pip,pil,ldap,urllib3,setuptools,mysqldb,memcache,requests} sudo apt install ffmpeg memcached libmemcached-dev sudo pip3 install --upgrade pip sudo pip3 install --timeout=3600 Pillow pylibmc captcha jinja2 sqlalchemy==1.4.3 sudo pip3 install --timeout=3600 django-pylibmc django-simple-captcha python3-ldap mysqlclient
Paso 3. Instalación de la pila LEMP.
Se requiere un servidor Ubuntu 20.04 LEMP. Si no tiene LEMP instalado, puede seguir nuestra guía aquí.
Paso 4. Configuración de MariaDB para.
De forma predeterminada, MariaDB no está reforzado. Puede proteger MariaDB utilizando mysql_secure_installation
texto. debe leer y debajo de cada paso cuidadosamente que establecerá una contraseña de root, eliminará usuarios anónimos, no permitirá el inicio de sesión de root remoto y eliminará la base de datos de prueba y accederá a MariaDB segura:
mysql_secure_installation
Configúralo así:
- Set root password? [Y/n] y - Remove anonymous users? [Y/n] y - Disallow root login remotely? [Y/n] y - Remove test database and access to it? [Y/n] y - Reload privilege tables now? [Y/n] y
A continuación, debemos iniciar sesión en la consola de MariaDB y crear una base de datos para Seafile. Ejecute el siguiente comando:
mysql -u root -p
Esto le pedirá una contraseña, así que ingrese su contraseña raíz de MariaDB y presione Enter. Crearemos una base de datos para cada uno de estos componentes del servidor.
MariaDB [(none)]> CREATE DATABASE seafile_server; MariaDB [(none)]> CREATE DATABASE ccnet_server; MariaDB [(none)]> CREATE DATABASE seahub_server;
Luego, cree un usuario de base de datos y otorgue privilegios para las bases de datos creadas:
MariaDB [(none)]> CREATE USER 'seafile'@'localhost' IDENTIFIED BY 'Your-Strong-Password'; MariaDB [(none)]> GRANT ALL ON seafile_server.* TO 'seafile'@'localhost'; MariaDB [(none)]> GRANT ALL ON ccnet_server.* TO 'seafile'@'localhost'; MariaDB [(none)]> GRANT ALL ON seahub_server.* TO 'seafile'@'localhost'; MariaDB [(none)]> QUIT;
Paso 5. Instalación de Seafile en Ubuntu 20.04.
De forma predeterminada, Seafile no está disponible en el repositorio base de Ubuntu 20.04. Ahora ejecute el siguiente comando a continuación para descargar la última versión de Seafile desde la página oficial:
wget https://s3.eu-central-1.amazonaws.com/download.seadrive.org/seafile-server_9.0.4_x86-64.tar.gz
Luego, extraiga el archivo descargado:
sudo tar -xvf seafile-server_9.0.4_x86-64.tar.gz -C /srv sudo mv /srv/seafile-server_9.0.4_x86-64 /srv/seafile
Después de eso, ejecute el script de configuración:
cd /srv/seafile/ sudo ./setup-seafile-mysql.sh
Durante la instalación, se le pedirá que responda algunas preguntas sobre su servidor (nombre, dirección, puerto, etc.). También se le preguntará acerca de cómo inicializar un base de datos.
Una vez completada la instalación, ahora inicie el servidor Seafile usando los siguientes comandos:
cd /srv/seafile sudo ./seafile.sh start
Luego inicie el servicio de interfaz web Seahub (Django):
sudo ./seahub.sh start
Paso 6. Cree el servicio Seafile Systemd.
Ahora configuramos seafile y seahub como un systemd
servicio:
sudo tee /etc/systemd/system/seafile.service<<EOF [Unit] Description=Seafile After= mysql.service After=network.target [Service] Type=forking ExecStart=/srv/seafile-server-latest/seafile.sh start ExecStop=/srv/seafile-server-latest/seafile.sh stop [Install] WantedBy=multi-user.target EOF
Además, creamos uno para Seahub:
sudo tee /etc/systemd/system/seahub.service<<EOF [Unit] Description=Seafile After= mysql.service After=network.target [Service] Type=forking ExecStart=/srv/seafile-server-latest/seahub.sh start ExecStop=/srv/seafile-server-latest/seahub.sh stop [Install] WantedBy=multi-user.target EOF
Guarde y cierre el archivo, luego vuelva a cargar el systemd
administrador para que se produzcan los cambios:
sudo systemctl daemon-reload sudo systemctl start seafile && sudo systemctl enable seafile sudo systemctl start seahub && sudo systemctl enable seahub
Paso 7. Configure Nginx como proxy inverso.
Ahora creamos un nuevo archivo de configuración en /etc/nginx/conf.d/seafile.conf
con los siguientes comandos:
server { listen 80; listen [::]:80; server_name seafile.your-domain.com; autoindex off; client_max_body_size 100M; access_log /var/log/nginx/seafile.com.access.log; error_log /var/log/nginx/seafile.com.error.log; location / { proxy_pass http://127.0.0.1:8000; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Host $server_name; proxy_read_timeout 1200s; } location /seafhttp { rewrite ^/seafhttp(.*)$ $1 break; proxy_pass http://127.0.0.1:8082; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_connect_timeout 36000s; proxy_read_timeout 36000s; proxy_send_timeout 36000s; send_timeout 36000s; } location /media { root /srv/seafile-server-latest/seahub; } }
Guarde y cierre el archivo, luego reinicie el servidor web Nginx para que se realicen los cambios:
nginx -t sudo systemctl restart nginx
Paso 8. Configure el cortafuegos.
De manera predeterminada, el firewall UFW está habilitado en Ubuntu. Dependiendo de su archivo de configuración de host virtual Nginx, abra los puertos 80 y 443 para permitir el tráfico HTTP y HTTPS:
sudo ufw allow 80/tcp sudo ufw allow 443/tcp sudo ufw reload
Paso 9. Acceso a la interfaz web de Seafile.
Una vez instalado correctamente, abra su navegador web y acceda a la interfaz web de Seafile usando la URL http://seafile.your-domain.com
. Debería ver la siguiente página:
¡Felicitaciones! Ha instalado correctamente Seafile. Gracias por usar este tutorial para instalar el sistema de almacenamiento en la nube y alojamiento de archivos de código abierto Seafile en el sistema Ubuntu 20.04 LTS Focal Fossa. Para obtener ayuda adicional o información útil , le recomendamos que consulte el sitio web oficial de Seafile.