15/01/2025

Services

Serveur WebServices

Serveur web mutualisé (4/5) : Problème de sécurité

I. Présentation Dans nos précédents billets sur ce sujet, nous avons vu ce qu’était un serveur web mutualisé, leurs avantages et leurs limites et nous avons également vu leur architecture et fonctionnement général au niveau technique. En fin de la construction de cette architecture, nous avons été confronté à un problème de droit qui nous a forcé à élargir un peu plus les droits par défaut des répertoires web des clients. A travers ce post je vais montrer en quoi cet ajout de droit pose un problème majeur au sein des serveurs web mutualisés utilisant le couple habituel Apache/PHP, ce qui est le cas de la plupart d’entre-eux ! II. États des lieux Nous savons donc que pour fonctionner, les utilisateurs uploads leurs fichiers via un service FTP qui leur est dédié est par lequel ils accèdent à leur espace web qui est chrooté. Pour que ces fichiers soient immédiatement lisibles et traités par Apache via HTTP, nous sommes contraints

Lire cet article
Serveur WebServices

Serveur web mutualisé (3/5) : Architecture basique

I. Présentation Dans de précédents billets (concept et limites), nous avons vu en quoi un serveur web mutualisé consistait et quelles étaient leurs limités générales. Nous allons ici aborder un post un peu plus technique où nous allons, pour mieux les comprendre, monter une architecture système qui nous permettrait de faire tourner un serveur web mutualisé (aussi basique soit il). Je ne prétends pas ici révolutionner le serveur web mutualisé mais au contraire montrer de quoi il est, en théorie, composé et faire en sorte que les services que nous allons installer permettent un fonctionnement global pouvant être assimilé à celui d’un serveur web mutualisé. II. De quoi a t-on besoin ? Comme nous l’avons résumé dans le précédent billet sur le sujet, nous avons vu que le serveur web mutualisé a besoin de plusieurs services basiques pour être considéré en tant que tel : Chaque accès utilisateurs ayant alors besoin d’un accès au FTP, au minimum une base de

Lire cet article
Services

Mise en place d’une Seedbox avec Transmission Daemon

I. Présentation Dans ce tutoriel, nous allons voir comment mettre en place une Seedbox avec Transmission Daemon. Tout d’abord une Seedbox est une machine dédiée au téléchargement BitTorrent. Il est évident que je ne cautionne pas le téléchargement illégal de fichiers. Mais de nombreux logiciels, contenus libres, qui sont sous licence libre et sous Licence de Libre Diffusion (LLD). II. Téléchargement et installation L’installation de Transmission Daemon se fait directement depuis les dépôts. Dans un premier temps, nous allons mettre à jour la liste des paquets disponibles : aptitude update Puis, nous allons téléchargeons le paquet : aptitude install transmission-daemon Une fois installé, nous allons passer à la partie configuration. A. Configuration Avant de configurer le fichier de configuration de Transmission, on va stopper le service, sinon vos modifications serons écrasées : /etc/init.d/transmission-daemon stop Avant de modifier le fichier, nous allons créer le dossier où seront stockés les fichiers téléchargés par Transmission Remote: mkdir /home/download mkdir /home/download/temp chmod –R 771

Lire cet article
CloudServices

Installation de Pydio sous Debian/ubuntu

I. Présentation Dans ce tutoriel, nous allons voir l’installation de Pydio (Put Your Data In Orbit) qui est en fait la nouvelle version d’Ajaxplorer, le successeur en quelque sorte. Pydio est une alternative française et Open Source à des solutions comme Dropbox, Drive, ou encore ownCloud. Nous traiterons ici du cas de l’installation sous une machine Debian/ Ubuntu. II. Téléchargement et installation Nous allons ici détailler la procédure d’installation depuis les dépôts unix (via les commandes apt-get ) et également depuis les sources (un fichier archive ZIP ou TAR.GZ). Libre à vous d’utiliser la méthode qui vous convient le plus. Aucun pré-requis mis à part une machine fonctionnelle disponible via le réseau n’est à respecter pour le moment. L’installation des outils faisant tourner la base du système Pydio sera détaillée au fur et à mesure A. Depuis les dépôts Nous allons commencer par l’installation depuis les dépôts (Debian et RHEL). Sous Debian, il faut commencer par ajouter la ligne indiquant

