
Dans cette je vous présenterai le contexte et le contenu de la formation, les outils employés et leur utilité.
Il est question de vous aidez à mettre en place votre environnement de travail. A savoir l'installation de Virtualbox sur votre machine, le lancement et la configuration d'une machine virtuelle Ubuntu.
Vous découvrirez ici le système UNIX, son Shell et enfin les commandes de base qui vous permettront de naviguer dans votre système d'exploitation. A la fin de cette session vous serez capable de lister le contenue d'un dossier par exemple. En créer un, le déplacer ou même le supprimer....et bien d'autres encore
Dans cette 2 ème partie sur les commandes UNIX, vous verrez la notion de permissions au niveau de vos fichiers, d'utilisateurs et de propriétaires sur UNIX. Ensuite on abordera les processus d'installation de nouveaux paquets sur votre machines et enfin la notion de liens symboliques
Vim est un outil d'édition de fichiers sur Unix. On verra dans un premier temps comment le configurer, ensuite ses 2 modes de fonctionnements. A savoir le mode navigation et le mode insertion.
Les serveurs tournent presque toujours sur des machines distantes. Le SSH est le protocole qui vous permettra de vous y connecter et de pouvoir y exécuter des commandes Shell. Le protocole sera en plus capable de crypter les échanges via des algorithmes de cryptographie. A la fin de cette section, vous serez capable de configurer un serveur SSH et de générer des clés d'authentification valides
Ce module est à mon sens le plus important de la formation. Apache est un serveur http. C'est celui qui est responsable de répondre aux requêtes http entrante sur votre serveur. Il vous permettra d’héberger plusieurs sites sur votre machine. A la fin de cette section vous serez capable de l'installer, configurer des hôtes virtuels, utiliser des fichiers .htaccess, et mettre en place un site web statique.
Le SSL (Secure socket Layer) est le protocole qui permet de crypter les échanges entre un client et un serveur. C'est grâce à lui que vos informations bancaires ne transitent pas en clair sur le réseau lorsque vous vous connecté à votre compte. A la fin de cette section, vous aurez une idée plus précise sur sa terminologie, et sécuriser un service Unix. Cela passera par la génération et l'installation de certificats auto-signés. Vous verrez les notions de: clé publique, clé privées, autorité de certification
Un serveur distant à pour responsabilité de pouvoir fournir des services. Cela implique très souvent de pouvoir héberger plusieurs applications. Ça peut être une application PHP, Java, NodeJs, Ruby...etc. A la fin de cette section vous serez capable de d'installer un tomcat, d'y déployer une application java, et enfin de configurer un proxy sur votre Apache.
Un serveur est très souvent emmené à gérer des données qui sont stockées. Il devient très vite nécessaire d'avoir accès à une base de données. Dans cette section on verra comment installer une base de données relationnel telle que Mysql. Une brève introduction sera faite sur son installation, sa configuration. Vous serez capables de créer des bases de données, leur allouer des utilisateurs et gérer les permissions associées.
Il peut être judicieux d'avoir serveur de messagerie installé sur notre serveur distant, au moins pour l'envoie. La réception sera gérer par un système plus robuste. Le serveur pourrait par exemple nous alerter lorsqu'une adresse IP suspicieuse aurait été identifiée. A la fin de cette section, vous serez capable d'installer le serveur de courriel Postfix, configurer des noms de domaines et envoyer des mails vers l'extérieur.
Cette section couvrira le transfert de fichiers via le protocole FTP(file transfert protocol). C'est ce dernier qui vous permettra par exemple d'uploader vos fichiers html sur votre serveur. Ici on verra comment installer et configurer le serveur ProFTPD, créer des utilsateurs FTP et enfin configurer l'outil Quota afin de limiter la taille disponible pour chaque utilisateur.
Une fois qu'une machine distante est mise sur le réseau, elle sera obligatoirement sujette à des attaques d'éventuels hackers. Il sera donc nécessaire de mettre en place des systèmes de sécurité au niveaux de nos ports, vu que ce sont les points de connexion de notre serveur. Unix dispose d'un pare feu natif Netfilter, qui peut être piloté via Iptables. A la fin de cette section vous serez capable de configurer Iptables, mettre en place des scripts sous forme de service, et enfin créer des règles de pare feu plus ou moins complexes.
Ufw est aussi un outil qui nous permet de configurer notre pare feu de la même façon que l'outil précédent. A la seule différence qu'il est beaucoup plus intuitif au niveau de création de nouvelle règle, et nous permet de nous affranchir de fichiers de script à exécuter à chaque démarrage. Ce n'est plus ni moins qu'un front-end pour notre outil Iptables. De plus Ufw nous permet de mettre en place des config de pare-feu par application. A la fin de cette section, vous serez capable de l'installer et d'y implémenter une configuration minimale.
Toutes les traces d'activités, d'évènements survenus sur vos services sont stockées dans des fichiers de log. Par exemple si vous vous faites spammés tout le temps par la même adresse IP, ou bien un utilisateur qui se trompe plusieurs fois de mot de passe, tous ces évènements seront tracés dans vos fichiers de log. Fail2ban est un outil qui vous permettra de parser vos logs à la recherche de ces erreurs et d'enclencher différentes actions. A la fin de cette section, vous serez capable de l'installer, de configurer des prisons(jails), tester des règles de filtrage, et mettre en place des ban actions (rajouter des règles dans la table de filtrage Iptables)
A la fin de cette formation vous serez capable d'installer et configurer un serveur UNIX de façon complète. On verra les différents modules de base sur un serveur distant à savoir: L'installation d'un serveur SSH pour la connexion à distance, un serveur APACHE pour la mise en place de vos sites web, un serveur Mysql pour le stockage de vos données, un serveur PostFix pour l'envoi d'email, et enfin un serveur Proftpd, pour le transfert de fichiers. D'autres part je vous montrerai aussi comment mettre en place une configuration de base pour la sécurité de votre serveur via les outils Fail2Ban, Iptable, et Ufw