Pour sécuriser une machine, je commence par installer ma distribution favorite (Debian) avec le minimum requis pour un système de base en configurant bien tout ce qui est installé.
Ensuite, j'installe un kernel grsecurity ( http://www.grsecurity.org(...) ) patché par mes soins, je trouve que c'est l'un des meilleurs "patchs" pour la sécurité niveau noyau, mais il demande du temps afin de comprendre / analyser / configurer ses nombreuses options. Attention à bien choisir les options du noyau, que ce soit pour la configuration de grsecurity ou pour celles des options de base du noyau (ça ne sert à rien d'avoir des fonctionnalités en trop, par habitude, je n'utilise jamais les modules, je n'active pas leur support ...)
Apres l'étape de configuration du noyau, une bonne chose à faire est de passer gradm en mode "apprenant", de restreindre les privilèges / accès / ... de certains programmes ... (grsecurity permet vraiment beaucoup de chose, voici une documentation bien qu'elle date un peu : http://tigrou3tac.org/index.php?current=3&suite=1&article=3(...) )
Ensuite, je configure le firewall (iptables + IMQ pour la qos) qui ne laissera passer que ce qui est autorisé et ce dans les 2 sens.
Viens ensuite la configuration des services. J'essaye d'en chrooter le maximum possible, et c'est là qu'intervient grsecurity, il "renforce" les chroots ( je pense qu'un chroot n'est valable que sur une machine grsecurity, peut être avec d'autres patchs noyau aussi mais je ne les connais pas). Ne pas oublier de bien configurer ces services et de définir leur portée (réseau local ou disponible depuis internet ?) , les utilisateurs autorisés à s'y connecter ... Dans le cas où plusieurs programmes sont en concurrence pour proposer un service, une bonne démarche à suivre serait d'étudier leur mode de fonctionnement, de savoir quelle politique sécuritaire ils utilisent (par exemple pour proposer un service ftp, à-t-on besoin de toutes les options de proftpd ? vsftpd ne serait pas plus adapté ?).
A présent que tous les services sont installés, configurés et sécurisés au maximum de leurs possiblités, il faut penser à espionner la machine, ce qui passe par l'installation d'un NIDS, de processus de surveillance ... en vrac, j'utilise snort (avec oinkmaster pour la mise à jour des règles), cacti et nagios pour superviser un peu le réseau, tiger pour un audit de sécurité du système.
Une fois la machine proprement installée, il ne faut pas oublier de faire les mises à jour, de consulter les listes de bugs/vulnérabilités/... de tous les composants du système (noyau, prog, ...) et d'étudier les logs générés (qui peuvent être assez conséquent si vous activez les bonnes options de grsecurity, mais rien ne pourra vous échapper :)
Voilà pour mes habitudes de configuration au niveau de la sécurité, ce n'est surement pas la meilleure solution mais je pense que ça m'apporte une bonne protection, surtout pour un particulier.
Tout ça pour dire que j'aime bien grsecurity, que je le recommande et que j'aimerais bien avoir des retours d'expérience de son utilisation avec des noyaux 2.6.x.y .
# Ma sécurité
Posté par tigrou3tac . En réponse au journal Linux sécurisé, GRsecurity, RSBAC, PaX, SSP, libsafe, SElinux,.... Évalué à 3.
Ensuite, j'installe un kernel grsecurity ( http://www.grsecurity.org(...) ) patché par mes soins, je trouve que c'est l'un des meilleurs "patchs" pour la sécurité niveau noyau, mais il demande du temps afin de comprendre / analyser / configurer ses nombreuses options. Attention à bien choisir les options du noyau, que ce soit pour la configuration de grsecurity ou pour celles des options de base du noyau (ça ne sert à rien d'avoir des fonctionnalités en trop, par habitude, je n'utilise jamais les modules, je n'active pas leur support ...)
Apres l'étape de configuration du noyau, une bonne chose à faire est de passer gradm en mode "apprenant", de restreindre les privilèges / accès / ... de certains programmes ... (grsecurity permet vraiment beaucoup de chose, voici une documentation bien qu'elle date un peu : http://tigrou3tac.org/index.php?current=3&suite=1&article=3(...) )
Ensuite, je configure le firewall (iptables + IMQ pour la qos) qui ne laissera passer que ce qui est autorisé et ce dans les 2 sens.
Viens ensuite la configuration des services. J'essaye d'en chrooter le maximum possible, et c'est là qu'intervient grsecurity, il "renforce" les chroots ( je pense qu'un chroot n'est valable que sur une machine grsecurity, peut être avec d'autres patchs noyau aussi mais je ne les connais pas). Ne pas oublier de bien configurer ces services et de définir leur portée (réseau local ou disponible depuis internet ?) , les utilisateurs autorisés à s'y connecter ... Dans le cas où plusieurs programmes sont en concurrence pour proposer un service, une bonne démarche à suivre serait d'étudier leur mode de fonctionnement, de savoir quelle politique sécuritaire ils utilisent (par exemple pour proposer un service ftp, à-t-on besoin de toutes les options de proftpd ? vsftpd ne serait pas plus adapté ?).
A présent que tous les services sont installés, configurés et sécurisés au maximum de leurs possiblités, il faut penser à espionner la machine, ce qui passe par l'installation d'un NIDS, de processus de surveillance ... en vrac, j'utilise snort (avec oinkmaster pour la mise à jour des règles), cacti et nagios pour superviser un peu le réseau, tiger pour un audit de sécurité du système.
Une fois la machine proprement installée, il ne faut pas oublier de faire les mises à jour, de consulter les listes de bugs/vulnérabilités/... de tous les composants du système (noyau, prog, ...) et d'étudier les logs générés (qui peuvent être assez conséquent si vous activez les bonnes options de grsecurity, mais rien ne pourra vous échapper :)
Voilà pour mes habitudes de configuration au niveau de la sécurité, ce n'est surement pas la meilleure solution mais je pense que ça m'apporte une bonne protection, surtout pour un particulier.
Tout ça pour dire que j'aime bien grsecurity, que je le recommande et que j'aimerais bien avoir des retours d'expérience de son utilisation avec des noyaux 2.6.x.y .