Base de la sécurité sous Linux


On a probablement dû vous dire qu’il ne fallait jamais se logguer en tant que “root”, mais plutot en se loggant avec un user normal et devenir root par la commande su. Vous pouvez restreindre les utilisateurs qui pourront utiliser la commande su.

Dans le fichier /etc/suauth ajouter la ligne :

root:ALL EXCEPT GROUP wheel:DENY

Cette nouvelle ligne requiert que l’utilisateur soit membre du groupe wheel avant d’utiliser su. Pour plus d’infos, man /etc/suauth pour plus d’options. Vous obtiendrez les les mêmes résultats en utilisant PAM (voir plus loin)

Vérifiez que cette ligne est décommentez : (dans /etc/login.defs)

SYSLOG_SU_ENAB yes

C’est pour être sur que toute activité de su est loggué. (normalement syslog le fait automatiquement, mais soyons sûr)

Vous pouvez aussi activer le système de log de su en décommentant cette ligne :

SULOG_FILE /var/log/sulog

Vous pouvez aussi configurer sudo en utilisant la commande visudo, qui ouvre le fichier de configuration /etc/sudoers dans une session spéciale de vi

Pour plus d’infos voir man sudo.


Les services

Les services sont une source d’ennuis pour les admins. En effet, certains sont inutiles, or plus vous avez de services qui tournent, plus le risque d’être pénétré est grand. Vous devez activer seulement les services dont vous avez besoin.

Pour voir la liste des processus qui sont actuellement sur votre machine :

ps -aux | less

Pour avoir en plus la liste des services et les ports écoutés :

netstat -atu

Examinez la sortie et choississez ceux qui vous sont utiles.

Beaucoup de services réseaux sont initialisés par la daemon “Internet superserver daemon” alias inetd. Configurer dans /etc/inetd.conf , vous pouvez empechez les services de se lançer en le commentant (ajouter un # au début de la ligne) Exemple :

echo stream tcp nowait root internal

Vous pouvez aussi remplacer inetd par xinetd, qui est beaucoup plus récent et sécurisé.

Votre script de boot (qui dépend de votre distrib) lançe aussi des servives au démarrage. Vous devez alors les vérifier pour cerner sont qui vous sont utiles ou non. Pour la distrib Red Hat vous avez l’utilitaire chkconfig.

 chkconfig —list

vous montre quels deamons sont chargés et à quel level.

Utilisez alors l’option —del pour éteindre ce service. Exemple, pour désactiver routed :

chkconfig —del routed

Notez que tous les services ne sont pas forcément visibles dans chkconfig. On procède alors en supprimant le liens dans le repertoire correspondant aux différent level…. pas très clair ?! Exemple : /etc/rc.d/rc3.d/S50inet C’est suffisant pour supprimer juste le lien ; gardez le fichier du service au cas où vous aimeriez le relançer plus tard…

Du coté de Slackware, vérifier les scipts sous /etc/rc.d, et de la meme façon commantez les débuts de ligne qui vous sont inutiles, ou bien la solution plus radicale (mais peut etre encore plus sûre ?!) : supprimer l’éxécution du script approprié avec cette commande : (exemple avec sendmail)

chmod a-x /etc/rc.d/rc.sendmail

Une fois que vous avez fais votre ménage dans vos services, rebootez. Puis lançez la commande ps et netstat (donnés plus haut) pour vérifier ce qui tourne encore, et recommencez cela autant de fois que nécessaire pour qu’il ne reste plus que le minimun de process utiles.

De façon générale, la désactivation d’un démon est relativement simple.

Il y a différentes méthodes :

  1. supprimer les liens de /etc/rc${runlevel}.d/
  2. re-nommer les liens (de sorte qu’ils ne commencent pas avec « S »)
  3. donner un autre nom au script /etc/init.d/_nom_service_, (par exemple /etc/init.d/OFF._nom_service_)
  4. retirer le droit d’exécution (-x) du fichier /etc/init.d/_nom_service_
  5. modifier le script /etc/init.d/_nom_service_ pour qu’il s’arrête immédiatement.

Par exemple, vous pouvez désactiver l’exécution d’un service dans le niveau d’exécution multi-utilisateur en faisant :

update-rc.d stop XX 2 3 4 5

Source : http://Ethneo.free.fr


^ Haut de Page ^

RSS ~ Copyright 2004-2008 © Linucie - Asso. Loi 1901 - CNIL : 1045544 - Notre hébergeur : APINC.org
Publication sous Licence GNU/FDL propulsée par PmWiki - XHTML 1.0, CSS 2.1, WAI.