Vous êtes sur la page 1sur 14

Scuriser son serveur Linux

Par Binabik

www.siteduzero.com

Licence Creative Commons 5 2.0 Dernire mise jour le 31/08/2009

2/15

Sommaire
Sommaire ........................................................................................................................................... 2 Scuriser son serveur Linux ............................................................................................................... 3
Filtrer le trafic via le firewall ............................................................................................................................................... 3
Prsentation ................................................................................................................................................................................................................ Dclaration des rgles ................................................................................................................................................................................................ Dmarrage du firewall ................................................................................................................................................................................................. Exemple de script ........................................................................................................................................................................................................ Allez un peu plus loin .................................................................................................................................................................................................. 3 4 6 6 7

Se prmunir contre les intrusions ...................................................................................................................................... 8


Portsentry (scan de ports) ........................................................................................................................................................................................... 8 Fail2ban (brute-force, dictionnaire, dni de service) ................................................................................................................................................... 9 Snort (dtection dintrusions) .................................................................................................................................................................................... 10 Rkhunter (rootkit et backdoors) ................................................................................................................................................................................. 10

Surveiller les logs ............................................................................................................................................................ 11


Logwatch ................................................................................................................................................................................................................... 11

Du bon usage de son serveur ......................................................................................................................................... 11


Le bon sens ............................................................................................................................................................................................................... 11 Configurer les logiciels .............................................................................................................................................................................................. 12

Tester la suret de son serveur ....................................................................................................................................... 12


Scanner de port ......................................................................................................................................................................................................... 13 Scanner de vulnrabilit ............................................................................................................................................................................................ 13

Q.C.M. ............................................................................................................................................................................. 13
Partager ..................................................................................................................................................................................................................... 14

www.siteduzero.com

Sommaire

3/15

Scuriser son serveur Linux

Par

Binabik

