Pingwin w opałach

Domyślnie zainstalowany Linuks nie musi wcale być bezpieczniejszy od innych systemów. Poświęcając jedno popołudnie możemy jednak uczynić ze swojego komputera twierdzę nie do zdobycia.

Słusznie czy nie, panuje opinia, że Microsoft Windows jest systemem, na którym nie można polegać – głównie ze względu na problemy ze stabilnością i „dziury” w zabezpieczeniach. A jak wygląda sytuacja na „rynku” linuksowym? Okazuje się, że system ten coraz powszechniej jest wykorzystywany zarówno do zastosowań domowo-biurowych, jak i w roli serwerów przez osoby mające niewielkie doświadczenie w administracji systemami uniksowymi. Sprawia to, że komputery z Linuksem coraz częściej padają ofiarą włamywaczy.

Wynika to z faktu, że jednym z najczęściej popełnianych podczas instalacji i/lub konfiguracji dowolnego systemu błędów jest wiara, że domyślne ustawienia są równocześnie najlepszymi z możliwych – a tymczasem wcale tak nie jest. Co więcej, automatyczna instalacja pozostawia często karygodne „dziury” w zabezpieczeniach serwera czy stacji roboczych – i to niezależnie od tego, czy mamy do czynienia z darmowym systemem „na biurko”, czy też z rozbudowanym serwerem za kilka tysięcy dolarów.

Proces „uszczelniania” i łatania systemu z pingwinem w herbie przedstawiony zostanie na przykładzie dystrybucji Red Hat w wersji 7.2. Oczywiście, w podobny sposób można zabezpieczyć większość dostępnych dystrybucji Linuksa.

Niniejszy tekst jest przeznaczony dla początkujących administratorów Linuksa, głównie dla osób korzystających z tego systemu w domu i łączących się z Siecią za pośrednictwem modemu czy SDI. Artykuł wymaga znajomości podstawowych poleceń i pojęć z zakresu budowy systemu plików Linuksa. Wszystkie te informacje można znaleźć w podręczniku systemowym (man), dokumentach HOWTO (JTZ) oraz na stronach internetowych podanych w ramce „Info”.

Już instalacja jest ważna

Sposób, w jaki zainstalujemy system, może mieć znaczny wpływ na jego bezpieczeństwo. Bardzo ważny jest przede wszystkim podział dysku twardego. Należy pamiętać, aby oprócz partycji przeznaczonej na katalog główny (

/

) stworzyć oddzielne partycje bądź dyski logiczne co najmniej dla katalogów /home ,

/var

,

/tmp

i /usr. Jeżeli komputer pełni funkcję serwera, to warto także wydzielić katalogi /var/log oraz /var/spool/mail oraz inne, które będą szczególnie ważne bądź intensywnie wykorzystywane w konkretnych zastosowaniach.

Podejście takie ma kilka znaczących zalet. Po pierwsze, w przypadku awarii dysku (lub jednego z dysków) mamy większe szanse na odzyskanie danych. Poza tym użycie kilku partycji lub dysków pozwala lepiej kontrolować zużycie przestrzeni dyskowej – w razie potrzeby wymieniamy jeden dysk w systemie i nie musimy niczego instalować na nowo.

Z punktu widzenia bezpieczeństwa Linuksa wydzielenie poszczególnych katalogów pozwoli natomiast na późniejsze ustawienie flag noexec ,

nosuid

oraz nodev dla odpowiednich części partycji. Przemyślany system uprawnień do poszczególnych dysków powinien skutecznie utrudnić życie potencjalnym włamywaczom. Przykładową zawartość pliku /etc/fstab przedstawia ilustracja na sąsiedniej stronie.

Istotną rolę, szczególnie w przypadku instalacji serwera, odgrywa wybór instalowanych pakietów. Możemy przyjąć zasadę, że im mniej programów, tym lepiej. Szczególną ostrożność powinniśmy zachować w przypadku wyboru demonów usług sieciowych – instalujmy tylko te, które znamy i jesteśmy pewni, że będziemy z nich korzystali. To właśnie usługi systemowe są największą zmorą każdego administratora i największą potencjalną furtką dla włamywaczy.

Wyłączyć, co się da

Jeśli nie chcemy korzystać z jakiegoś demona, to pracując na koncie administratora, możemy go wyłączyć na stałe za pomocą programu setup. Następnie wybieramy menu system services i usuwamy zaznaczenie obok pozycji odpowiadających zbędnym usługom. Odwrotnie postępujemy w celu ich aktywacji. Możemy także ręcznie zatrzymać bądź uruchomić wybrany serwer. W tym celu przechodzimy do katalogu /etc/rc.d/init.d/, gdzie znajdują się skrypty startowe poszczególnych usług. Wydając polecenie

./nazwa_usługi start

(lub stop czy

restart

), możemy odpowiednio uruchomić, zatrzymać bądź przeładować (czyli zatrzymać i uruchomić) dany serwer.

0
Zamknij

Choć staramy się je ograniczać, wykorzystujemy mechanizmy takie jak ciasteczka, które pozwalają naszym partnerom na śledzenie Twojego zachowania w sieci. Dowiedz się więcej.