Bezpieczeństwo każdego systemu jest bardzo ważne; może zapobiec atakom ludzi na twoj komputer, jak również ochronić ważne dane. Rozdział ten jest w całości o tym jak rozpocząć zabezpieczanie Slackware przed niepożądanymi interwencjami z zewnątrz. Zapamiętaj że to tylko wprowadzenie do zabezpieczania systemu; zabezpieczanie to proces nie stan.
Pierwszym krokiem po instalacji Slackware powinno być wyłączenie wszystkich usług, których nie potrzebujesz. Każda usługa może potencjalnie powodować zagrożenie bezpieczeństwa, więc jest to ważne aby uruchamiać tak mało usług jak tylko to możliwe. Usługi sa uruchamiane głównie z dwóch miejsc - inetd i skryptów startowych (ang. init scripts)
Wiele daemonów dostarczanych z Slackware uruchamiane jest z inetd(8). inetd jest daemonem, który nasłuchuje na wszystich portach używanych przez usługi, które zostały skonfigurowane by przez niego być uruchamiane. W momencie nadejścia połączenia tworzona jest instancja odpowiedniego daemona. Daemony uruchamiane przez inetd mogą być wyłączone przez zakomentowanie odpowiednich linii w /etc/inetd.conf. Aby to zrobić otwórz plik w ulubionym edytorze (np. vi). Zobaczysz linijki podobne do tej:
telnet stream tcp nowait root /usr/sbin/tcpd in.telnetd |
Możesz wyłączyć tą usługę i wszstkie inne, których nie potrzebujesz, komentując je (dodając symbol # (hash) na początku linii). Powyższa linia będzie wyglądać:
#telnet stream tcp nowait root /usr/sbin/tcpd in.telnetd |
Po zrestartowaniu inetd, usługa ta będzie wyłączona. Możesz zrestartować inetd komendą:
# kill -HUP $(cat /var/run/inetd.pid) |
Pozostałe usługi uruchamiane podczas startu systemu, wywoływane są przez skrypty startowe (które znajdują się w /etc/rc.d/). Można je wyłączyć na dwa różne sposoby - przez usunięcie praw do wykonywania odpowiedniego skryptu lub zakomentowanie odpowiedniej linii w skrypcie.
Na przykład, SSH uruchamiane jest przez własny skrypt (/etc/rc.d/rc.sshd). Możesz go wyłączyć przez:
# chmod -x /etc/rc.d/rc.sshd |
W przypadku gdy usługa nie ma swojego skryptu startowego, wyłączenie jej może odbyć się przez zakomentowanie odpowiednich linii. Na przykład daemon portmap jest uruchamiany przez poniższe wywołanie w pliku /etc/rc.d/rc.inet2:
# This must be running in order to mount NFS volumes. # Start the RPC portmapper: if [ -x /sbin/rpc.portmap ]; then echo "Starting RPC portmapper: /sbin/rpc.portmap" /sbin/rpc.portmap fi # Done starting the RPC portmapper. |
Można ho wyłączyć przez dodanie symbolu # na początku linii, które jeszcze go nie posiadają, na przykład:
# This must be running in order to mount NFS volumes. # Start the RPC portmapper: #if [ -x /sbin/rpc.portmap ]; then # echo "Starting RPC portmapper: /sbin/rpc.portmap" # /sbin/rpc.portmap #fi # Done starting the RPC portmapper. |
Zmiany te odniosą sukces po restarcie albo po przełączeniu sie spowrotem na runlevel 3 lub 4 (po wcześniejszym wejściu na runlevel 1). Możesz to zrobic wpisując w konsoli (po zmianie runlevela konieczne jest ponowne logowanie):
# telinit 1 # telinit 3 |