Seafile es una nube privada como Dropbox, mega.co.nz y otros. Seafile está basado en python y es de código abierto, por lo que puedes crear tu propia nube privada y será mucho más seguro.
Seafile admite bibliotecas de cifrado que hacen que sus datos estén más seguros. Para cifrar archivos en una biblioteca, debe establecer una contraseña cuando crea la biblioteca. La contraseña no se almacenará en la nube de Seafile. Por lo tanto, incluso el administrador de los servidores no puede ver sus datos cifrados sin la contraseña.
Este tutorial muestra la instalación de Seafile en Ubuntu 16.04.
Requisitos
- Un servidor con 2 GB de RAM
- Ubuntu 16.04 de 64 bits
Instalando Seafile
Paso 1:instalar las dependencias necesarias
Para realizar la instalación, el archivo marino necesita algunas dependencias:
- openjdk-8jre
- LibreOffice
- Utilidades de Popler
- servidor mysql
- Python-pip y otros.
apt-get install openjdk-8-jre poppler-utils libreoffice libreoffice-script-provider-python libpython2.7 python-pip mysql-server python-setuptools python-imaging python-mysqldb python-memcache ttf-wqy-microhei ttf -wqy-zenhei xfonts-wqy python-pip
Instalar boto con pip:
pip instalar boto
Si tiene un error sobre la configuración regional, ejecute todos los comandos a continuación:
exportar LANGUAGE=en_US.UTF-8
exportar LANG=en_US.UTF-8
exportar LC_ALL=en_US.UTF-8
locale-gen en_US.UTF-8
dpkg-reconfigure locales
Paso 2:crear un nuevo usuario de "seafile"
En este paso, crearemos un nuevo usuario para la instalación de Seafile. Ejecutaremos el servidor Seafile como este usuario.
Cree un nuevo usuario 'seafile' para la instalación.
useradd -m -s /bin/bash seafile
contraseña seafile
Paso 3:descargue y extraiga el archivo Seafile
Seafile se puede descargar desde el sitio oficial, descárguelo según sus necesidades. Aquí uso Ubuntu 15.04 de 64 bits.
Descargue el archivo Seafile con wget:
su - seafile
wget wget https://bintray.com/artifact/download/seafile-org/seafile/seafile-server_5.1.4_x86-64.tar.gz
Extraiga seafile-server_5.1.4_x86-64.tar.gz y cambie el nombre del directorio a 'seafile-server'.
tar -xzf seafile-server_5.1.4_x86-64.tar.gz
mv seafile-server-5.1.4/seafile-server/
Entonces, el directorio para la instalación de seafile está en el directorio de inicio del usuario de seafile.
Paso 4 - Crear la base de datos
Seafile requiere 3 bases de datos:
- servidor ccnet
- servidor de archivos marinos
- centro marino
Ahora regrese al usuario raíz con "salir", luego inicie sesión en su servidor mysql.
Cree 3 bases de datos con un usuario y otorgue al usuario todas las bases de datos.
#Iniciar sesión en mysql
mysql -u root -p
#Crear base de datos
crear base de datos ccnet_db juego de caracteres ='utf8';
crear base de datos seafile_db carácter set ='utf8';
crear base de datos seahub_db conjunto de caracteres ='utf8';
#Crear usuario
crear usuario [email protected] identificado por 'yourpassword';
#Otorgar usuario a las bases de datos
otorgar todos los privilegios en ccnet_db.* a [email protected] identificado por 'su contraseña';
otorgar todos los privilegios en seafile_db.* a [email protected] identificado por 'tucontraseña';
otorgar todos los privilegios en seahub_db.* a [email protected] identificado por 'tucontraseña';
privilegios de vaciado;
Paso 5:instalar Seafile
Inicie sesión en el usuario 'seafile' y vaya al directorio de instalación 'seafile-server/', allí ejecute el archivo setup-seafile-mysql.sh.
su - seafile
cd seafile-server/
./setup-seafile-mysql.sh
Simplemente presione Entrar y se le preguntará acerca de:
- Nombre del servidor:usaremos seafile-server.
- Dominio/IP - cloud.mydomain.co.
- Directorio de datos de Seafile:directorio de datos predeterminado
- Configuración del puerto del servidor Seafile.
Luego se le pedirá la configuración de la base de datos. Puede elegir el número 2 porque todas las bases de datos se crearon en el paso 4.
Seafile está instalado. Inicie seafile y el servidor seahub:
./seafile.sh inicio
./seahub.sh inicio
Se le preguntará sobre el correo electrónico y la contraseña del administrador para el correo electrónico y la contraseña del administrador de Seafile.
Si se ha creado el usuario administrador. Detenga seafile ahora, a continuación crearemos un archivo de servicio para el servidor seafile:
./seafile.sh detener
./seahub.sh detener
Paso 6:configurar los archivos de Seafile y Seahub Service
A continuación, configuraremos los servicios seafile y seahub. Crearemos nuevos archivos de servicio para el servidor seafile y seahub.
Como usuario root, vaya al directorio '/lib/systemd/system/' y cree un nuevo archivo de servicio seafile 'seafile-server.service' con el editor vim:
cd /lib/systemd/system/
vim seafile.servicio
Pegue la configuración del servicio Seafile a continuación:
[Unidad]
Descripción=Seafile Server
Después=network.target mariadb.service
[Servicio]
Type=oneshot
ExecStart=/home/seafile/seafile-server/seafile.sh start
ExecStop=/home/seafile/seafile-server/seafile.sh stop
RemainAfterExit=yes
User=seafile
Grupo=seafile
[Instalar]
BuscadoPor=multi-usuario.objetivo
Guardar y salir.
Ahora cree un nuevo archivo de servicio seahub seahub.service:
vim seahub.servicio
Pegue la configuración a continuación:
[Unidad]
Descripción=Seafile Hub
Después=network.target seafile.target
[Servicio]
Tipo=oneshot
ExecStart=/home/seafile/seafile-server/seahub.sh start-fastcgi
ExecStop=/home/seafile/seafile-server/seahub.sh stop
RemainAfterExit=yes
User=seafile
Group=seafile
[Instalar]
WantedBy=multi-user.target
Guardar y salir.
Vuelva a cargar el servicio systemd e inicie seafile y seahub:
systemctl daemon-reload
systemctl iniciar seafile
systemctl iniciar seahub
Asegúrese de que no haya ningún error y compruebe que el servidor seafile y seahub se esté ejecutando comprobando los puertos de servicio.
netstat-plntu
Verá el puerto marítimo 8082 y el puerto marítimo 8000.
Paso 7:instalar y configurar Nginx como proxy inverso
En este paso, instalaremos nginx desde el repositorio de Ubuntu y luego lo configuraremos como un servidor proxy inverso para seafile-server en los puertos 8000 y 8002.
Instale nginx con este comando apt-get:
apt-get install nginx -y
Cuando finalice la instalación, vaya al directorio de host virtual nginx y cree un nuevo archivo de host virtual cloud.mydomain.conf con vim:
cd /etc/nginx/sites-disponible/
vim cloud.mydomain.conf
Pegue la configuración del host virtual a continuación:
servidor {
escucha 80;
nombre_servidor cloud.mydomain.co;
proxy_set_header X-Forwarded-For $remote_addr;
# proxy inverso para archivo marino
ubicación / {
fastcgi_pass 127.0.0.1:8000;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_fast;fastcgi_param server_protocol $ server_protocol;
fastcgi_param query_string $ query_string;
fastcgi_param request_method $ request_method;
fastcgi_param content_type $ content_type;
fastcgi_param content con contenido; Server_addr $ server_addr;
fastcgi_param server_port $ server_port;
fastcgi_param server_name $ server_name;
fastcgi_param remoto_addr $ rlood_addr;
access_log /var/log/nginx/seahub.access .log;
error_log /var/log/nginx/seahub.error.log;
rápido cgi_read_timeout 36000;
}
# Proxy inverso para seahub
ubicación /seafhttp {
reescribir ^/seafhttp(.*)$ $1 break;
proxy_pass http://127.0.0.1:8082;
client_max_body_size 0;
proxy_connect_timeout 36000s;
proxy_read_timeout 36000s;
proxy_send_timeout 36000s;
send_timeout 36000s;
>#CAMBIA ESTA RUTA CON TU PROPIO DIRECTORIO
ubicación /medios {
root /home/seafile/seafile-server/seahub;
}
}Guardar y salir.
Usaré 'cloud.mydomain.co' como nombre de dominio.
A continuación, habilite el nuevo host virtual creando un enlace al directorio 'habilitado para sitios' y reinicie nginx.
Habilitar nuevo host virtual:
ln -s /etc/nginx/sitios-disponibles/cloud.mydomain.coPruebe y reinicie el servidor web nginx.
nginx -t
systemctl reiniciar nginx
Paso 8 - Prueba con el navegador web
Abra su navegador cloud.mydomain.co e intente iniciar sesión con su cuenta de administrador.
Panel de administración de Seafile:
Conclusión
Con la amplia variedad de aplicaciones en la nube de hoy, Seafile es una solución de nube privada que es buena para usar en este día. Con la función de cifrado en la biblioteca/carpeta, puede hacer que los datos sean más seguros. Y también facilidad para configurarlo, que sea fácil de implementar en su servidor.
Enlaces
- Seafile