Installation de SeaFile (stockage de nuage sécurisé) avec la base de données MySQL dans RHEL / CENTOS / SL 7.x / 6.X

Installation de SeaFile (stockage de nuage sécurisé) avec la base de données MySQL dans RHEL / CENTOS / SL 7.x / 6.X

Filiale est une application avancée de stockage de cloud collaboratif open source rédigé en python avec le partage de fichiers et le support de synchronisation, la collaboration d'équipe et la protection de la confidentialité à l'aide du cryptage côté client. Il est construit comme un fichier multiplateforme de synchronisation avec des clients qui s'exécute sur toutes les principales plates-formes (Linux, Raspberry Pi, Windows, Mac, iPhone et Android) et peut être facilement intégré à des services locaux tels que LDAP et WebDAV ou peut être déployé à l'aide de Advanced Les services réseau et les bases de données comme MySQL, SQLite, PostgreSQL, Memcached, Nginx ou Apache Web servent.

Installer SeaFile à Linux

Ce tutoriel vous guidera sur étape par étape Serveur SeaFile Installation sur RHEL / CENTOS / Scientific Linux 7.x / 6.X déployé avec la base de données MySQL, avec start-up init Scripts pour exécuter le serveur sur le port SeaFile par défaut (8000 / TCP) et le port de transaction HTTP par défaut (80 / TCP), créez les règles de pare-feu nécessaire pour ouvrir les ports requis.

Exigences

  1. Centos minimaux 6.5 Installation avec adresse IP statique.
  2. Base de données MySQL / MARIADB
  3. Python 2.6.5+ ou 2.7
  4. Python-secuptools
  5. Python-simplejson
  6. Imagerie python
  7. Python-mysqldb

Cette procédure d'installation testée sur Centos 6.4 64 bits système, mais peut également être utilisé sur d'autres distributions Linux avec la spécification qui init Les scripts de démarrage diffèrent d'une distribution à une autre.

Étape 1: Installez les modules Python

1. Faites d'abord un système Mise à jour, Installez ensuite tous les modules Python requis en utilisant les commandes suivantes.

# mium Mise à niveau # yum Installer Python-Imaging mysql-python Python-Simplejson Python-SetUptools

2. Si vous utilisez un Debian ou Ubuntu Server Installez tous les modules Python avec les commandes suivantes.

$ sudo apt-get update $ sudo apt-get install python2.7 Python-Settuptools Python-Simplejson I-Imaging Python-Mysqldb

Étape 2: Installer SeaFile Server

3. Une fois que tous les modules Python sont installés, créez un nouvel utilisateur système avec un mot de passe solide qui sera utilisé pour héberger la configuration du serveur SeaFile et toutes les données de son répertoire domestique, puis passer au compte nouvellement utilisé.

# AddUser SeaFile # Passwd SeaFile # Su - SeaFile
Créer un utilisateur SeaFile

4. Ensuite, connectez-vous à la base de données MySQL et créez trois bases de données, une pour chaque composant du serveur SeaFile: serveur CCNET, serveur SeaFile et sehub avec un seul utilisateur pour toutes les bases de données.

$ mysql -u root -p mysql> Créer une base de données 'ccnet-db'; MySQL> Créer une base de données «SeaFile-DB»; MySQL> Créer une base de données «Seahub-DB»; MySQL> Créer l'utilisateur «SeaFile» @ «localhost» identifié par «mot de passe»; mysql> accorder tous les privilèges sur 'ccnet-db'.* à «SeaFile» @ «localhost»; MySQL> accorde tous les privilèges sur «SeaFile-DB».* à «SeaFile» @ «localhost»; mysql> accorder tous les privilèges sur 'Seahub-db'.* à «SeaFile» @ «localhost»; MySQL> Privilèges de rinçage; mysql> exit;
Créer une base de données SeaFile

5. Il est maintenant temps de télécharger et d'installer Serveur SeaFile. Allez sur la page de téléchargement officielle de SeaFile et prenez le dernier .Le goudron Version d'archives Linux pour votre architecture de serveur en utilisant wget Commande, puis extraire à votre utilisateur SeaFile à domicile créé plus tôt et entrez dans le répertoire extrait de SeaFile.

$ wget https: // bitbucket.org / haiwen / seafile / downloads / SeaFile-Server_3.0.4_x86-64.le goudron.gz $ tar xfz SeaFile-Server_3.0.4_x86-64.le goudron.gz $ cd SeaFile-Server_3.0.4 /
Télécharger SeaFile

6. Pour installer SeaFile Server à l'aide de la base de données MySQL Configuration-SEAFILE-MYSQL.shot Script d'initialisation et répondez à toutes les questions en utilisant les options de configuration suivantes, après que le script vérifie l'existence de tous les modules requis Python.

