# [hardened] quel profile utiliser ?

## loopx

Bonsoir, 

Je suis confu ... J'ai mis à jour mon serveur et oh  :Surprised:    crénondidju! Je me suis appercu que mon compilateur (qui était avant un GCC 4.x) est maintenant 3.4 !!! Comment Pourquoi !!!! 

Après avoir cherché, j'ai compris que tout était lié au profile. J'ai donc changé de profile mais je ne vois pas ce que je dois utiliser en hardened (mon kernel est hardened) et je me suis appercu que certain use entre parenthèse activait le hardened.

Voici mes profiles :

```

serveur loopx # eselect profile list

Available profile symlink targets:

  [1]   default-linux/x86/2007.0

  [2]   default-linux/x86/2007.0/desktop

  [3]   hardened/x86/2.6

  [4]   selinux/2007.0/x86

  [5]   selinux/2007.0/x86/hardened

  [6]   default/linux/x86/2008.0

  [7]   default/linux/x86/2008.0/desktop

  [8]   default/linux/x86/2008.0/developer

  [9]   default/linux/x86/2008.0/server *

  [10]  hardened/linux/x86

```

Avant, j'étais sur le 10, maintenant j'ai pris le 9 car je sais pas ce que je dois prendre ... Car je veux un GCC 4 et pas 3! Donc, voilà, ok ... j'ai un bon compilateur mais maintenant, mon apache2 est cassé  :Sad: 

```

serveur loopx # /etc/init.d/apache2 restart

 * Apache2 has detected a syntax error in your configuration files:

apache2: Syntax error on line 175 of /etc/apache2/httpd.conf: Syntax error on line 4 of /etc/apache2/modules.d/70_mod_php5.conf: Cannot load /usr/lib/apache2/modules/libphp5.so into server: /usr/lib/apache2/modules/libphp5.so: cannot make segment writable for relocation: Permission denied

```

Cette erreur est lié à PaX (de hardened) et donc, forcément, ca ne peut venir que du profile vu que certain use entre parenthèse (hardened) ne sont plus activé depuis mon changement de profile. Je suis tombé la desssus (ce qui m'a mis la puce à l'oreil) : http://www.gentoo.org/proj/en/hardened/hardenedfaq.xml

Donc, avant d'aller plus loin, quelle profile faut-il choisir pour le hardened en 2008/2009 ? Le 3ème ?

----------

## loopx

Je m'auto-répond sans avoir vraiment si ca changera quelques chose. J'ai choisi le profile hardened 2.6 x86 et j'ai toujours le meme compilateur (gcc4.1) et les use "hardened" (entre parenthèse) ont été réactivé ainsi que d'autre tel que "pic" pour php. Cela devrait en principe résoudre le problème  :Wink: 

Faut attendre de voir si ca fonctinone, 26 packet à recompiler sur un p3 500 ... dont glibc ... 

w&s

----------

## scherz0

 *loopx wrote:*   

> Bonsoir, 
> 
> Je suis confu ... J'ai mis à jour mon serveur et oh    crénondidju! Je me suis appercu que mon compilateur (qui était avant un GCC 4.x) est maintenant 3.4 !!! Comment Pourquoi !!!
> 
> 

 

Il me semble que gcc 4.x est masqué.

 *Quote:*   

> 
> 
> Donc, avant d'aller plus loin, quelle profile faut-il choisir pour le hardened en 2008/2009 ? Le 3ème ?
> 
> 

 

Sur mes systèmes construits à partir de stage3-hardened, le profil est hardened/x86/2.6

----------

## loopx

Non, le gcc n'est pas masqué ... Have a look at this :

```

serveur loopx # eselect profile show ; gcc-config -l ; emerge -pv gcc ; cat /etc/portage/package.* | grep gcc

Current make.profile symlink:

  /usr/portage/profiles/hardened/x86/2.6

 [1] i686-pc-linux-gnu-3.4.6

 [2] i686-pc-linux-gnu-3.4.6-hardenednopie

 [3] i686-pc-linux-gnu-3.4.6-hardenednopiessp

 [4] i686-pc-linux-gnu-3.4.6-hardenednossp

 [5] i686-pc-linux-gnu-3.4.6-vanilla

 [6] i686-pc-linux-gnu-4.1.2 *

These are the packages that would be merged, in order:

Calculating dependencies \^C

Exiting on signal 2

serveur loopx #

serveur loopx #

serveur loopx # eselect profile show ; gcc-config -l ; emerge -pv gcc ; cat /etc/portage/package.* | grep gcc ; echo "fini :)"

Current make.profile symlink:

  /usr/portage/profiles/hardened/x86/2.6

 [1] i686-pc-linux-gnu-3.4.6

 [2] i686-pc-linux-gnu-3.4.6-hardenednopie

 [3] i686-pc-linux-gnu-3.4.6-hardenednopiessp

 [4] i686-pc-linux-gnu-3.4.6-hardenednossp

 [5] i686-pc-linux-gnu-3.4.6-vanilla

 [6] i686-pc-linux-gnu-4.1.2 *

These are the packages that would be merged, in order:

Calculating dependencies... done!

[ebuild   R   ] sys-devel/gcc-3.4.6-r2  USE="gtk hardened nls (-altivec) -bootstrap -boundschecking -build -d -doc -fortran -gcj -ip28 -ip32r10k -libffi (-multilib) -multislot (-n32) (-n64) -nocxx -nopie -nossp -objc -test -vanilla" 27,700 kB

Total: 1 package (1 reinstall), Size of downloads: 27,700 kB

fini :)

```

Rah put1 de merde!  :Sad: 

Jvais devoir refaire un -e :'(  :Sad:  :Sad:  :Sad:     quand est-ce qu'il sortira ce 4.1  :Surprised:   :Sad:       vais changer de profile gcc  :Sad:  :'(  :Sad:  :s

 :Arrow: 

EDIT: pour gcc, faut-il prendre un profile hardened ? lequel ? c'est quoi la différence ?

----------

## scherz0

 *loopx wrote:*   

> Non, le gcc n'est pas masqué ... Have a look at this :
> 
> 

 

Si si, have a look at portage/profiles/hardened/package.mask  :Wink: 

 *Quote:*   

> 
> 
>  [1] i686-pc-linux-gnu-3.4.6
> 
>  [2] i686-pc-linux-gnu-3.4.6-hardenednopie
> ...

 

oui, prendre le [1], les autres sont des versions "allégées' à utiliser pour compiler les codes qui bricolent trop l'adressage pour pouvoir supporter pie et ssp.  À propos de pie et ssp, cf http://www.gentoo.org/proj/en/hardened/pie-ssp.xml

Concernant apache, jamais eu le moindre problème avec 1.3, 2.0 et 2.2.  Mais je n'ai jamais tenté de mélanger du hardened et non hardened, pas plus que gcc3 et gcc4.   Donc je ne pourrai probablement pas aider plus, désolé...

----------

## sd44

je confirme, gcc 4 est masqué en hardened, ou alors faut allez voir du coté de l'overlay, j'ai dû downgradé a gcc 3.4.6 et recompiler le bazard (emerge -e system && emerge -e world)

je suis en profile hardened/x86/2.6

j'ai fait quelques post il n'y a pas si longtemps.

----------

## loopx

Ben fait, je l'avais compilé quand j'avais pris le mauvais profile, et j'ai décidé de le garder ...   :Embarassed:   c'est grave docteur ?

----------

## sd44

gcc doit erte compilé avec la use hardened et le system doit etre compilé avec ce nouveau gcc, et oublie pas le kernel hardened

----------

