GNU/Linux >> Tutoriales Linux >  >> Linux

Instalación de Seafile 6.3.2 dentro de ISPConfig 3.1

Seafile es un sistema de almacenamiento de archivos basado en la nube de código abierto similar a Dropbox &Box. La diferencia es que Seafile se puede implementar en el propio sistema del cliente. Esto proporciona un mayor factor de seguridad ya que las contraseñas solo se intercambian entre el cliente que configura el sistema y sus propios usuarios en lugar de una empresa de alojamiento en la nube corporativa.


Hay algunos tutoriales de configuración del servidor Seafile para ISPConfig, pero ninguno que no requiera una buena mayoría de la edición de los archivos que realmente deberían dejarse solos según las recomendaciones del desarrollador de ISPConfig. Si bien esta configuración está escrita para Ubuntu 18.04 LTS e ISPConfig 3, se puede seguir para otras distribuciones. Esta solución funciona para mí, pero no se expresa ni implica ninguna garantía.

Se supone que el lector desea implementar Seafile usando MySQL y Apache (también https). También se supone que puede usar funcionalmente ISPConfig, ya que este no es un tutorial de ISPConfig.

1 sitio web de configuración

Abra su panel de control de alojamiento ISPConfig, haga clic en la pestaña Sitios y cree un nuevo sitio web. Deberá asegurarse de seleccionar Ninguno para Subdominio automático, SSL, Let's Encrypt SSL y Fast-CGI para PHP. Si bien técnicamente puede usar un sitio web existente, crear uno nuevo funciona mejor, ya que nos permite mantener todos los archivos en la nube separados de otros sitios. Esto también es necesario para usar el panel ISPConfig para cambios de configuración.

En el panel de configuración del sitio web, haga clic en la pestaña Opciones e inserte lo siguiente en la sección Directivas de Apache:

Alias /media /var/www/seafile.myseafile.com/private/seafile/seafile-server-latest/seahub/media

RewriteEngine On

<Location /media>
Require all granted
</Location>

# seafile httpserver
#
ProxyPass /seafhttp http://127.0.0.1:8082
ProxyPassReverse /seafhttp http://127.0.0.1:8082
RewriteRule ^/seafhttp - [QSA,L]
#
# seahub # SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1 ProxyPass / http://127.0.0.1:8000/ ProxyPassReverse / http://127.0.0.1:8000/


También debe crear un usuario shell para este sitio, ya que será necesario en breve.

2 Crear bases de datos

Desde el panel Sitios en ISPConfig, seleccione Usuario de base de datos y Agregar nuevo usuario. Cree un solo usuario por cliente que administrará las bases de datos de archivos marinos de ese cliente.




Después de crear el usuario de la base de datos, haga clic en Bases de datos y Agregar nueva base de datos. Deberá agregar tres bases de datos separadas: ccnetdb, seafiledb, seahubdb



3 Descargar e instalar el software Seafile

Hay algunos paquetes requeridos que necesitamos instalar. SSH en su servidor con un usuario que tenga suficientes permisos para instalar software.

apt-get install python2.7 python-setuptools python-simplejson python-pil python-mysqldb python-flup

Prefiero que todos mis servidores se ejecuten dentro del directorio privado en lugar del directorio web, por lo que lo configuraremos como tal. SSH en el servidor con el nombre de usuario que creamos arriba.

cd private
mkdir seafile
cd seafile

wget https://download.seadrive.org/seafile-server_6.3.2_x86-64.tar.gz
    or for 32bit
wget https://download.seadrive.org/seafile-server_6.2.5_i386.tar.gz

tar zxvf seafile-server_6.3.2_x86-64.tar.gz
mkdir installed
mv seafile-server_* installed

cd seafile-server-*
./setup-seafile-mysql.sh

En este punto, deberá responder las preguntas solicitadas en relación con su sistema e instalación. Cuando llegue a la sección titulada Por favor, elija una forma de inicializar las bases de datos de archivos marinos, deberá seleccionar 2 e ingresar la información de la base de datos desde su configuración de ISPConfig.

