dselect
alle nicht benötigten, aber ausgewählten Pakete, bevor Sie [I]nstallation wählen. Belassen Sie nur die absolut notwendige Software auf dem System.
Lilo
.
$ ps aux $ netstat -pn -l -A inet # /usr/sbin/lsof -i | grep LISTENDamit das dritte Kommando funktioniert, werden Sie lsof-2.2 installieren müssen (und es als Root laufen lassen). Beachten Sie, dass
lsof
das Wort LISTEN passend zu Ihrer Lokalisation übersetzen kann.
lsof
und dpkg
verwendet, macht genau das:
#!/bin/sh # FIXME: this is quick and dirty; replace with a more robust script snippet for i in `sudo lsof -i | grep LISTEN | cut -d " " -f 1 |sort -u` ; do pack=`dpkg -S $i |grep bin |cut -f 1 -d : | uniq` echo "Service $i is installed by $pack"; init=`dpkg -L $pack |grep init.d/ ` if [ ! -z "$init" ]; then echo "and is run by $init" fi done
dpkg --purge
). Oder benutzen Sie update-rc.d
(siehe Abschnitt 3.5.1, „Daemons abschalten“), um ihn aus dem Start-Prozess zu entfernen.
/etc/inetd.conf
aktiviert sind. Verwenden Sie dazu Folgendes:
$ grep -v "^#" /etc/inetd.conf | sort -uDeaktivieren Sie dann diejenigen Dienste, die Sie nicht benötigen, indem Sie die Zeile in
/etc/inetd.conf
auskommentieren, das Paket entfernen, oder indem Sie update-inetd
benutzen.
/usr/sbin/tcpd
benutzen), prüfen Sie, ob die Dateien /etc/hosts.allow
und /etc/hosts.deny
passend zu Ihrer Richtlinie für die Dienste konfiguriert sind.
# init 1 (....) # init 2
# for i in `/usr/sbin/lsof -i |grep LISTEN |cut -d " " -f 1 |sort -u`; \ > do user=`ps ef |grep $i |grep -v grep |cut -f 1 -d " "` ; \ > echo "Dienst $i läuft als Benutzer $user"; doneÜberlegen Sie, ob Sie diese Dienste einem bestimmten Benutzer oder Gruppe zuweisen wollen und sie vielleicht auch in eine chroot-Umgebung einsperren wollen, um die Sicherheit zu erhöhen. Sie können dies tun, indem Sie die
/etc/init.d
-Skripte ändern, die den Dienst starten. Die meisten Dienste benutzen unter Debian start-stop-daemon
, der die dafür Optionen (--change-uid
und --chroot
) zur Verfügung stellt. Ein paar warnende Worte zum Einsperren in eine chroot
-Umgebung: Sie müssen alle Dateien, die durch das Paket des Dienstes installiert wurden (verwenden Sie dpkg -L), und alle Pakete, von denen es abhängt, in die Chroot
-Umgebung legen. Informationen, wie das Programm ssh
in eine chroot
-Umgebung eingesperrt wird, finden Sie unter Abschnitt B.7, „Chroot-Umgebung für SSH“.