Lire cet article
Services

SyncDrive : Un client Google Drive pour Ubuntu

I. Présentation Pour le moment, aucun client Google Drive officiel n’est disponible pour Ubuntu, ou une quelconque autre distribution Linux. Ceci oblige à passer par des solutions alternatives. Dans ce tutoriel, nous verrons SyncDrive, une application basée sur Grive et très simple d’utilisation, permettant d’ajouter jusqu’à 2 comptes Google sur une même machine. Attaquons nous à l’installation de l’application pour ensuite passer à la partie configuration en mettant en place la liaison entre SyncDrive et votre compte Google. II. Installation de SyncDrive Pour ma part, j’utilise une machine virtuelle sous Ubuntu 13.10 fraîchement installée. Je vous invite à ouvrir un Terminal et à saisir les 3 commandes suivantes (en tant que root ou ajouter « sudo » devant chaque commande) : # Ajout du repository ppa de NoobsLab # Appuyez sur Entrée pendant l’ajout pour récupérer la clé add-apt-repository ppa:noobslab/pear-apps # Mise à jour de la liste des paquets apt-get update # Installer SyncDrive apt-get install syncdrive Une fois l’installation terminée, passez

Lire cet article
Services

Redondance de serveurs DHCP sous Linux

I. Présentation Le service DHCP est très répandu dans les entreprises afin de distribuer une configuration réseau dynamiquement aux clients du réseau. Ce service permet une souplesse dans l’administration et la gestion des adresses IP au sein d’un réseau d’entreprise. Toutefois, il se peut que pour une raison ou pour une autre le serveur DHCP de votre entreprise tombe en panne, et là c’est le drame, vos clients n’obtiennent plus d’adresses IP dynamiquement et donc ne peuvent pas se connecter au réseau. Pour parer à cela, on peut mettre en place de la redondance de serveurs DHCP. La redondance consiste à avoir deux serveurs DHCP, ainsi dans le cas où il y en a un qui tombe en panne, le second peut assurer la continuité de service. La redondance de DHCP assure deux fonctionnalités : – Répartition de la charge / loadbalancing : Les deux serveurs sont actifs, chacun d’entre eux gère une partie de la plage d’adresses devant être

Lire cet article
Commandes et SystèmeNetfilterServices

Débannir une IP bannie via iptables par Fail2ban