4 Ejecución inicial

Es hora de iniciar seafile y asegurarse de que la configuración inicial funcione.

./seafile.sh start
./seahub.sh start

Después de iniciar los servicios, abra su navegador web y navegue hasta la dirección del sitio web que creó anteriormente con el puerto 8000.

http://192.168.1.111:8000/

5 Configuración de Apache

Ahora modifique la URL_SERVICIO en /path/to/seafile-server/ccnet/ccnet.conf

SERVICE_URL = https://www.myseafile.com

También necesitaremos modificar FILE_SERVER_ROOT en /path/to/seafile-server/seahub_settings.py

FILE_SERVER_ROOT = 'https://www.myseafile.com/seafhttp'

Reinicie Apache.

sudo service apache2 restart

Reinicie los servicios de Seafile.

./seafile.sh start
./seahub.sh start

6 Iniciar servicios automáticamente 

Dado que el objetivo aquí es mantener todo contenido con ISPConfig, en lugar de crear un servicio de inicio, agregaremos el script seafile a los trabajos cron de los usuarios. Naturalmente, deberá asegurarse de que el cliente tenga la capacidad de agregar trabajos cron completos.

Cree un archivo de inicio:

cd ~/private/seafile
touch startSeafile.sh
chmod +x startSeafile.sh

Pegue el siguiente código en el script startSeafile.sh:

#!/bin/bash

# Change the value of "seafile_dir" to your path of seafile installation
seafile_dir=/var/www/clients/client1/web2/private/seafile
script_path=${seafile_dir}/seafile-server-latest
seafile_init_log=${seafile_dir}/logs/seafile.init.log
seahub_init_log=${seafile_dir}/logs/seahub.init.log

## Sleep command is necessary to prevent MYSQL errors if
## this script runs before MYSQL is fully operational
sleep 60 &
wait %1

case "$1" in
start)
${script_path}/seafile.sh start >> ${seafile_init_log} &
wait %1
${script_path}/seahub.sh start >> ${seahub_init_log} &
wait %1
;;
restart)
${script_path}/seafile.sh restart >> ${seafile_init_log} &
wait %1
${script_path}/seahub.sh restart >> ${seahub_init_log} &
wait %1
;;
stop)
${script_path}/seafile.sh $1 >> ${seafile_init_log} &
${script_path}/seahub.sh $1 >> ${seahub_init_log}
;;
*)
echo "Usage: /etc/init.d/seafile {start|stop|restart}"
exit 1
;;
esac


Para asegurarse de que los archivos cron se escriban correctamente, hay algunas cosas que deben verificarse. Haga clic en Cliente -> [su cliente] -> Límites. Asegúrese de que los límites de trabajo de Cron estén configurados en Cron completo con 0 retrasos entre ejecuciones. Después de eso, solo tendrá que agregar el único trabajo cron startServer.sh en la sección Comandos para ejecutar de ISPConfig.

/var/www/clients/client1/web42/private/seafile/startSeafile.sh iniciar





¡Eso es!

Enlaces

  • ISPConfig
  • Seafile

Linux
  1. Instalación de VirtualBox 4.2 en Linux Mint 14

  2. Sin lista de tipos en ISPConfig 3.1.11

  3. Debian:¿es posible determinar qué hay dentro del paquete Debian sin instalarlo?

  4. Instalación de Wordpress en un servidor que ejecuta ISPconfig 2.x

  5. Instalación de Linux Mint Cinnamon en una máquina virtual

Actualización de ISPConfig 3.1 a ISPConfig 3.2

Instalación de Elgg en un sistema ISPConfig 3

Instalación de OpenVZ + Gestión de máquinas virtuales a través de ISPConfig 3 (Debian 6.0)

¿Vale la pena instalar el nuevo Ubuntu 18.10?

¿Cómo instalar ISPConfig en Debian 10?

Instalación de Ubuntu en su computadora portátil o PC