Seafile è un cloud privato come Dropbox, mega.co.nz e altri. Seafile è basato su Python ed è open source, quindi puoi creare il tuo cloud privato e sarà molto più sicuro.
Seafile supporta le librerie di crittografia che rendono i tuoi dati più sicuri. Per crittografare i file in una libreria, devi impostare una password quando crei la libreria. La password non verrà memorizzata sul cloud Seafile. Quindi anche l'amministratore dei server non può visualizzare i tuoi dati crittografati senza la password.
Questo tutorial mostra l'installazione di Seafile su Ubuntu 16.04.
Prerequisiti
- Un server con 2 GB di RAM
- Ubuntu 16.04 a 64 bit
Installazione di Seafile
Passaggio 1:installa le dipendenze necessarie
Per eseguire l'installazione, il seafile necessita di alcune dipendenze:
- openjdk-8jre
- LibreOffice
- Utilità Popler
- server-mysql
- Python-pip e altri.
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
Installa boto con pip:
pip install boto
Se riscontri un errore nell'impostazione delle impostazioni locali, esegui tutti i comandi seguenti:
export LANGUAGE=en_US.UTF-8
export LANG=en_US.UTF-8
export LC_ALL=en_US.UTF-8
locale-gen en_US.UTF-8
dpkg-riconfigura le localizzazioni
Fase 2:crea un nuovo utente "seafile"
In questo passaggio creeremo un nuovo utente per l'installazione di seafile. Eseguiremo il server seafile come questo utente.
Crea un nuovo utente 'seafile' per l'installazione.
useradd -m -s /bin/bash file di mare
passwd file di mare
Fase 3:scarica ed estrai l'archivio Seafile
Seafile può essere scaricato dal sito ufficiale, scaricalo secondo le tue esigenze. Qui uso Ubuntu 15.04 a 64 bit.
Scarica l'archivio Seafile con wget:
su - seafile
wget wget https://bintray.com/artifact/download/seafile-org/seafile/seafile-server_5.1.4_x86-64.tar.gz
Estrai il seafile-server_5.1.4_x86-64.tar.gz e rinomina la directory in 'seafile-server'.
tar -xzf seafile-server_5.1.4_x86-64.tar.gz
mv seafile-server-5.1.4/ seafile-server/
Quindi la directory per l'installazione di seafile si trova nella home directory dell'utente di seafile.
Fase 4:crea il database
Seafile richiede 3 database:
- server ccnet
- server Seafile
- hub marino
Ora torna all'utente root con "exit", quindi accedi al tuo server mysql.
Crea 3 database con un utente e concedi l'utente a tutti i database.
#Accedi a mysql
mysql -u root -p
#Crea database
crea database ccnet_db set di caratteri ='utf8';
crea database carattere seafile_db set ='utf8';
crea database seahub_db set di caratteri ='utf8';
#Crea utente
crea utente [email protetto] identificato da 'yourpassword';
#Concedi all'utente i database
concedi tutti i privilegi su ccnet_db.* a [email protected] identificato da 'yourpassword';
concedi tutti i privilegi su seafile_db.* a [email protected] identificato by 'yourpassword';
concedi tutti i privilegi su seahub_db.* a [email protected] identificato da 'yourpassword';
privilegi di svuotamento;
Passaggio 5 - Installa Seafile
Accedi all'utente 'seafile' e vai nella directory di installazione 'seafile-server/', da lì esegui il file setup-seafile-mysql.sh.
su - seafile
cd seafile-server/
./setup-seafile-mysql.sh
Basta premere Invio e ti verrà chiesto di:
- Nome server:useremo seafile-server.
- Dominio/IP - cloud.miodominio.co.
- Directory dati Seafile - directory dati predefinita
- Configurazione della porta del server Seafile.
Quindi ti verrà chiesto di configurare il database. Puoi scegliere il numero 2 perché tutti i database sono stati creati nel passaggio 4.
Seafile è installato. Avvia seafile e il server seahub:
./seafile.sh inizio
./seahub.sh inizio
Ti verrà chiesto l'e-mail e la password dell'amministratore per l'e-mail e la password dell'amministratore di seafile.
Se l'utente amministratore è stato creato. Interrompi seafile ora, quindi creeremo un file di servizio per il server seafile:
./seafile.sh stop
./seahub.sh stop
Fase 6:configurazione dei file Seafile e Seahub Service
Successivamente, configureremo i servizi seafile e seahub. Creeremo nuovi file di servizio per il server seafile e seahub.
Come utente root, vai alla directory '/lib/systemd/system/' e crea un nuovo file di servizio seafile 'seafile-server.service' con l'editor vim:
cd /lib/systemd/system/
vim seafile.service
Incolla la configurazione del servizio Seafile di seguito:
[Unità]
Description=Seafile Server
After=network.target mariadb.service
[Servizio]
Type=oneshot
ExecStart=/home/seafile/seafile-server/seafile.sh start
ExecStop=/home/seafile/seafile-server/seafile.sh stop
RemainAfterExit=yes
User=seafile
Group=seafile
[Installa]
WantedBy=multi-user.target
Salva ed esci.
Ora crea un nuovo file di servizio seahub seahub.service:
vim seahub.service
Incolla la configurazione di seguito:
[Unità]
Description=Hub Seafile
After=network.target seafile.target
[Servizio]
Type=oneshot
ExecStart=/home/seafile/seafile-server/seahub.sh start-fastcgi
ExecStop=/home/seafile/seafile-server/seahub.sh stop
RemainAfterExit=yes
User=seafile
Group=seafile
[Installa]
WantedBy=multi-user.target
Salva ed esci.
Ricarica il servizio systemd e avvia seafile e seahub:
systemctl daemon-reload
systemctl start seafile
systemctl start seahub
Assicurati che non ci siano errori e controlla che il server seafile e seahub sia in esecuzione controllando le porte di servizio.
netstat -plntu
Vedrai la porta Seafile 8082 e la porta Seahub 8000.
Passaggio 7 - Installa e configura Nginx come proxy inverso
In questo passaggio, installeremo nginx dal repository di Ubuntu e quindi lo configureremo come un server proxy inverso per il server seafile sulle porte 8000 e 8002.
Installa nginx con questo comando apt-get:
apt-get install nginx -y
Al termine dell'installazione, vai alla directory dell'host virtuale nginx e crea un nuovo file host virtuale cloud.mydomain.conf con vim:
cd /etc/nginx/sites-available/
vim cloud.mydomain.conf
Incolla la configurazione dell'host virtuale di seguito:
server {
listen 80;
server_name cloud.mydomain.co;
proxy_set_header X-Forwarded-For $remote_addr;
# Reverse proxy per seafile
location / {
fastcgi_pass 127.0.0.1:8000;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param br_ script_INFO;
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 server_port $ server_port;
Fastcgi_param server_name $ server_name;
fastcgi_param remote_addr $ remote_addr;
access_log /var/nginx/nginx/seahub.access .log;
error_log /var/log/nginx/seahub.error.log;
veloce cgi_read_timeout 36000;
}
# Reverse Proxy per seahub
location /seafhttp {
rewrite ^/seafhttp(.*)$ $ 1 pausa;
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 QUESTO PERCORSO CON LA TUA DIRECTORY
location /media {
root /home/seafile/seafile-server/seahub;
}
}
Salva ed esci.
Userò 'cloud.mydomain.co' come nome di dominio.
Quindi, abilita il nuovo host virtuale creando un link alla directory "siti abilitati" e riavvia nginx.
Abilita nuovo host virtuale:
ln -s /etc/nginx/sites-available/cloud.mydomain.co
Testare e riavviare il server web nginx.
nginx -t
systemctl riavvia nginx
Fase 8 - Test con il browser Web
Apri il tuo browser cloud.mydomain.co e prova ad accedere con il tuo account amministratore.
Dashboard dell'amministratore di Seafile:
Conclusione
Con l'ampia varietà di applicazioni cloud di oggi, Seafile è una soluzione di cloud privato che può essere utilizzata in questo giorno. Con la funzione di crittografia nella libreria/cartella, puoi rendere i dati più sicuri. E anche facilità di configurazione, semplifica l'implementazione nel tuo server.
Link
- Fiamma marina