Professional Documents
Culture Documents
Scurit du systme
Audit et tches de scurit
Plan
Filtrer le trafic Dclaration de rgles Ouvrir les ports utiliss Scan de ports Surveiller les logs
Filtrer le traffic
Le noyau Linux offre un pare-feu lutilisateur, quil est possible de configurer via le logiciel iptables
rgles courantes.
1. Crons le script : nano /etc/init.d/firewall Et on y crit : #!/bin/sh 2. On efface les rgles prcdentes pour partir sur de bonnes bases : 1 iptables -t filter -F
2 iptables -t filter -X
Ping
Le ping est bas sur un protocole particulier (ICMP) qui na pas de port prdfini. Mais il faut absolument autoriser le ping car cest la mthode la plus couramment utilise pour savoir si votre serveur est en vie. Voici donc les rgles : iptables -t filter -A INPUT -p icmp -j ACCEPT iptables -t filter -A OUTPUT -p icmp -j ACCEPT
10
Dmarrage du firewall
Enfin, nous allons lancer notre firewall : chmod +x /etc/init.d/firewall /etc/init.d/firewall Tester abondamment que tout se passe bien. Vous pouvez notamment utiliser lutilitaire nmap pour vrifier quil ny a pas plus de ports ouverts que voulu. Il est important de charger ce script au dmarrage de la machine afin quun simple reboot ne vous laisse pas sans protection : update-rc.d firewall defaults
11
Exemple de script
script basique autorisant le minimum pour un serveur web (HTTP, FTP, mail et rsolution de DNS).
12
13
Suite du script
14
15
Scan de ports
On peut aussi limiter le scan de ports (qui consiste tester tous vos ports afin de dtecter ceux qui sont ouverts).
Pour cela :
16
Bannir une IP
Si vous reprez dans les logs ou autre une adresse IP suspecte, vous pouvez la bannir aisment au niveau du firewall via la commande: iptables -A INPUT -s adresse_ip -j DROP
17
Ces deux catgories de logiciels vont - comme leur nom lindique - surveiller toute tentative
dintrusion sur le serveur. comment ragir chaque tape dune tentative intrusion classique, savoir : 1. le scan de port (plus gnralement, la collecte dinformations) afin de trouver les vulnrabilits ;
18
19
Ou : nano /etc/portsentry/portsentry.conf
Commentez les lignes KILL_HOSTS_DENY. Dcommentez la ligne KILL_ROUTE="/sbin/iptables -I INPUT -s $TARGET$ -j DROP".
Ainsi, Portsentry ajoutera une rgle dans le firewall (iptables) pour rejeter les paquets en cas de scans.
On dmarre le logiciel (il faut le lancer deux fois, pour TCP et UDP) : portsentry audp portsentry atcp
20
Fail2ban est un petit utilitaire qui se base sur les logs de la machine pour chercher des actions suspectes rptes (par exemple, des erreurs de mots de passe) dans un laps de temps donn. Sil en trouve, il bannira lIP de lattaquant via iptables. Ce type de logiciel est indispensable, car, bien que lger, il offre une bonne protection contre les attaques basiques.
21
22
Notez que dans la partie JAILS (dans nano : ctrl w => rechercher JAILS) figure tous les services que fail2ban surveillera. Si vous avez modifi les ports par dfaut, il faut les indiquer l aussi. Par exemple avec ssh : Code : Console - Slectionnernano /etc/fail2ban/jail.conf ctrl+w => chercher [ssh] port : indiquer le port Enregistrez et quittez. Je vous encourage parcourir rapidement le reste des options afin de personnaliser un peu votre soft.
23
24
Il est relativement lger (sexcute une fois par jour par dfaut).
apt-get install rkhunter Il est conseill de modifier un peu la configuration : nano /etc/default/rkhunter - REPORT_EMAIL : indiquez un mail pour recevoir des alertes de Rkhunter ;
25
Cependant, surveiller les logs est important, car ils refltent la vie de votre
serveur. Les logs les plus intressants sont notamment :
26
Toutes tentatives daccs au
serveur. /var/log/auth.log Utile de filtrer le contenu : cat /var/log/auth.log | grep authentication failure
le log dalerte de fail2ban. Cherchez /var/log/fail2ban notamment : cat /var/log/fail2ban | grep ban ;
27
Installation :
apt-get install logwatch nano /usr/share/logwatch/default.conf/logwatch.conf Spcifiez loption MailTo car logwatch envoie ses rsums de logs par mail. Il va normalement sexcuter tous les jours (ls -l /etc/cron.daily/ | grep logwatch pour sen assurer).
28
interdire les utilisateurs sans mot de passe (ce sont dnormes failles potentielles) ;
toujours choisir de bons mots de passe : 8 caractres minimum, (des chiffres, des majuscules, des symboles.) un outil comme pwgen vous en gnrera automatiquement (apt-get install pwgen) ; maintenir son systme jour (apt-get update et apt-get upgrade) ; toujours utiliser ssh pour laccs distance (et non telnet ou des services graphiques, sauf sils sont en tunnel travers ssh).
29
30
Apache
Apache donne par dfaut de nombreuses informations quiconque sy connecte. Vu que cela ne sert rien que votre serveur web donne au monde votre
31
Autres logiciels
Pour la plupart des logiciels de base, il existe quelques recommandations de prudence. Voici une liste non exhaustive :
32
Scanner de port
Scanner de vulnrabilit
il va tenter douvrir des connexions sur un grand nombre de ports de votre machine afin de dterminer sils sont ouverts ou non.
33
Jouer avec nmap pour voir si vos rgles sont efficaces ou pas (par exemple avec les options -sS, -sN ou -sI, cf le manuel).
34
Q.C.M.
Quel est le rle du firewall ?
Fermer les ports inutiliss
Que fait cette rgle du firewall : iptables -t filter -p tcp --dport 2222 -j ACCEPT
elle autorise le trafic TCP sur le port 2222
35
QCM
En cas de prsence dun rootkit sur le serveur, quelle proposition ci-dessous est fausse ?
Il existe une faille de scurit dans la configuration du serveur
bossdemerde05
axt20mp5