$ ./ Configuration-SEAFILE-MYSQL.shot
  1. Quel est le nom de votre serveur? = Choisissez un nom descriptif (Aucun espace autorisé).
  2. Quelle est l'IP ou le domaine du serveur? = Entrez votre serveur adresse IP ou votre valide nom de domaine.
  3. Quel port souhaitez-vous utiliser pour CCNET Server? = Hit [Entrer] - Laissez-le par défaut - 10001.
  4. Où voulez-vous mettre les données de SeaFile? = Hit [Entrer] - L'emplacement par défaut sera votre $ Home / SeaFile-Data annuaire.
  5. Quel port souhaitez-vous utiliser pour SeaFile Server? = Hit [Entrer] - Laissez-le par défaut - 12001.
Exécutez le script MySQL de SeaFile
  1. Quel port souhaitez-vous utiliser pour SeaFile HttpServer? = Hit [Entrer] - Laissez-le par défaut - 8082.
  2. Veuillez choisir un moyen d'initialiser les bases de données SeaFile: = Choisissez 1 et fournir des informations d'identification MySQL par défaut: localhost, 3306 et mot de passe root.
  3. Entrez le nom de MySQL User of SeaFile: = SeaFile (si vous avez créé un autre nom d'utilisateur, entrez nom d'utilisateur) et le mot de passe utilisateur MySQL de SeaFile.
  4. Sur les bases de données CCNET-Server, SeaFile-Server et SeahubEntrer] clé - par défaut.
Configurer SeaFile pour MySQL Configuration du fichier marin mysql

Une fois que SeaFile Server s'installe avec succès, il générera des informations utiles telles que ce que les ports doivent être ouverts sur votre pare-feu pour permettre une connexion externe et quels scripts à gérer afin de démarrer le serveur.

Confirmation d'installation de SeaFile

Étape 3: Ouvrez le pare-feu et créez le script init de SeaFile

7. Avant de commencer le serveur SeaFile à partir du script local pour un test, passez à racine compte et ouvert iptables Configuration du fichier de pare-feu situé sur / etc / sysconfig / Chemin du système et ajoutez les règles de ligne suivantes avant d'abord REJETER ligne, puis redémarrez les iptables pour appliquer de nouvelles règles.

$ su - root # nano / etc / sysconfig / iptables

Ajoutez les règles suivantes.

-A Input -M State --State New -M TCP -P TCP --DPORT 80 -J Accept -A Input -M State --State New -M TCP -P TCP --DPORT 8000 -J Accept -a Input -M State - State New -M TCP -P TCP --DPORT 8082 -J Accepter -A Entrée -M State --State New -M TCP -P TCP --DPORT 10001 -J Accept -A Entrée -M State --State Nouveau -M TCP -P TCP --DPORT 12001 -J Accepter
Ports ouverts pour le fichier de mer

Redémarrez les iptables pour appliquer les règles en utilisant la commande suivante.

# Service Iptables Redémarrer

NOTE: Si vous avez changé les ports standard de SeaFile sur le processus d'installation, mettez à jour vos règles iptables de pare-feu en conséquence.

8. Il est maintenant temps de tester SeaFile Server. Passez à l'utilisateur de SeaFile et serveur marin répertoire et démarrer le serveur à l'aide filiale.shot et sehub.shot scripts.

La première fois que vous commencez sehub.shot Script, créez un compte administratif pour SeaFile Server à l'aide de votre adresse e-mail et choisissez un mot de passe solide pour le compte d'administration, surtout si vous déployez cette configuration dans un environnement de production.

# Su - SeaFile $ CD SeaFile-Server-Latest / $ ./ File.sh start $ ./ Sehub.SH Start
Démarrer SeaFile Server

9. Une fois le serveur démarré avec succès, ouvrez un navigateur et accédez à l'adresse IP ou au nom de domaine de votre serveur sur le port 8000 Utilisation du protocole HTTP, puis connectez-vous à l'aide de votre compte d'administration créé à l'étape ci-dessus.

http: // system_ip: 8000 ou http: // domain_name: 8000
Écran de connexion SeaFile Tableau de bord

dix. Après les premiers tests de configuration, arrêtez SeaFile Server et créez un init script qui vous aidera à gérer plus facilement l'ensemble du processus, comme tous les autres processus de démon du système Linux.

$ ./ File.shop $ ./ Sehub.sh stop $ su - root # nano / etc / init.D / SeaFile

Ajoutez le contenu suivant à ce sujet init Script - Si SeaFile est installé sur d'autres utilisateurs du système, assurez-vous de mettre à jour les utilisateurs et les chemins en conséquence sur su - $ utilisateur -c lignes.

