In questo tutorial, ti mostreremo come installare e configurare Seafile su Ubuntu 16.04 LTS. Per chi non lo sapesse, Seafile è un software di archiviazione cloud open source. Offre condivisione e sincronizzazione di file per singoli utenti e gruppi, fornisce crittografia lato client e un facile accesso da dispositivi mobili.Si integra facilmente anche con servizi locali come LDAP e WebDAV o può essere implementato utilizzando servizi di rete e database avanzati come MySQL, SQLite , PostgreSQL, Memcached, Nginx o Apache Web Server.
Questo articolo presuppone che tu abbia almeno una conoscenza di base di Linux, sappia come usare la shell e, soprattutto, che ospiti il tuo sito sul tuo VPS. L'installazione è abbastanza semplice e presuppone che tu sono in esecuzione nell'account root, in caso contrario potrebbe essere necessario aggiungere 'sudo
' ai comandi per ottenere i privilegi di root. Ti mostrerò l'installazione passo passo dell'archiviazione cloud sicura open source Seafile su un server Ubuntu 16.04 (Xenial Xerus).
Prerequisiti
- Un server che esegue uno dei seguenti sistemi operativi:Ubuntu 16.04 (Xenial Xerus).
- Si consiglia di utilizzare una nuova installazione del sistema operativo per prevenire potenziali problemi.
- Accesso SSH al server (o semplicemente apri Terminal se sei su un desktop).
- Un
non-root sudo user
o accedere all'root user
. Ti consigliamo di agire comenon-root sudo user
, tuttavia, poiché puoi danneggiare il tuo sistema se non stai attento quando agisci come root.
Installa Seafile su Ubuntu 16.04 LTS Xenial Xerus
Passaggio 1. Innanzitutto, assicurati che tutti i pacchetti di sistema siano aggiornati eseguendo il seguente apt-get
comandi nel terminale.
sudo apt-get update sudo apt-get upgrade
Passaggio 2. Installa il server LEMP (Linux, Nginx, MariaDB, PHP).
È richiesto un server LAMP Ubuntu 16.04. Se non hai installato LEMP, puoi seguire la nostra guida qui. Installa anche tutti i moduli PHP richiesti:
apt-get install php7.0-curl php7.0-gd php7.0-mbstring php7.0-mysql libapache2-mod-php7.0 php7.0-mcrypt php7.0-zip
Installazione dei moduli Python:
apt-get install python2.7 libpython2.7 python-setuptools python-imaging python-ldap python-mysqldb python-memcache python-urllib3
Passaggio 3. Configura il database MariaDB per Seafile.
Per impostazione predefinita, MariaDB non è protetto. Puoi proteggere MariaDB usando mysql_secure_installation
sceneggiatura. Dovresti leggere attentamente e sotto ogni passaggio che imposterà una password di root, rimuoverà gli utenti anonimi, non consentirà l'accesso root remoto e rimuoverà il database di test e l'accesso per proteggere MariaDB.
mysql_secure_installation
Configuralo in questo modo:
- 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
Successivamente, dovremo accedere alla console MariaDB e creare un database per Seafile. Esegui il seguente comando:
mysql -u root -p
Questo ti chiederà una password, quindi inserisci la tua password di root MariaDB e premi Invio. Una volta effettuato l'accesso al server del database, devi creare un database per Installazione Seafile:
MariaDB [(none)]> create database ccnet_db character set = 'utf8'; MariaDB [(none)]> create database seafile_db character set = 'utf8'; MariaDB [(none)]> create database seahub_db character set = 'utf8'; MariaDB [(none)]> create user seacloud@localhost identified by 'password'; MariaDB [(none)]> grant all privileges on ccnet_db.* to seacloud@localhost identified by 'password'; MariaDB [(none)]> grant all privileges on seafile_db.* to seacloud@localhost identified by 'password'; MariaDB [(none)]> grant all privileges on seahub_db.* to seacloud@localhost identified by 'password'; MariaDB [(none)]> flush privileges; MariaDB [(none)]> exit
Passaggio 4. Installazione di Seafile sul server.
Devi scaricare l'ultima versione stabile di Seafile:
wget https://bintray.com/artifact/download/seafile-org/seafile/seafile-server_6.0.6_x86-64.tar.gz
Estrai il tarball nella directory corrente:
tar -xvzf seafile-server_6.0.6_x86-64.tar.gz mv seafile-server_6.0.6 seafile-server
Installa Seafile:
Esegui questo script che creerà i database e le directory richiesti per il server Seafile e risponderai a tutte le domande utilizzando le seguenti opzioni di configurazione, dopo che lo script avrà verificato l'esistenza di tutti i Python moduli richiesti:
./setup-seafile-mysql.sh
Dopo che il server Seafile è stato installato correttamente, genererà alcune informazioni utili come quali porte devono essere aperte sul firewall per consentire la connessione esterna e quali script gestire per avviare il server.
Passaggio 5. Avvio dei servizi Seafile.
Crea uno script di avvio per il server Seafile in questo modo:
nano /lib/systemd/system/seafile.service
Aggiungi le seguenti righe:
[Unit] Description=Seafile Server After=network.target mariadb.service[Service] Type=oneshot ExecStart=/home/seafile/seafile-server/seafile.sh start ExecStop=/home/seafile/seafile-server/seafile.sh stop RemainAfterExit=yes User=seafile Group=seafile[Install] WantedBy=multi-user.target
Salva il file e crea un nuovo file di servizio per seahub:
[Unit] Description=Seafile Hub After=network.target seafile.target[Service] 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[Install] WantedBy=multi-user.target
Ora prova a utilizzare il servizio e il comando per avviare una nuova istanza del server Seafile:
systemctl daemon-reload systemctl start seafile systemctl start seahub
Passaggio 6. Configurazione del server web Nginx per Seafile.
*Nota:un indirizzo IP statico 192.168.77.21 configurato sul tuo server.
Per prima cosa, crea un nuovo file host virtuale con un nome seafile.conf
:
nano /etc/nginx/sites-available/seafile.conf
Aggiungi le seguenti righe:
server { listen 80; server_name 192.168.77.21;proxy_set_header X-Forwarded-For $remote_addr;# Reverse proxy for seafile location / { fastcgi_pass 127.0.0.1:8000; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param PATH_INFO $fastcgi_script_name;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_LENGTH $content_length; fastcgi_param SERVER_ADDR $server_addr; fastcgi_param SERVER_PORT $server_port; fastcgi_param SERVER_NAME $server_name; fastcgi_param REMOTE_ADDR $remote_addr;access_log /var/log/nginx/seahub.access.log; error_log /var/log/nginx/seahub.error.log; fastcgi_read_timeout 36000; }# Reverse Proxy for seahub location /seafhttp { rewrite ^/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; }#CHANGE THIS PATH WITH YOUR OWN DIRECTORY location /media { root /home/seafile/seafile-server/seahub; } }
Salva il file e riavvia Nginx:
systemctl restart nginx
Passaggio 7. Accesso a Seafile.
Lo spazio di archiviazione cloud Seafile sarà disponibile sulla porta HTTP 80 per impostazione predefinita. Apri il tuo browser preferito e vai a http://tuodominio.com o http://192.168. 77.21. Inserisci l'ID e-mail di amministratore e la password per accedere che hai creato al momento dell'installazione. Se stai utilizzando un firewall, apri la porta 8000 per abilitare l'accesso al pannello di controllo.
Congratulazioni! Hai installato con successo Seafile. Grazie per aver utilizzato questo tutorial per l'installazione dell'archiviazione cloud sicura open source Seafile sul sistema Ubuntu 16.04 LTS (Xenial Xerus). Per ulteriore aiuto o informazioni utili, ti consiglio di controllare il sito ufficiale di Seafile.