Hardened Gentoo/fr

Gentoo durci (Gentoo Hardened) est un projet Gentoo qui offre de nombreux services de sécurité qui s'ajoutent à l'installation bien connue de Gentoo Linux. Bien que chacune d'elles puisse être sélectionnée individuellement, Gentoo Hardened active plusieurs options d'atténuation du risque dans la chaîne des outils et prend en charge PaX, grSecurity, SE Linux, TPE et plus encore.

Que vous utilisiez un serveur Internet ou une station de travail flexible, lorsque vous devez faire face à de multiples menaces, vous souhaitez durcir votre système au delà de la simple application des correctifs de sécurité « Durcir » un système signifie que vous prenez des mesures additionnelles contre les attaques et contre d'autres risques. Cela se combine le plus souvent avec un ensemble d'actions que vous faites sur le système.

Dans Gentoo Hardened, plusieurs projets sont actifs pour vous aider à durcir votre système Gentoo via :
 * L'activation d'options dans la chaîne des outils (compilateur, éditeur de liens ...) comme le forçage d'exécutables indépendants de la position (PIE), la protection de la pile contre les débordements et des vérifications de tampons en compilation.
 * L'activation des extensions PaX dans le noyau Linux, qui apporte des mesures de protection additionnelles comme la distribution aléatoire de l'espace mémoire et la mémoire non exécutable.
 * L'activation des extensions grSecurity dans le noyau Linux, y compris les restrictions additionnelles sur le changement de racine, des audits additionnels, des restrictions de processus, etc..
 * L'activation des extensions SELinux dans le noyau Linux, qui offre un système de contrôle d'accès obligatoire qui améliore les restrictions dues aux droits d'accès standards de Linux.
 * L'activation des technologies relatives à l'Intégrité comme l'architecture de mesure de l'intégrité, pour rendre les systèmes capables de récupérer des altérations consécutives aux attaques.


 * Enabling specific options in the toolchain (compiler, linker ...) such as forcing position-independent executables (PIE), stack smashing protection and compile-time buffer checks.
 * Enabling PaX extensions in the Linux kernel, which offer additional protection measures like address space layout randomization and non-executable memory.
 * Enabling grSecurity extensions in the Linux kernel, including additional chroot restrictions, additional auditing, process restrictions, etc..
 * Enabling SELinux extensions in the Linux kernel, which offers a Mandatory Access Control system enhancing the standard Linux permission restrictions.
 * Enabling Integrity related technologies, such as Integrity Measurement Architecture, for making systems resilient against tampering

Bien entendu, ceci inclut les utilitaires de l'espace utilisateur nécessaires à la gestion de ces extensions.

Commuter vers un profil durci
Choisissez un profil durci, de telle manière que la « gestion des paquets » soit faite d'une manière durcie.

En choisissant le profil durci, certaines options de la gestion des paquets (masques, options de la variable USE, etc.) deviennent des valeurs par défaut pour votre système. Ceci concerne de nombreux paquets, y compris la chaîne des outils. Cette chaîne des outils est utilisée pour la construction/compilation de vos programmes, et comprend : la suite des compilateurs GNU (GCC), binutils (éditeur de liens, etc.), et la bibliothèque GNU C (glibc). En réinstallant la chaîne des outils, ces nouvelles options lui sont appliquées, pour permettre la future « compilation des paquets » d'une manière durcie.

Les commandes précédentes recompilent GCC, qui peut alors être utilisé pour des compilations durcies. Soyez sûr que l'option « hardened » est activée pour GCC.

Dans l'exemple de sortie ci-dessus, le profil durci (hardened) GCC est sans suffixe. Si vous voulez désactiver PIE ou SSP, choisissez le hardenedno(pie|ssp) ou les deux, hardenednopiessp. Le profil vanilla est bien-sûr celui avec le durcissement désactivé. Pour finir, « sourcez » vos nouveaux réglages de profil :

Si vous utilisez le paquet « prelink », retirez-le car il est incompatible avec le profil durci :

Vous pouvez maintenant réinstaller tous les paquets avec votre nouvelle chaîne d'outils durcie.

Installez les sources durcies du noyau (hardened) de telle manière que votre noyau *gère votre système en cours* d'une façon durcie (en particulier en ayant recours à PaX) :

Maintenant configurez/compilez les sources et ajoutez le nouveau noyau à votre gestionnaire de démarrage (par exemple, GRUB).

Hardened Gentoo/Changement de racine Grsecurity
Si vous voulez changer de racine vers un environnement copié où CONFIG_GRKERNSEC_CHROOT est activé, vous devez utiliser le grub du cd et changer les paramètres root(cd) noyau(cd) initrd(cd) de (cd) en (hdx,y).

Vous pouvez alors installer l'environnement grub.

Réglages de durcissement par paquet
Changer le profil GCC pour des paquets spécifiques peut s'avérer compliqué. Une manière d'éviter cela est de fixer une option C(XX) par paquet via package.env. Créez le fichier et ajoutez-y ceci :

Pour permettre la désactivation de PIE, créez et ajoutez ceci à :

Pour finir, ajoutez le paquet pour lequel vous voulez désactiver soit PIE, soit SSP, à et au fichier  (où filename est le nom du fichier concerné), pour cet exemple,  est utilisé :

Voir aussi
Pour des informations complémentaires, consultez:
 * Gentoo Hardened Project
 * Gentoo Hardened SELinux Project
 * Project:Hardened/Grsecurity2_Quickstart
 * Project:Hardened/PaX_Quickstart


 * Gentoo Hardened SELinux Project
 * Project:Hardened/Grsecurity2_Quickstart
 * Project:Hardened/PaX_Quickstart

Ressources externes

 * http://www.rockfloat.com/howto/gentoo-hardened.html#kernel