#!/ bin / sh #chkconfig: 345 99 10 #Description: SeaFile Auto Start-Stop Script. # bibliothèque de fonctions source . / etc / rc.d / init.D / fonctions start () echo "Démarrage du serveur SeaFile…" Su - SeaFile -C "SeaFile-Server-Latest / SeaFile.sh start "su - SeaFile -C" SeaFile-Server-Latest / SeaHub.sh start " stop () echo" Arrêt du procédé SeaFile… "Su - SeaFile -C" SeaFile-Server-Latest / SeaFile.sharm "su - SeaFile -C" SeaFile-Server-Latest / SeaHub.sh stop " redémarrer () echo" Arrêter le procédé SeaFile… "Su - SeaFile -C" SeaFile-Server-Latest / SeaFile.sharm "su - SeaFile -C" SeaFile-Server-Latest / SeaHub.sh stop "echo" Démarrer le serveur SeaFile… "Su - SeaFile -C" SeaFile-Server-LATEST / SEAFILE.sh start "su - SeaFile -C" SeaFile-Server-Latest / SeaHub.sh start " cas" 1 "en démarrage) start ;; stop) stop ;; redémarrer) redémarrer ;; *) echo" Utilisation: 0 $ start stop redémarrer ";; eSac

11. Après init Le fichier a été créé, assurez-vous qu'il a des autorisations d'exécution et gérer le processus en utilisant commencer, arrêt et redémarrage interrupteurs. Vous pouvez maintenant ajouter le service SeaFile sur le démarrage du système en utilisant chkconfig commande.

# chmod + x / etc / init.D / SeaFile # Service SeaFile Start # Service SeaFile Stop # Service SeaFile Redémarrage # Chkconfig SeaFile sur | OFF # chkconfig - list Seafile
Démarrer le service SeaFile Ajouter le service SeaFile au démarrage

12. Par défaut SeaFile Server utilise 8000/ /TCP Port HTTP pour les transactions Web. Si vous souhaitez accéder à SeaFile Server à partir du navigateur sur le port HTTP standard, utilisez ce qui suit init script qui démarre le serveur sur le port 80 (Sachez que le démarrage d'un service sur les ports ci-dessous 1024 nécessite des privilèges racine).

# nano / etc / init.D / SeaFile

Ajoutez le contenu suivant à ce sujet init script pour démarrer SeaFile sur le port HTTP standard. Si SeaFile est installé sur un autre utilisateur du système, assurez-vous de mettre à jour les utilisateurs et les chemins en conséquence sur su - $ utilisateur -c et $ Home lignes.

#!/ bin / sh #chkconfig: 345 99 10 #Description: SeaFile Auto Start-Stop Script. # bibliothèque de fonctions source . / etc / rc.d / init.D / fonctions start () echo "Démarrage du serveur SeaFile…" Su - SeaFile -C "SeaFile-Server-Latest / SeaFile.sh start "## Démarrer sur le port par défaut 80 Http Port ## / Home / SeaFile / SeaFile-Server-LATEST / SEAHUB.sh start 80 stop () echo "Arrêt du procédé SeaFile…" Su - SeaFile -C "SeaFile-Server-Latest / SeaFile.SH STOP "/ Home / SeaFile / SeaFile-Server-Latest / SeaHub.sh stop redémarrer () echo "Arrêter le procédé SeaFile…" Su - SeaFile -C "SeaFile-Server-Latest / SeaFile.SH STOP "/ Home / SeaFile / SeaFile-Server-Latest / SeaHub.sh stop echo "Démarrer le serveur SeaFile…" Su - SeaFile -C "SeaFile-Server-Latest / SeaFile.SH Start "/ Home / SeaFile / SeaFile-Server-Latest / SeaHub.sh start 80 case "1" en démarrage) start ;; stop STOP ;; redémarrer) redémarrer ;; *) Echo "Utilisation: 0 $ start stop redémarrer" ;; ESAC

13. Si vous avez déjà commencé SeaFile sur le port 8000 Assurez-vous que tous les processus sont tués, démarrez le serveur sur le port 80.

# chmod + x / etc / init.D / SeaFile # Service SeaFile Start | Arrêtez | redémarrage

Ouvrez un navigateur et dirigez-le vers l'adresse suivante.

http: // system_ip ou http: // domain_name.TLD
Démarrer le service SeaFile sur le port 80 Panneau de connexion SeaFile

14. Vous pouvez également vérifier sur les ports que Seafile fonctionne en utilisant netstat commande.

# netstat -tlpn
Vérifiez le service SeaFile

C'est ça! SeaFile peut être heureux de remplacer d'autres plates-formes de collaboration et de synchronisation de fichiers cloud comme le public Dropbox, Owncloud, Pydio, Onedrive, etc sur votre organisation, être conçu pour un meilleur travail d'équipe et un contrôle complet sur votre stockage avec une sécurité avancée dans l'espace utilisateur.

Dans mon prochain article, je couvrirai comment installer SeaFile Client sur Linux et Windows Systems et vous montrerai également comment vous connecter à SeaFile Server. Jusque-là, restez à l'écoute de Tecmint et n'oubliez pas de faire vos précieux commentaires.