I. Présentation Dans un précédent tutoriel, nous avons vu comment fonctionnait Fail2ban et comment l’installer et le configurer pour une utilisation basique. Nous savons que Fail2Ban peut, entre autre, bannir des IP selon certains critères via le manager de pare-feu Linux. Il peut arriver que nous souhaitions dé-bannir une IP qui a été bannie par Fail2ban en utilisant iptables. C’est ce que nous allons voir ici. II. Afficher l’IP bannie dans iptables La première étape pour dé-bannir une IP bannie via iptables est de repérer la ligne à laquelle elle se trouve dans iptables. On utilise pour cela la ligne de commande suivante : iptables -L Nous aurons alors la sortie suivante : On voit donc plusieurs IP dans la chaine « fail2ban-ssh » qui est le nom par défaut de la chaine où sont indiquées l’état et les IP bannies. On repère donc la ligne sur laquelle se trouve notre IP (par exemple la ligne 2 pour l’IP « 192.168.21.10 » puis ont

Lire cet article
Commandes et SystèmeServices

Désactiver SELinux sous les distributions Linux

I. Présentation Security Enhanced Linux (SELinux) est un LSM (Module de sécurité Linux) qui à pour fonction de définir une politique de contrôle d’accès plus fine en plus des permissions basiques Linux aux éléments issus d’un système. II. Pourquoi désactiver SELinux SELinux peut, sur des configurations poussées ou spécifiques, devenir bloquant. Il est le plus souvent à activer lorsqu’on le gère totalement ou sur des environnements finaux après l’installation des éléments/services du serveur. C’est un élément de sécurité fiable mais qui n’est pas une nécessité propre au système bien qu’il soit présent par défaut sur certaine distribution comme CentOS. III. Désactivation temporaire Pour désactiver SELinux temporairement, dans le cadre d’un test par exemple : setenforce 0 L’action de cette commande propre à SELinux est de mettre la valeur du fichier /selinux/enforce à 0. Cela signifie qu’il est en mode « permissive », soit en écoute des évènements et en écriture de logs mais il ne bloquera aucun processus et aucune commande. On

Lire cet article
Commandes et SystèmeServices

Premiers pas avec Fail2ban

I. Présentation Dans ce tutoriel, nous allons voir l’installation, le fonctionnement global et la configuration de l’outil Fail2ban qui est un outil de sécurité intéressant et reconnu. Fail2ban permet en effet de sécuriser les serveurs par l’automatisation de la détection de comportements suspects et leur blocage ou l’envoi d’alertes. Pour information, ce tutoriel s’effectue sur une machine Debian 7 sur une machine virtuelle VirtualBox. II. Fail2ban Fail2ban est donc un outil que l’on peut installer sur une machine UNIX, il va se charger de parser (lire, parcourir) les logs de différentes applications pour vérifier et détecter des comportements dis « suspects ». Il va par exemple savoir détecter un nombre X de tentatives d’authentification infructueuses  sur une service FTP ou SSH ou détecter des requêtes anormales sur un services web tel qu’Apache2. Par défaut, l’outil est donc fournis avec un ensemble de règles que nous étudierons brièvement et que nous pouvons modifier à notre guise. Le fonctionnement de Fail2ban se fait avec des

Lire cet article
Commandes et SystèmeServices

Envoyer des mails depuis plusieurs comptes en ligne de commande

I. Présentation Dans ce tutoriel, nous allons apprendre à utiliser l’outil MSMTP. Ce petit outil qui s’installe sur les distributions Linux permet la gestion du multi-comptes mails en ligne de commande (une sorte de Outlook ou Thunderbird CLI). Il est important de souligner qu’il ne sert qu’à envoyer des mails depuis plusieurs comptes différents (par exemple, un Gmail et un Yahoo) et non à en recevoir. II. Installation de l’outil Nous commençons donc par installer l’outil sur notre machine Linux : apt-get update && apt-get install msmtp III. La configuration Il se peut qu’il n’y ait pas de création de fichier de configuration par défaut, nous allons donc le créer manuellement. Il faut néanmoins savoir où le créer. Par défaut, le fichier principal de configuration sera « /etc/msmtprc ». Cependant, si un fichier « .msmtprc » se trouve dans le « home » d’un utilisateur, celui-ci remplacera le fichier de configuration principal. Cela nous permet d’avoir des configurations différentes selon les utilisateurs. Nous créons ici le

Lire cet article
Commandes et SystèmeServices

Mise en place d’un serveur de temps (NTP) sous Linux

I. Présentation Un serveur de temps permet de synchroniser l’horloge locale des ordinateurs du réseau avec l’horloge du serveur. Cela se fait à l’aide du protocole NTP qui utilise le port 123. Sous Linux, cela se fait à l’aide du paquet ntp, nous allons voir comment l’installer et l’utiliser. II. Installation du paquet ntp Pour bénéficier de la dernière version disponible, mettez à jour votre liste de paquets : apt-get update Ensuite pour installer le paquet ntp saisissez la commande : apt-get install ntp Note : Vous devez être en super-utilisateur pour exécuter ces commandes ou les précéder de « sudo ». III. Arrêter – Démarrer le service NTP Pour démarrer le service NTP saisissez la commande : /etc/init.d/ntp start Pour arrêter le service NTP saisissez la commande : /etc/init.d/ntp stop   IV. Configuration du serveur NTP La configuration du paquet ntp se fait dans le fichier /etc/ntp.conf server 0.ubuntu.pool.ntp.org server 1.ubuntu.pool.ntp.org server 2.ubuntu.pool.ntp.org server 3.ubuntu.pool.ntp.org Ces 4 lignes indiques les serveurs

Lire cet article
LogicielsServices

Firefox : Installer des extensions sans attendre

I. Présentation Lorsque vous installez des extensions sous Mozilla Firefox, vous remarquerez qu’il y a un temps d’attente avant de pouvoir cliquer sur le bouton « Installer » afin d’installer l’extension. Toutefois, en effectuant une petite modification dans la configuration de Firefox, vous pouvez éviter de devoir attendre et procéder directement à l’installation. II. Configuration de Firefox Ouvrez une instance de Firefox et dans la barre d’adresse, saisissez « about:config » et validez. Un message d’avertissement va apparaître, cliquez sur « Je ferai attention, promis ! ». Dans les paramètres de configuration de Firefox, cherchez celui qui s’intitule « security.dialog_enable_delay » en saisissant le nom dans le champ de recherche. Une fois que vous l’avez trouvé, double cliquez dessus et indiquez « 0 » comme valeur à la place de « 2 000 ». Voilà, c’est terminé, c’était vraiment simple mais ça permet d’optimiser un peu la configuration de votre navigateur Firefox.

Lire cet article
Commandes et SystèmeServices

Créer un partage simple avec Samba

I. Présentation Dans ce tutoriel, nous allons voir comment créer un partage de fichiers rapidement avec Samba, le but est donc ici de partager un ensemble de fichiers présents sur un poste sur tout un réseau. Nouveau tutoriel Samba disponible : Serveur de fichiers Debian : installer et configurer Samba 4 On va supposer que le dossier que nous voulons partager est « /media/partage » mkdir /media/partage chmod 0777 /media/partage On peut également créer un dossier « test » dans ce dossier partagé pour vérifier que nous voyons bien son contenu plus tard : mkdir /media/partage/test1 II. Installation de Samba On commence donc par installer samba qui va nous permettre de rendre ce dossier accessible sur le réseau : apt-get install samba La configuration de samba se trouve dans « /etc/samba ». On fait directement une copie du fichier de configuration initial pour s’assurer d’avoir quelque chose à récupérer en cas d’erreur : mv /etc/samba/smb.conf /etc/samba/smb.conf.bak Nous allons ensuite recréer un fichier de configuration vierge qui

Lire cet article
AutresCommandes et SystèmeServices

Installer un serveur LEMP (Linux EngineX MySQL PHP)

I. Présentation Un serveur LEMP (Linux EngineX MySQL PHP) est un serveur web comportant 4 composants qui sont :  Un système d’exploitation Linux (wheezy dans notre cas)   NginX pour gérer la communication entre le serveur et les clients.   MySQL pour toute la partie base de données.   PHP pour rendre le tout dynamique. Grâce à un serveur LEMP vous pouvez créer un site web dynamique grâce au PHP et à la base de données MySQL, étant donné qu’il contient tout les éléments nécessaires à la mise en place d’un site web dynamique. Un serveur LEMP regroupe plusieurs éléments qui en font un service complet et stable. Il faut savoir qu’un serveur LEMP est différent d’un serveur LAMP seulement car il utilise NginX en serveur web plutôt qu’Apache. NginX est un serveur web de plus en plus utilisé notamment pour ses performances par rapport à Apache 2. II. Mise à jours des paquets On va commencer par mettre à

Lire cet article
Commandes et SystèmeServices

Clustering et haute disponibilité sous Linux avec Heartbeat

I. Présentation HeartBeat ou LinuxHA (High Availability) est un système permettant, sous Linux, la mise en cluster (en groupe) de plusieurs serveurs. C’est plus clairement un outil de haut disponibilité qui va permettre à plusieurs serveurs d’effectuer entre eux un processus de fail-over. Le principe du « fail-over » (ou « tolérance de panne ») est le fait qu’un serveur appellé « passif » ou « esclave » soit en attente et puisse prendre le relais d’un serveur « actif » ou « maitre » si ce dernier serait amené à tomber en panne ou à ne plus fournir un service. Le principe d’Heartbeat est donc de mettre nos serveurs dans un cluster qui détiendra et sera représenté par une IP « virtuelle » par laquelle les clients vont passer plutôt que de passer par l’IP d’un serveur (actif ou passif). Le processus Heartbeat se chargera de passer les communications aux serveur actif si celui-ci est vivant et au serveur passif le cas échéant. Nous allons donc dans ce tutoriel mettre en place un

Lire cet article