Pare-feu
L'utilisation d'un pare-feu est fortement recommandée pour la sécurisation de votre système. Le pare-feu est souvent la première ligne de défense de votre machine contre l'extérieur, c'est en effet lui qui va analyser le trafic qui transite entre votre machine et l'extérieur.
Grâce au pare-feu vous êtes en mesure de pouvoir bloquer ou autoriser l'accès de votre machine depuis l'extérieur à certains ports ou protocoles, assurant ainsi la sécurité de votre système.
Les politiques de sécurité
Parmi les différentes politiques les plus couramment utilisées se trouvent les politiques de la liste blanche et celle de la liste noire.
Liste blancheLe principe de la politique de la liste blanche consiste à bloquer tout le trafic entrant sans exception et n'autoriser explicitement que les ports et protocoles dont nous sommes absolument sûrs de leur sécurité.
Cette politique de sécurité présente de nombreux avantages par rapport à la liste noire. En effet tout trafic non explicitement autorisé sera bloqué, ceci permet d'éviter la plupart des tentatives de connexion que nous n'aurions pas forcement eu le réflexe de sécuriser.
L'un des désavantages de cette politique est l'obligation de devoir définir chaque ports ou protocoles utilisés afin de ne pas bloquer l’exécution de nos services ( par exemple le protocole http sur le port 80 ), il faut donc connaître chaque port utilisé par la machine et garder à jour les règles établies lors de l'ajout ou de la suppression d'un service.
Concernant le trafic sortant dans la majorité des cas il n'est pas considéré comme risqué de tout autoriser, en effet vous êtes censé connaître le trafic sortant de votre réseau ou machine. Il est cependant recommandé de garder une trace du trafic sortant par mesure de sécurité.
Liste noireLe principe de la politique de la liste noire consiste à autoriser tout le trafic entrant sans exception et à ne bloquer explicitement que les ports et protocoles dont nous sommes sûrs qu'ils présentent un risque pour la sécurité.
Cette politique de sécurité présente de nombreux désavantages par rapport à la liste blanche. En effet autoriser tout le trafic entrant sans aucune restriction n'est pas recommandé, le blocage n'intervenant seulement que dans le cas d'un port ou protocole explicitement établi.
Concernant le trafic sortant dans la majorité des cas il n'est pas considéré comme risqué de tout autoriser, en effet vous êtes censé connaître le trafic sortant de votre réseau ou machine. Il est cependant recommandé de garder une trace du trafic sortant par mesure de sécurité.
IPTables
IPTables est surement le plus connu des pare-feu logiciel disponible les systèmes Linux
Voici quelques commandes pratiques le concernant :
Installation d'iptablessudo apt-get install iptables
Lister les règles actuellement établiessudo iptables -L
Purger les règles établiessudo iptables -F
sudo iptables -X
Ajouter une règle# Autoriser les connexions entrantes sur le port ssh(22) tcp depuis l'adresse ip x.x.x.x par exemple
sudo iptables -A INPUT -p tcp --dport ssh -s x.x.x.x -j ACCEPT
Note : Attention dans le cas d'une adresse IP dynamique, dès lors que votre IP aura changée vous serez incapable de vous connecter en SSH sur votre serveur! Faites preuve de prudence lors de l'assignation d'une adresse IP qui pourrait être dynamique, par exemple celle de votre box internet à la maison.
Supprimer une règle# Supprimer la règle n°2 de la catégorie OUTPUT
sudo iptables -D OUTPUT 2
Fail2ban
Il peut être utile de mettre en place le service fail2ban sur votre système qui est un générateur de règles iptables en fonction d’un comportement préétablit.
Exemple : Si vous établissez dans Fail2ban que 10 tentatives de connexion SSH avec un mauvais mot de passe est un comportement anormal alors Fail2ban générera une règle iptables pour bloquer l’adresse ip qui tente de se connecter. Cela permet de se protéger contre les attaques de type dictionnaire (brute force).
Vous trouverez de plus amples informations sur fail2ban et sa mise en place dans l'article disponible à l'adresse suivante .
Rkhunter
Vous avez la possibilité de détecter si des malwares/rootkits sont présents sur votre serveur via l'utilitaire rkhunter.
Vous pouvez l'installer via la commande
apt-get install rkhunter
Une fois installé, vous pouvez lancer un check de votre système via la commande
rkhunter --checkall
Vous pouvez ajouter l'option "--report-warnings-only" afin de n'avoir que les erreurs dans le rapport. Vous pouvez aussi par exemple automatiser cette tâche tous les jours en ajoutant une tâche cron (/etc/crontab ou crontab -e)
Exemple ci-dessous,tous les jours à minuit :
0 0 * * * root rkhunter --checkall --report-warnings-only
Ajouter un commentaire