Fragen zur Gentoo Hardened Installation

FreeBSD, Gentoo, openSUSE, CentOS, Ubuntu, Debian
theomega
Userprojekt
Userprojekt
Posts: 704
Joined: 2003-01-27 14:36

Fragen zur Gentoo Hardened Installation

Post by theomega » 2006-06-23 18:45

Hallo Leute,
ich versuche hier auf einem Server eine Gentoo-Hardened-Installation aufzusetzten so ähnlich wie im Wiki beschrieben. Dabei sind aber folgende Fragen aufgetaucht:

1. Bei dem Befehl "emerge eselect-compiler gcc" kommt es zu folgendem Fehler:

Code: Select all

 / # emerge eselect-compiler gcc
Calculating dependencies... done!
>>> Emerging (1 of 3) app-admin/eselect-compiler-2.0.0_rc2 to /
>>> checking ebuild checksums ;-)
>>> checking auxfile checksums ;-)
>>> checking miscfile checksums ;-)
>>> checking eselect-compiler-2.0.0_rc2.tar.gz ;-)
rm: cannot remove `binpath=/usr/i386-pc-linux-gnu/gcc-bin/3.4.4': No such file or directory
 * We weren't able to find a valid eselect compiler profile for default.
 * Please do the following to re-emerge gcc, then retry emerging
 * eselect-compiler:
 * # emerge -v --oneshot sys-devel/gcc

!!! ERROR: app-admin/eselect-compiler-2.0.0_rc2 failed.
Call stack:
  ebuild.sh, line 1556:   Called dyn_setup
  ebuild.sh, line 668:   Called pkg_setup
  eselect-compiler-2.0.0_rc2.ebuild, line 32:   Called die

!!! Missing eselect-compiler profile for default
!!! If you need support, post the topmost build error, and the call stack if relevant.
Ich habe die Reihenfolge der Pakete nun umgedreht und erst den GCC und dann das eselect gepackt.

2. Ist es normal das man in der make.conf vom default "i386" auf ein "i686" CHOST ändert? Nur dann ist es überhaupt möglich die glibc zu kompilen, also muss das eigentlich richtig sein. Ich meine aber irgendwo gelesen zu haben dass mann das nicht änder sollte.

3. Der GCC 4.1 soll ja vor allem unter Gentoo zusätzliche Geschwindigkeitsvorteile bieten. Ist es überhaupt sinnvoll diesen einzusetzten und wenn ja, wie läuft die Installation ab. Auf einem "Non-Hardnened"-System ist mir das klar, nur wie erhalte ich eine ordentlichen Toolchain?

4. Die in der Default beschriebenen FEATURES in der make.conf verursachen auf meinem System zumindest reihenweise Fehlermeldungen und Abbrüche. Ich habe die FEATURES mal gekürzt so das alles funktioniert: "autoconfig sandbox sfperms strict". Teilweise waren die in dem Beispiel ja in der Doku sowiso mit "default-wert" markiert.


Ich danke erstmal
TO

keepoer
Posts: 57
Joined: 2005-10-17 14:47

Re: Fragen zur Gentoo Hardened Installation

Post by keepoer » 2006-06-23 18:59

Hi,
also 1. scheint ja zu laufen. Dennoch auch mal die Ausgaben von emerge lesen :wink:

Code: Select all

 * We weren't able to find a valid eselect compiler profile for default.
 * Please do the following to re-emerge gcc, then retry emerging
 * eselect-compiler:
 * # emerge -v --oneshot sys-devel/gcc 
zu 2.: Du musst den Compiler nicht unbedingt ändern, ist aber empfehlenswert. i386 unterstützt selbst noch 386er, i686 alles ab PII. Somit ist das System besser an deine Architektur angepasst. Sobald deine Toolchain angepasst wurde, solltest du eigentlich alles emergen können

zu 3. genau wie du immer eine neue Toolschain baust:

Code: Select all

emerge gcc binutils glibc && emerge -e system && emerge -e world
zu 4. kann ich nicht viel sagen, da deine Infos recht lchrtig waren.

User avatar
Joe User
Project Manager
Project Manager
Posts: 11599
Joined: 2003-02-27 01:00
Location: Hamburg

Re: Fragen zur Gentoo Hardened Installation

Post by Joe User » 2006-06-23 19:03

1) Ist ein Bug im Wiki und wird korrigiert.
2) Es wird zwar bei stage[23]-Installationen davon abgeraten, wenn man sich an die Reihenfolge der zu (re)kompilierenden Pakete hält (siehe Wiki) und das vollständige System rekompiliert, ist die Warnung hinfällig.
3) GCC-4.x ist für Hardened unter Anderem auf Grund der nun OOTB enthaltenen, aber mit einigen essentiellen Paketen (Toolchain) noch inkompatiblen, SSP/PIE-Funktionen nicht verfügbar.
4) Die FEATURES sandbox, userpriv und usersandbox sind momentan leider etwas buggy, insbesondere die Courier-* und einige Multimedia-Pakete sind hiervon betroffen. Da hilft nur vorübergehendes Deaktivieren, auch wenn es schmerzt.
PayPal.Me/JoeUserFreeBSD Remote Installation
Wings for LifeWings for Life World Run

„If there’s more than one possible outcome of a job or task, and one
of those outcomes will result in disaster or an undesirable consequence,
then somebody will do it that way.“ -- Edward Aloysius Murphy Jr.

theomega
Userprojekt
Userprojekt
Posts: 704
Joined: 2003-01-27 14:36

Re: Fragen zur Gentoo Hardened Installation

Post by theomega » 2006-06-23 19:15

Gbit es eigentlich eine ordentliche Doku zu den FEATURES? Bringen die im Endergebniss, also dem comilierten Programm einen Unterschied? So wie ich das sehe sind das ja hauptsächlich Funktionen um die Sicherheits des Compiles zu erhöhen, oder nicht?

Und wegen 1.: Was heißt: "Wird korrigiert?" Also die Reihenfolge umgedreht oder mehr?

Und ich hab noch ne komische Sache gefunden:

Code: Select all

rescue / # rm -r /usr/{,bin,lib/ccache/bin,lib/gcc,share/gcc-data}/i386-pc-linux-gnu*
rescue / # rm -r /etc/eselect/compiler/i386-pc-linux-gnu* /usr/bin/gcc-3.4.4
rescue / # rm -r /etc/env.d/{,gcc/}*x86_64-pc-linux-gnu /usr/lib/gcc-lib
rm: cannot remove `/etc/env.d/*x86_64-pc-linux-gnu': No such file or directory
rm: cannot remove `/usr/lib/gcc-lib': No such file or directory
Der letzte rm-Befehl scheint zu scheitern. Ist das egal oder woran liegts?

Inhalt von /etc/env.d:

Code: Select all

00basic  05binutils  05compiler  05portage.envd  25eselect-compiler  50ncurses  70less  99libstdc++  binutils  gcc
von /etc/env.d/gcc

Code: Select all

config                   i686-pc-linux-gnu-3.4.6-hardenednopie     i686-pc-linux-gnu-3.4.6-hardenednossp
i686-pc-linux-gnu-3.4.6  i686-pc-linux-gnu-3.4.6-hardenednopiessp  i686-pc-linux-gnu-3.4.6-vanilla

User avatar
Joe User
Project Manager
Project Manager
Posts: 11599
Joined: 2003-02-27 01:00
Location: Hamburg

Re: Fragen zur Gentoo Hardened Installation

Post by Joe User » 2006-06-23 19:19

Zu 1): Ja, wird umgedreht.

Die FEATURES müssten im Handbuch und in /etc/make.conf.example erläutert sein, bin gerade zu faul zum Nachsehen ;)
PayPal.Me/JoeUserFreeBSD Remote Installation
Wings for LifeWings for Life World Run

„If there’s more than one possible outcome of a job or task, and one
of those outcomes will result in disaster or an undesirable consequence,
then somebody will do it that way.“ -- Edward Aloysius Murphy Jr.

theomega
Userprojekt
Userprojekt
Posts: 704
Joined: 2003-01-27 14:36

Re: Fragen zur Gentoo Hardened Installation

Post by theomega » 2006-06-23 19:21

Hy,
leider werden nicht alle Features erläutert, aber so wie es aussieht geht es vor allem darum die Sicherheit während des Compilens zu erhöhen und fehlerhafte Builds zu verhindern. Siehe auch meinen Edit oben

Gruß und Dank
TO

User avatar
Joe User
Project Manager
Project Manager
Posts: 11599
Joined: 2003-02-27 01:00
Location: Hamburg

Re: Fragen zur Gentoo Hardened Installation

Post by Joe User » 2006-06-23 19:21

Die rm's stammen noch aus der Zeit vor eselect-compiler und werden ebenfalls beim nächsten Update aus dem Wiki entfernt. Einfach ignorieren.
PayPal.Me/JoeUserFreeBSD Remote Installation
Wings for LifeWings for Life World Run

„If there’s more than one possible outcome of a job or task, and one
of those outcomes will result in disaster or an undesirable consequence,
then somebody will do it that way.“ -- Edward Aloysius Murphy Jr.

theomega
Userprojekt
Userprojekt
Posts: 704
Joined: 2003-01-27 14:36

Re: Fragen zur Gentoo Hardened Installation

Post by theomega » 2006-06-25 21:27

Danke an Joe User, mein Gentoo-System läuft zumindest in der Basis. Habe es gleich mit LVM gemacht nachdem Isotop so darauf schwört und es mir extrem praktisch erscheint. Der Kernel hat von Anfang an gebootet (war für mich der spandendste Teil, weil SATA benötigt, aber lief problemlos). Als Dateisystem habe ich ReiserFS gewählt, habe damit auf meinem Homeservern gute Erfahrungen gemacht.

Ich muss mich aber mal erstmal in den GRSec und die anderen Sicherheitsmerkmale einlesen. Kennt jemand eine gute Seite dafür? IMHO war in einer IX im letzten Jahr ein Artikel drin, müsste ich mal raussuchen. Sonst noch einen Tipp?

Danke
TO