Mise jour : 31/08/2009 Difficult : Intermdiaire 663 visites depuis 7 jours, class 186/797 Ce guide va vous apprendre scuriser un serveur et donc vous initier aux thmatiques de la scurit informatique. En quoi estce important ? Par dfinition, un serveur est ouvert sur le monde, un minimum de scurit est donc intressant afin de se prmunir des attaques les plus simplistes. La marche suivre sera donc la suivante : prsentation des failles ; prsentation des outils pour y pallier. Bien entendu, je ne fais pas un cours complet de scurit informatique, ce tutoriel est une initiation. Pour faire simple, c'est un peu comme fermer les volets la nuit. Point de vue matriel, voil ce qu'il vous faudra : un serveur embarquant une distribution xBuntu ou Debian (pour les autres distribs, le principe sera le mme, mais les commandes risquent d'tre diffrentes) ; un accs root (en ssh par exemple) et une console. Tout le tutoriel se passe en ligne de commande afin de pouvoir tre accessible tous. Comme il faudra diter des fichiers, veuillez vous assurer d'avoir un diteur de fichier en ligne de commande (j'utiliserai personnellement nano qui est trs simple). Cest parti ! Sommaire du tutoriel :

Filtrer le trafic via le firewall Se prmunir contre les intrusions Surveiller les logs Du bon usage de son serveur Tester la suret de son serveur Q.C.M.

Filtrer le trafic via le firewall Prsentation


Le firewall (pare-feu en franais) est llment indispensable pour scuriser son serveur. Il va en effet filtrer tout le trafic en nautorisant que les changes permis par ladministrateur. Sans firewall correctement rgl, tous les trafics sont plus ou moins permis (cest--dire quun attaquant peut faire ce quil veut chez vous) et ce genre de faille est dtectable par un simple scan de ports. Or, le noyau Linux offre dj un pare-feu lutilisateur, quil est possible de configurer via le logiciel iptables (normalement contenu dans /sbin/iptables). Sil nest pas install : Code : Console

www.siteduzero.com

Scuriser son serveur Linux

4/15

apt-get install iptables

Nous allons maintenant dtailler le fonctionnement dun firewall - relativement simple. Un firewall analyse tout le trafic et vrifie si chaque paquet chang respecte bien ses rgles (critres de filtrage). Donc, il suffit de spcifier de bonnes rgles pour interdire tout trafic superflu. Les critres peuvent tre divers (filtrer les ports, les protocoles, les adresses IP, etc). De base, nous allons spcifier nos rgles sur les ports. Bien entendu, il faut tre le plus strict possible quant au choix des rgles ; cest pourquoi, par dfaut, tout firewall se rgle en premier lieu en bloquant tout, absolument tout. Ensuite, nous allons ouvrir (autoriser le trafic) certains ports que nous voulons utiliser (par exemple pour un serveur web, nous allons ouvrir le port 80 afin que le site web soit accessible). Pour plus de souplesse, nous allons crire nos rgles sous forme de script bash . Petite mesure de prudence si vous tes loggu sur votre machine distance (ssh), soyez bien sr de ne pas vous bloquer laccs ou - le cas chant - de pouvoir rebooter la machine. Sinon, jai bien peur que rcuprer votre serveur sera compliqu !

Dclaration des rgles


Filtrage intgral
Notez que la commande iptables -L -v vous permettra de consulter les rgles courantes.

Suit la marche suivre pour crer les rgles : 1. Crons le script : Code : Console nano /etc/init.d/firewall

Et on y crit : #!/bin/sh 2. On efface les rgles prcdentes pour partir sur de bonnes bases : Code : Bash iptables -t filter -F iptables -t filter -X

3. On bloque par dfaut tout le trafic (si vous tes en ssh , bien entendu, nexcutez pas encore le script !) : Code : Bash iptables -t filter -P INPUT DROP iptables -t filter -P FORWARD DROP iptables -t filter -P OUTPUT DROP

4. On ne ferme pas les connexions dj tablies : Code : Bash iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT iptables -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT

Nous indiquons avec les paramtres -m et --state de ne pas fermer les connexions qui sont dj tablies.

www.siteduzero.com

Scuriser son serveur Linux


5. On autorise le loopback (on ne va pas se bloquer nous-mmes !) Code : Bash iptables -t filter -A INPUT -i lo -j ACCEPT iptables -t filter -A OUTPUT -o lo -j ACCEPT

5/15

Note : lo signifie localhost (le serveur lui-mme). Tout est bloqu, il ne nous reste plus qu ouvrir les ports utiliss.

Ouvrir les ports utiliss


partir de maintenant, observons plus en dtail les paramtres de iptables : -t : vaudra par dfaut filter ; -A : servira indiquer le sens du trafic : INPUT (entrant) ou OUTPUT (sortant) ; -p : indique le protocole (TCP ou UDP en principe) ; --dport et --sport : respectivement port destination et port source (comme nous sommes le serveur, nous utiliserons principalement dport ) ; -j : comment traiter le paquet (nous nous servirons d'ACCEPT et de DROP pour respectivement accepter et refuser le paquet). Plus nous serons prcis, plus nous serons scuriss. Renseigner ces quelques options est donc le minimum. Ainsi, une rgle simple aura la forme suivante : Code : Bash iptables -t filter -A INPUT/OUTPUT -p protocole --dport port_a_ouvrir -j ACCEPT

Notez enfin que si vous voulez un change, il faut toujours ouvrir le port dans les deux sens (INPUT et OUTPUT)... logique. Exemple si lon a un serveur web (port 80) : Code : Bash iptables -t filter -A OUTPUT -p tcp --dport 80 -j ACCEPT iptables -t filter -A INPUT -p tcp --dport 80 -j ACCEPT

V ous pourriez me dire quil suffirait de ncrire quune seule fois la ligne sans prciser largument -A... mais suivant notre politique de prcision, ce serait une erreur car il existe dautres valeurs que INPUT et OUTPUT pour lesquelles nous ne voulons pas permettre le trafic (FORWARD par exemple).

Il ne vous reste qu spcifier toutes les rgles ncessaires. V oici un petit tableau pour vous aider (il sagit de donnes par dfaut) : service ssh port dcoute protocole 22 tcp tcp tcp tcp tcp

web/HTTP 80 FTP 20 et 21

mail/SMTP 25 mail/POP3 110

www.siteduzero.com

Scuriser son serveur Linux


mail/IMAP 143 DNS 53 tcp tcp et udp

6/15

Cas particulier du 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. V oici donc les rgles : Code : Bash iptables -t filter -A INPUT -p icmp -j ACCEPT iptables -t filter -A OUTPUT -p icmp -j ACCEPT

Dmarrage du firewall
Enfin, nous allons lancer notre firewall : Code : Console chmod +x /etc/init.d/firewall /etc/init.d/firewall

Tester abondamment que tout se passe bien. V ous pouvez notamment utiliser lutilitaire nmap pour vrifier quil ny a pas plus de ports ouverts que voulu (cf partie 5). Il est important de charger ce script au dmarrage de la machine afin quun simple reboot ne vous laisse pas sans protection : Code : Console update-rc.d firewall defaults

Exemple de script
Ci-dessous, je vous montre un exemple de script basique autorisant le minimum vital pour un serveur web (HTTP, FTP, mail et rsolution de DNS). Je vous encourage lire des docs et des tutos plus complets si vous voulez aller plus loin dans le paramtrage de votre firewall . Secret (cliquez pour afficher) Code : Bash #!/bin/sh # Rinitialise les rgles sudo iptables -t filter -F sudo iptables -t filter -X # Bloque tout sudo iptables sudo iptables sudo iptables le -t -t -t trafic filter -P INPUT DROP filter -P FORWARD DROP filter -P OUTPUT DROP

# Autorise les connexions dj tablies et localhost sudo iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT sudo iptables -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT

www.siteduzero.com

Scuriser son serveur Linux


sudo iptables -t filter -A INPUT -i lo -j ACCEPT sudo iptables -t filter -A OUTPUT -o lo -j ACCEPT # ICMP (Ping) sudo iptables -t filter -A INPUT -p icmp -j ACCEPT sudo iptables -t filter -A OUTPUT -p icmp -j ACCEPT # SSH sudo iptables -t filter -A INPUT -p tcp --dport 22 -j ACCEPT sudo iptables -t filter -A OUTPUT -p tcp --dport 22 -j ACCEPT # DNS sudo iptables sudo iptables sudo iptables sudo iptables -t -t -t -t filter filter filter filter -A -A -A -A OUTPUT -p tcp --dport 53 -j ACCEPT OUTPUT -p udp --dport 53 -j ACCEPT INPUT -p tcp --dport 53 -j ACCEPT INPUT -p udp --dport 53 -j ACCEPT

7/15

# HTTP sudo iptables -t filter -A OUTPUT -p tcp --dport 80 -j ACCEPT sudo iptables -t filter -A INPUT -p tcp --dport 80 -j ACCEPT # FTP sudo iptables -t filter -A OUTPUT -p tcp --dport 20:21 -j ACCEPT sudo iptables -t filter -A INPUT -p tcp --dport 20:21 -j ACCEPT # Mail SMTP iptables -t filter -A INPUT -p tcp --dport 25 -j ACCEPT iptables -t filter -A OUTPUT -p tcp --dport 25 -j ACCEPT # Mail POP3 iptables -t filter -A INPUT -p tcp --dport 110 -j ACCEPT iptables -t filter -A OUTPUT -p tcp --dport 110 -j ACCEPT # Mail IMAP iptables -t filter -A INPUT -p tcp --dport 143 -j ACCEPT iptables -t filter -A OUTPUT -p tcp --dport 143 -j ACCEPT # NTP (horloge du serveur) sudo iptables -t filter -A OUTPUT -p udp --dport 123 -j ACCEPT

Allez un peu plus loin


Le firewall , outre que cest loutil de base de tout systme de scurit, permet des manipulations plus pousses que filtrer des ports. Je vais vous montrer quelques exemples.

Flood ou dni de service


Ce genre dattaque vise surcharger la machine de requte. Il est possible de sen prmunir pas mal directement au niveau du firewall : Code : Bash iptables -A FORWARD -p tcp --syn -m limit --limit 1/second -j ACCEPT

Le flags TCP syn engendre des demandes de connexions, et le but de cette rgle est donc de les limiter une par seconde (champs limit ). Il est cependant dconseill de monter au-del de la seconde (sous peine de gner le contrle de flux et la rcupration derreur de TCP).

On peut faire de mme avec les protocoles UDP et ICMP : Code : Bash

www.siteduzero.com

Scuriser son serveur Linux


iptables -A FORWARD -p udp -m limit --limit 1/second -j ACCEPT iptables -A FORWARD -p icmp --icmp-type echo-request -m limit -limit 1/second -j ACCEPT

8/15

Notez cependant que ce type dattaque permet de faire tomber le serveur, mais pas den prendre laccs. Cest pourquoi le risque den tre la cible est assez mince (sauf si lon sappelle Google). En gnral, un logiciel simple anti-intrusion comme fail2ban (cf partie 2) est suffisant, suivant le niveau de scurit recherch.

Scan de ports
On peut aussi limiter un tant soit peu le scan de ports (qui consiste tester tous vos ports afin de dtecter ceux qui sont ouverts). Pour cela, une rgle de ce genre irait : Code : Bash iptables -A FORWARD -p tcp --tcp-flags SYN,ACK,FIN,RST RST -m limit --limit 1/s -j ACCEPT

Cest un peu le mme principe que ci-dessus. Sachant quune connexion TCP en bon et due forme requiert trois paquets avec trois flags diffrents, on voit tout de suite la finesse de cette rgle qui peut travailler paquet par paquet. Pour plus dinfos sur les flags TCP, cf Wikipdia. Notez que cette rgle basique nest pas trs efficace, cest une protection de base. La partie 2 ira plus loin dans le blocage des scans de ports.

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 : Code : Console iptables -A INPUT -s adresse_ip -j DROP

Notez cependant quil nest pas conseill de bannir les IP tour de bras.

Se prmunir contre les intrusions


Actuellement, le firewall va bloquer toutes tentatives de connexions sur les ports ferms. Mais quen est-il des ports ouverts ? Afin de contrler plus prcisment ce qui se passe dessus, le firewall nest pas suffisant et nous allons devoir utiliser dautres outils, appels IDS (Intrusion Detection System) et IPS (Intrusion Prevention System). Ces deux catgories de logiciels vont comme leur nom lindique - surveiller toute tentative dintrusion sur le serveur. La dmarche qui va suivre va vous montrer comment ragir chaque tape dune tentative intrusion classique, savoir : 1. le scan de port (plus gnralement, la collecte dinformations) afin de trouver les vulnrabilits ; 2. les attaques simples , tmoins dune faible scurit ; 3. lintrusion (via des techniques qui ne seront pas dcrites ici car dpassant notre cadre de travail) ; 4. linstallation dun moyen de se logguer sur le serveur volont (si lattaquant parvient jusquici avec succs, on peut dire que la machine lui appartient).

Portsentry ( scan de ports)


Cet utilitaire permet de bloquer en temps rel la plupart des scans de port connus (mme trs discrets et chappant aux rgles de filtrage du firewall basiques). Je rappelle au passage que scanner les ports signifie tester tous les ports dune machine afin de dterminer ceux qui sont ouverts (les portes dentres en gros). Cependant, il ne faut pas paniquer si votre serveur est la cible dun simple scan de port, cela sera monnaie courante, et si vous tes bien protg, le pirate passera sa route. Portsentry est donc sympa si vous voulez compliquer la tche de lattaquant :

www.siteduzero.com

Scuriser son serveur Linux


Code : Console apt-get install portsentry

9/15

Pour le configurer : Code : Console nano /usr/local/psionic/portsentry/portsentry.conf

Ou : Code : Console 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) : Code : Console portsentry audp portsentry atcp

V ous pouvez tester tout a avec nmap (si vous voulez tester en local, il vous faut modifier le fichier portsentry.ignore en enlevant le localhost ). Si vous souhaitez que vos rglages restent mme aprs un nouveau lancement de portsentry, vous devrez modifier le fichier portsentry.ignore.static

Fail2ban (brute-force, dictionnaire, dni de service)


Comme je lai dit, les ports ouverts sur la machine sont priori sans grande protection, et sujet des attaques simples telles que la tentative de connexion par brute-force ou par dictionnaire (par exemple, tester toutes les combinaisons de mots de passe pour se logguer en ssh), le dni de services (surcharger le serveur de requtes) ou - plus btement - la recherche dutilisateurs sans mots de passe... Si votre machine est infiltre aussi facilement, lattaquant sera vraiment content. 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 indiques ci-dessus. Pour linstallation : Code : Console apt-get install fail2ban

Pour la configuration : Code : Console nano /etc/fail2ban/jail.conf

www.siteduzero.com

Scuriser son serveur Linux

10/15

Je vous encourage remplir le champ ci-dessous : - destmail : indiquez une adresse mail si vous voulez recevoir des mails dalerte de la part de fail2ban . Le niveau de protection peut tre modul via les champs suivants (notez que la configuration par dfaut suffit normalement) : - bantime : temps de bannissement des IP suspectes ; - maxretry : nombre de tentatives de connexion permise avant bannissement. 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 nano /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. Enfin, pour recharger la nouvelle configuration : Code : Console /etc/init.d/fail2ban restart

Snort (dtection dintrusions)


Le problme quand on commence scuriser est de savoir sarrter un moment donn. Snort est un outil trs puissant, pouvant en fait dtecter la plupart des attaques qui chapperaient un utilitaire comme fail2ban . Bien entendu, il ne servira pas dans 90 % des cas et comme ce nest quun outil de dtection, ce sera vous de rendre les mesures ncessaires sil dtecte une intrusion. Enfin, comme il analyse le trafic en temps rel, cela ralentit forcment un peu les flux. Linstaller nest donc pas indispensable, cela dpend du degr de scurit recherch ! Comme ce logiciel dpasse un peu le cadre de ce tutoriel, je vous propose de consulter ces guides pour linstaller : http://www.trustonme.net/didactels/187.html http://doc.ubuntu-fr.org/snort Jen ai juste parl car en matire de scurit, cest un outil trs pouss. Notez que ce logiciel fonctionne partir de rgles de scurit crites par des utilisateurs, et parfois errones. En cas derreur au dmarrage, nhsitez pas aller commenter les rgles bugues (que vous trouverez dans /var/log/syslog).

Rkhunter (rootkit et backdoors )


Dernier volet de cette section intrusion, les backdoors. Si par malheur un attaquant arrive prendre possession de votre machine, il y a fort parier quil y laisse une backdoor (porte drobe) qui lui permettrait den reprendre le contrle plus tard, ainsi quun rootkit pour la dissimuler : lattaquant maintient ainsi un accs frauduleux votre machine. Rkhunter est un utilitaire qui est charg de dtecter dventuels rootkits sur votre serveur. Il est relativement lger (sexcute une fois par jour par dfaut) donc on aurait tort de se priver. Code : Console apt-get install rkhunter

www.siteduzero.com

Scuriser son serveur Linux


Il est conseill de modifier un peu la configuration : Code : Console nano /etc/default/rkhunter

11/15

- REPORT_EMAIL : indiquez un mail pour recevoir des alertes de Rkhunter ; - CRON_DAILY_RUN : mettez yes pour une vrification quotidienne de votre machine via un cron . Notez que Rkhunter se trompe parfois en dclarant comme infects des fichiers sains ( faux positifs ), donc il faut tre critique lgard des rapports. Par contre, sil savre que lalerte est justifie, cela signifie que vous avez un rootkit ainsi quune faille de scurit qui a t dcouverte et exploite. Mfiance donc !

Surveiller les logs


La plupart des logiciels cits plus haut vous enverront des notifications par mail en cas dalerte. Cependant, surveiller les logs est important, car ils refltent la vie de votre serveur. Les logs les plus intressants sont notamment : /var/log/auth.log qui contient toutes les tentatives daccs au serveur. Il peut tre utile de filtrer le contenu, par exemple : cat /var/log/auth.log | grep authentication failure ; /var/log/message et /var/log/syslog contient un peu de tout (erreurs, bugs, informations, etc) ; /var/log/fail2ban est le log dalerte de fail2ban . Cherchez notamment : cat /var/log/fail2ban | grep ban ; /var/log/snort/alert vous indiquera les logs dalertes de Snort ; /var/log/rkhunter pour voir les rapports quotidien de Rkhunter. Faites attention aux erreurs trouves, ce nest pas bon signe (mme si le risque de faux positifs existe ici).

Logwatch
Il est aussi possible dutiliser des utilitaires qui vous simplifient un peu ce travail de lecture des logs. Logwatch notamment permet de rsumer plusieurs logs afin de ne vous retourner que des anomalies si possible. Cela vite un long et fastidieux travail de recherche. Installation : Code : Console 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). Il peut aussi tre intressant de suivre ltat du rseau et du systme (monitoring) afin de dtecter par exemple une brusque monte en charge, synonyme de problmes. Mais comme il est dlicat de ragir vite, je vous laisse vous renseigner de vous-mmes.

Du bon usage de son serveur Le bon sens


90 % des problmes informatiques relvent de lutilisateur. Cest pourquoi, avant mme de penser scuriser sa machine, il faut garder en mmoire quelques rgles de bon sens : interdire les utilisateurs sans mot de passe (ce sont dnormes failles potentielles) ; toujours choisir de bons mots de passe : 8 caractres minimum, pas un mot qui se trouve dans le dictionnaire, si possible des chiffres, des majuscules, des symboles... au besoin, un outil comme pwgen vous en gnrera automatiquement des bons (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

www.siteduzero.com

Scuriser son serveur Linux


ssh ).

12/15

Configurer les logiciels


Il peut aussi tre bon damliorer un peu la scurit des logiciels installs sur la machine, car il seront en premire ligne pour traiter les paquets autoriss.

SSH
En premier lieu, il faut regarder du ct de ssh , puisque cest tout de mme un accs direct votre machine. Pour ce faire... Code : Console nano /etc/ssh/sshd_config

... et il est conseill de changer les champs suivants : - Port : le port par dfaut est 22... et nimporte quel attaquant le sait. Changer le port force effectuer un scan (ou quivalent) avant de rflchir attaquer (attention de bien changer le port dans le firewall ) ; - PermitRootLogin : mettre no afin dinterdire le login en root ; - AllowUsers : indique une liste dutilisateur autoris se connecter via ssh . Cela peut tre utile si vous avez des utilisateurs qui ne sont pas censs se connecter sur la machine. Et on redmarre : Code : Console /etc/init.d/ssh restart

Apache
Apache - le serveur web le plus courant - donne par dfaut de nombreuses informations quiconque sy connecte. Vu que cela ne sert rien que votre serveur web donne au monde votre distribution Linux, autant limiter cela : Code : Console nano /etc/apache2/apache2.conf

Passez ServerSignature off et ServerTokens Prod pour rendre votre serveur web plus discret. Code : Console /etc/init.d/apache2 restart

Autres
Pour la plupart des logiciels de base, il existe quelques recommandations de prudence. V oici une liste non exhaustive : service mysql FTP Mail conseil interdire les accs sans mot de passe (on peut excuter lutilitaire /usr/bin/mysql_secure_installation fourni avec mysql-server) ne surtout pas crer de FTP anonymes utiliser un anti-spam (spamassassin par exemple) et - si possible - utiliser les connexions scurises (SSL ou TLS) offertes par tout serveur de mail qui se respecte

Et bien dautres, vous de vous renseigner.

www.siteduzero.com

Scuriser son serveur Linux

13/15

Tester la suret de son serveur


Il est bien connu que pour prouver la scurit de son serveur, le plus simple est encore de se mettre dans la peau dun pirate. Sans aller jusque-l, il existe nanmoins quelques outils intressants pour rapidement dterminer sil existe une grosse faille ou non.

Scanner de port
nmap est le meilleur outil de scan de ports : il va tenter douvrir des connexions sur un grand nombre de ports de votre machine afin de dterminer sils sont ouverts ou non. Code : Console apt-get install nmap

Comme cest notre serveur, le mieux est deffectuer le scan le plus incisif (et par consquent, le moins discret) possible : Code : Console nmap -v ip_ou_nom_de_la_machine

V ous aurez alors la liste des ports ouverts. V ous pouvez aussi tester un port en particulier avec largument -p port . Il nest pas recommand dutiliser nmap sur quiconque autre que vous-mmes Si vous avez pris des mesures pour bloquer (au mieux) le scan de port, il est conseill dans un premier temps de les dsactiver le temps du scan (car un port ouvert sans que vous le sachiez est une faille), et dans un second temps de jouer avec nmap pour voir si vos rgles sont efficaces ou pas (par exemple avec les options -sS , -sN ou -sI , cf le manuel).

Scanner de vulnrabilit
L, le but est de chercher en gnral les failles de votre machine. Et il convient de les rgler toutes si possible, car lattaquant peut les trouver aussi bien que vous. Pour cela, Nessus est un des utilitaires les plus performants. Comme le logiciel est propritaire et quil sutilise via une interface graphique, je vous laisse suivre un tuto dtaill dessus, par exemple : http://doc.ubuntu-fr.org/nessus http://www.linux-pour-lesnuls.com/nessus.php

Q.C.M.
Le premier QCM de ce cours vous est offert en libre accs. Pour accder aux suivants Connectez-vous Inscrivez-vous Quel est le rle du firewall ?
Fermer les ports inutiliss Rendre le scan de port inutile Filtrer les paquets autoriss ou non du rseau Empcher toutes les intrusions

Que fait cette rgle du firewall : Code : Bash iptables -t filter -p tcp --dport 2222 -j ACCEPT

www.siteduzero.com

Scuriser son serveur Linux


?
elle autorise le trafic TCP sur le port 2222 elle autorise tout le trafic sur le port 2222 sauf en TCP elle bloque le trafic TCP sur le port 2222

14/15

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 Lattaquant a pu utiliser la machine mauvais escient Lattaquant bnficie dun accs direct la machine Un audit approfondi des logs et de lensemble du serveur est requis

Quel est selon vous le meilleur mot de passe ci-dessous :


anticonstitutionnellement dB_45 bossdemerde05 axt20mp5

Correction !
Statistiques de rponses au Q CM

La scurit informatique est un vaste domaine dont j'espre vous avoir donn un bon aperu travers ces exemples d'applications. Cependant, il existe de bien nombreux autres systme de dfense et si la scurisation outrance est inutile, la connaissance outrance ne l'est srement pas ! Quelques liens intressants donc : http://www.linux-france.org/prj/inetdo [...] ite/tutoriel/ http://securite.developpez.com/cours/ Et bien d'autres sur Google.

Partager

www.siteduzero.com

Vous aimerez peut-être aussi