Es ist nicht nur eine Frage der Sicherheit, wenn man manche Dienste in seinem System nicht einfach frei herumlaufen, sondern in einem chroot laufen läßt. Wir kennen debootstrap bereits als zuverlässige und vorallem einfache Methode um kleine chroots zu erstellen, in denen eine Debian-Umgebung läuft.
Doch rpm basierte Distributionen bieten leider nicht diesen Komfort, auch wenn sie genauso verbreitet sind. In meinem Fall handelt es sich um eine CentOS Umgebung, welche ich für diverse Tests benötige. CentOS verwendet, genauso wie die Ursprungsdistribution von RedHat RPM Pakete um ihre Software zu verteilen, welche sich in meinem Fall nicht so einfach emergen lassen werden.
Da das RPM Format eigentlich nur ein Archiv darstellt, mit welchem noch Abhängigkeiten, Beschreibungen und Digests mitgeliefert werden, habe ich eigentlich mehr als ich brauche.
Mit kleinen Helfern wie rpm2tar lassen sich die enthaltenen Dateien problemlos entpacken. Mein erstes Ziel, eine lauffähige Shell zu bekommen und die Paketmanager rpm und yum zum Laufen zu bringen, was mit einigen Paketen und etwas Geduld verbunden ist. Damit rpm seinen Dienst aufnehmen kann, wird die Datenbank initialisiert und man kann die fehlenden Pakete schließlich von entsprechenden Repositories nachwerfen.
Wie in jedem chroot wo ein mehr oder minder ausgewachsenes System haust gilt es dann die Konfigurationen anzupassen und eigene Start-Skripe zu basteln, die dann von Aussen die Dienste im chroot starten.
Van Mode says:
Was kann man sonst noch tun, um Eindringlinge zu entdecken?
Stargazer says:
Beim chrooten geht es nicht darum, Eindringlinge zu finden, sondern nur um den Schaden den jemand anrichten kann zu minimieren. Um Eindringlinge zu finden, bedarf es meist etwas mehr, wie z.B. Prüfsummen über Dateien und ein Auswerten der Logfiles. Aber das ist wieder ein Thema für sich.