Geneza Internetu - Notatki -  Informatyka - Część 2, Notatki'z Informatyka. Szczecin University of Technology
Norbert_88
Norbert_8827 February 2013

Geneza Internetu - Notatki - Informatyka - Część 2, Notatki'z Informatyka. Szczecin University of Technology

PDF (927.2 KB)
25 strona
962Liczba odwiedzin
Opis
Powstanie Internetu , definicja "Języka C", Unixa, historia i działanie TCP/IP, czym są i jak działają poszczególne protokoły, Firewall, SSH.
20punkty
Punkty pobierania niezbędne do pobrania
tego dokumentu
Pobierz dokument
Podgląd3 strony / 25
To jest jedynie podgląd.
Zobacz i pobierz cały dokument.
To jest jedynie podgląd.
Zobacz i pobierz cały dokument.
To jest jedynie podgląd.
Zobacz i pobierz cały dokument.
To jest jedynie podgląd.
Zobacz i pobierz cały dokument.

Adresy IP Cała komunikacja w Internecie opiera się na zestawie protokołu TCP/IP. Urządzenia

pracujące w sieci TCP/IP rozróżnia się za pomocą unikalnego adresy, jaki zostaje im

przyznany. Każde urządzenie w sieci internetwej ma swój unikalny adres (tzw.adres IP).

W całym internecie nie ma dwóch takich samych adresów IP.

Adres IP składa się z czterech liczb dziesiętnych z zakresuo od 0 do 255, każdy

rozdzielony kropkami (.).Ponieważ adresy IP są używane do jednoznacznej identyfikacji

każdego komputera w sieci nie można go używać dowolnie. Przy podłączeniu do

internetu należy używać adresów IP przypisanych przez dostawców internetowych.

Do identyfikacji adresów IP służy adres sieci i maska sieci.Ponadto w obrębie danej sieci

specjalne znaczenie ma adres rozgłoszeniowy( broadcast address).

Adres Sieci

Adres sieci nie powinien być przypisany żadnego urządzeniu w sieci. Jest to adres ,który

identyfikuje daną sieć komputerową. Zazwyczaj ostatni oktet adresu IP ma koncówkę (0).

Maska Sieci

W połączeniu z adresem sieci stosuje się maskę sieci (net mask), która określa zakres

kolejnych adresów IP przypisanych danej sieci.

Adres Rozgłoszeniowy

Adres rozgłoszeniowy ma zazwyczaj końcowy okter (255). Przesyłanie danych pod ten

adres oznacza rezesłanie ich do wszystkich urządzeń urządzeń w danej sieci.

Oto przykładowy blok adresów IP stosowanych w sieci :

210.248.12.0 - Adres sieci

210.248.12.1

210.248.12.2 - Adresy IP przypisane do urządzeń

docsity.com

210.248.12.3

210.248.12.255 - Adres rozgłoszeniowy

1

Topologie Sieci Komputerowych SIEĆ TYPU LAN (Lokalna)

Sieć jest zespołem komputerów , które mogą się wzajemnie komunikować, mogą

wspólnie korzystać z zasobów(takich jak dyski twarde, drukarki) oraz mają dostęp do

odległych komputerów głównych lub innych sieci.

Oto podstawowe składniki oprzyrządownia sieciowego:

 Co najmniej jeden serwer

 Stacje robocze

 Urządzenia peryferyjne (drukarki)

1 Unix Administracja Systemu:Eleen Frisch, Wydawnictwo RM, str.151

docsity.com

 Karty sieciowe

 Łącza komunikacyjne

Wszystkie stacje robocze i serwery muszą być wyposażone w karty sieciowe. Karty

sieciowe łączą serwery ze stacjami roboczymi za pomocą okablowania. Urządzenia

peryferyjne , jak np. drukarki mogą być przyłączane do stacji roboczyć, do serwerów lub

do okablowania.

Elementy sieci:

Serwer – Serwer est komputerem, który zapewnia stacjom roboczym i innym klientom

dostęp do zasobów i usług sieciowych.

Klient – Klient jest dowolnym urządzeniem, takim jak komputer osobisty, drukarka lub

inny serwer, korzystający z usług lub zasobów serwera. Najpopularniejszym klentem jest

stacja robocza.

Stacja robocza – Typowa stacja robocza jest oddzielnym komputerem, który może

pracować niezależnie od sieci. Wykonuje ona swoje własne operacje i może zarządzać

swoim własnym oprogramowaniem. Stacja robocza połączona jest z siecią w celu

korzystania z szerszych zasobów.

Urządzenia peryferyjne – Urządzenia peryferyjne to urządzenia związane z

zastosowaniem komputerów, jak np. drukarka lokalna, stacje dysków czy modemy.

docsity.com

Karta sieciowa – Karta sieciowa jest układem elektronicznym zainstalowanym w każdym

komputerze w celu umożliwienia wzajemnej komunikacji serwerom i stacjom roboczym

Łącza komunikacyjne – Łącze komunikacyjne jest fizycznym połączeniem pomiędzy

urządzeniami w sieci, które umożliwia komunikację między serwerami i stacjami

roboczymi.

Topologia okablowania odnosi się do fizycznego układu systemu okablowania. Podczas ,

gdy wczesne systemu sieciowe ograniczone były do prostych topologii, wiele dzisiejszych

systemów daje ich duży wybór.:

TOPOLOGIA LINIOWA(magistralowa)

Topologia liniowa oznacza, że wszystkie urządzenia sieciowe podłączone są szeregowo

do systemy okablowania. Oznacza to , że wszystkie urządzenia podłączone są do

wspólnego estawu kabli, gdzie wszystkie sygnały wysyłane są do wszystkich urządzeń.

TOPOLOGIA GWIAZDOWA

Przy topologii gwiazdowej , urządzenia sieciowe podłączone są do centralnych urządzeń

rozdzielających sygnał. Urządzenia te zwane są gwiazdami, koncentratorami.

Pierścień gwiazdy

W sieci pierścieniowej każde urządzenie sieciowe ma połączenia z urządzeniem

poprzedzającym go w pierścieniu, jak i urządzeniem, które po nim następuje.

docsity.com

Rozróznia się kilka rodzajów sieci pod względem jej rozmiarów. Są to sieci typu :

 LAN

 MAN

 WAN

Sieci LAN to sieci lokalne. Mogą one obejmować kilka, kilkanaście lub kilkadziesiąt

komputerów znajdującym się w jednej lokalizacji , jak ą jest np. budynek.

Sieci MAN to sieci obejmujące kilka jakiś region lub pod którą podlega kilka sieci

lokalnych LAN.

Sieci WAN to sieci rozległe. Przykładem może tu być internet. Są to sieci

międzynarodowe

docsity.com

docsity.com

Rys historyczny systemu Linux

W 1983 roku Richard Stallman porzucił pracę w Massachusetts Institute of Technology i

ogłosił rozpoczęcie prac nad projektem GNU. Stallman postanowił stworzyć kompletny

system operacyjny kompatybilny z Unix-em, który mógłby być używany za darmo,

swobodnie modyfikowany i rozpowszechniany. Stopniowo gromadził on wokół siebie

coraz więcej osób, współpracujących nad jednym z najważniejszych projektów w historii

oprogramowania. Powstały podstawowe biblioteki, kompilatory, mnóstwo potężnych

narzędzi programistycznych. W 1991 oku Linus Travis rozpoczął pracę nad jądrem

systemu, które później zostało zintegrowane z resztą systemu GNU. Początkowo nowy

system nie zyskał większej popularności wśród użytkowników pecetów. Jego instalacja

była bardo skomplikowana, a obsługa nastręczała wiele trudności. Na niekorzyść Linuksa

przemawiał również fakt, że jego pierwsza wersja była zbyt uboga, aby mogła znależć

szersze zastosownie. Nawet późniejsze dołączanie kompilatora języka C oraz

zaimplementowanie kilku podstawowych poleceń uniksowych nie przysporzyło

systemowi zolenników. Linux wzbudził zainteresowanie dopiero wtedy, gdy Torvalds

zapewnił możliwość przenoszenia oprogramowania między swoim systemem a

produktami komercyjnymi. Udostępniony za pośrednictwem serwerów FTP bezpłatny

kod źródłowy wkrótce rozprzestrzenił się na całym świecie. Uwagi i sugestie

użytkowników przesyłane pocztą elektroniczną przyczyniły się do szybkiego

udoskonalenia systemu.

Początkowo Linux charakteryzował się wieloma wadami, wynikającymi z braku

doświadczenia jego twórcy. System miał problemy ze stabilnością i współpracą

poszczególnych jego elementów. Na poplarnośc Linuxa złożyło się kilka czynników.

Przede wszystkim system jest produktem całkowicie darmowym. Każdy kto ma dostęp do

Internetu , może bezpłatnie zainstalować Linuxa, korzystając z jednego z wielu serwerów

FTP. Dodatkowa zaleta takiego rozwiązania to zaoszczędzenie miejsca na dysku

twardym, ponieważ nie trzeba przechowywać u siebie kopii wersji instalacyjnej. Ponadto

na rynku dostępne są wersje na płytach CD-ROM sprzedawane po kosztach dystrybucji.

Linux, ze względu na swą wielozadaniowość świetnie nadaje się do obsugi sieci

docsity.com

komputerowych. Maszyny Linuxowe z powodzeniem pracują jako routery, serwery

poczty elektronicznej, www, dns czy ftp. Zaletą Linuxa są jego małe wymagania

sprzętowe. Jego zapotrzebowanie na pamięć i moc procesora jest znacznie mniejsze od

innych komercyjnych systemów. Linux działa przy tym znacznie szynciej. Do sprawnego

funkcjonowania systemu potrzebuje komputera klasy 386 wyposażonego w 8 MB pamięci

RAM. 2

GNU/Linux tak dziś popularny w różnych odmianach (Red Hat Linux, Debian

GNU/Linux itd. ) nie powstałby , gdyby nie ogromne zaangażowanie ludzi pracujących

nad w/w projektem. W 1998 roku na konferencji Free Delevopers Forum zaakceptowano

nazwę Open Source jako najbardziej przyjazną nazwę dla biznesu.

Co przemawia za wyborem Linuxa

Przede wszystkim jest to system zupełnie darmowy. Dostępna jest też ogromna ilość

bezpłatnego oprogramowania dla niego. Programiści tworzący poszczególne komponenty

systemu bardzo głęboko „wchodzą w sprzęt”. Dzieki temu systemy oparte na Linuksie

potrafią maksymalnie wykorzystać możliwości komputera. Modułowa budowa systemu

umożliwia indywidualne dopasowanie systemu do własnych potrzeb. Poszczególne

elementy są ze sobą luźno połączone, dzięki czemu nie ma problemu wymiany np.

sendmaila na inny program rozsyłający pocztę. W przypadku wykrycia błędu w

funkcjonowaniu jednego z komponentów w ciągu kilku godzin w Internecie pojawia się

szczegółowy opis oraz usuwające go uaktualnienie. Administratorzy w sposób świadomy

mogą kontrolować wproadzane zmiany. Ważną cechą systemu jest jego

wielozadaniowość. Linux potrafi bez uszczerbku dla systemu wykonywać kilka zadań

jednocześnie.

Wady Linuxa

Na niekorzyść Linuxa przemawia bez wątpienia jego skomplikowana obsługa. System

wymaga też nieustannej fachowej opieki. Serwer internetowy oparty na Linuksie

pozostawiony samemu sobie szybko stanie się łakomym kąskiem dla „domorosłych

piratów”.

2 Czasopismo komputerowe CHIP,Wydawnictwo CHIP,Warszawa 1999,s.3

docsity.com

Linux spotyka się często z kłopotami dotyczącymi najnowszych komponentów

sprzętowych. Problem ten powli przechodzi do historii, ale wciąż się zdarza , że

producenci sprzętu z opóźnieniem udostępniają specyfikację urządzeń. Dzięki temu

użytkownicy Linuxa z pewnym opóźnieniem mogą korzystać np. z zalet karty

dźwiękowej SB Live!, ponieważ nie powstał jeszcze odpowiedni sterownik. 3

4

W poniższej pracy postaram się przedstawić i dokładniej opisać metody konfiguracji i

zabezpieczenia serwera Linuksowego uruchomionego na jednej z odmian Linuxa : Red

Hat Linux. Autorzy tej dystrybucji położyli szczegóny nacisk na łatwość konfiguracji i

obsługi systemu., co nie jest bez znaczenia dla użytkowników początkujących oraz tych,

którzy dotąd korzystali głównie z produktów firmy Microsoft. Instalacja systemu

następuje dzięki przyjemnemu setupowi , który przeprowadza użytkownika krok po kroku

3 3 Czasopismo komputerowe CHIP,Wydawnictwo CHIP,Warszawa 2001,s.36 4 Czasopismo komputerowe CHIP,Wydawnictwo CHIP,Warszawa 2001,s.5

28%

8% 6%

9%

49%

Systemu operacyjne serwerów www

Linux

Solaris

BSD

inne i nierozpoznane Windows

docsity.com

przez procem konfiguracji sprzętu i kopiowania plików na dysk twardy. Zarządzanie

aplikacjami w systemie odbywa się za pomocą mechanizmu RPM (Red Hat Package

Managment). Firma Red Hat Software wprowadziła do swojego produktu wiele

pionierskich rozwiązań, które przejmują później inni producenci. Wersja Red Hat pracuje

nie tylko na procesorach Intel, lecz również na SPARC i Alpha.

Zasady działania Linuxa jako systemu operacyjnego.

System operacyjny to środowisko konieczne do uruchomienia i używania komputera

osobistego. Linux jest systemem operacyjnym ,podobnie jak Windows czy MacOs

docsity.com

instalowanych na większości komputerów osobistych. Systemy te zostały zaprojektowane

dla zwykłych użytkowników ,natomiast Linux może być używane przez zwykłych

użytkowników , jak i przez użytkowników (firmy) chcące uruchamiać własne serwery

podłączone do Internetu. Linux jako jeden z nielicznych systemów operacyjnych oferuje

ze zalety, które inne sytemy operacyjne nie posiadają. Przedstawiam je poniżek :

Linux został opracowanay i dostarczony w ramach projektu GNU (www.gnu.org).

Red Ha Linux jest obecnie jedną z najbardziej popularnych dystrubycji Linuxa na świecie.

Dlatego właśnie postanowiłem skoncentrować się na tej dystrybucji oraz opisać sposoby

jego właściwej instalacji ,konfiguracji oraz zabezpieczenia.

Instalacja Red Hat Linux

Podział dysku na partycje

Stabilność Linux pozwala na zakończenie aplikacji, która sprawia kłopot, bez potrzeby restartu całego systemu

Niezawodność Linux jest obecnie powszechnie używanym systemem dla serwerów internetowych. Wiele programów i serwerów działających pod kontrolą Linuxa cechuje doskonała bezawaryjność

Niskie Koszty Zamiast drogich, specjalizowanych serwerów można użyć taniego Linuxa i przeznaczonego dla niego oprogramowania, a całość zainstalować na komputerze klasy PC.

docsity.com

Filozofia systemu plików w DOS-ie i w Linuxie może być inna, lecz ostateczny cel

tworzenia partycji jest taki sam.Partycja pozwalają na odseparować niekompatybilne dane

i dzielą duże obszary dysku na mniejsze fragmenty, które są łatwiejsze w zarządzaniu i

używaniu. Linux wymaga co najmniej dwóch partycji: partycji wymiany (swap

partyction) i partycji głównej (root partyction). Przykładem dobrego zarządznia

przestrzenią dysku jest podzielenie go na kilka partycji. Jedna z nich powinna być

przeznaczona dla plików zapisywanych przez użytkowników a inne partycje do

przechowywania oprogramowania systemowego. W razie awarii jednej z partycji inne

partycje pozostają wciąż aktywne, dlatego jest to rozwiązanie zwiększające

bezpieczeństwo sieci. Oto najczęściej używane partycje w systemie Linux Red Hat :

Nazwa partycji Opis

Swap Partycja wymiany. Zawiera przestrzeń

wymiany dla systemu operacyjnego

Root(/) Partycja główna.Jest to podstawa całego

systemu plików. Przechowuje ona wszystkie

pliki potrzebna do załadowania systemu.

/boot Umieszczone są w niej pliki potrzebne do

ładowania początkowego systemu.

/usr Partycja usr zawiera większość

oprogramowania systemowego. Ta partycja

powinna mięc co najmniej 700MB.

/home Partycja home zawiera wszystkie katalogi

domowe i pliki użytkowników.

/var Katalog var przechowuje wszystkie pliki

buforowane drukarek, pliki poczty, pliki

wiadomości i pliki dzienników

systemowych.

/tmp Partycja do przechowywania plików

tymczasowych

Partycja wymiany

docsity.com

Partycja wymiany zawiera przestrzeń wymiany dla systemu operacyjnego Linux. Używa

ona dysku twaredo jako rozszerzenia pamięci RAM. Nieaktywne procesu systemu są

przesuwane z pamięci RAM i przechowywane na dysku twardym, gdy zajmowana przez

nie pamięć RAM potrzebna jest przez aktywny proces.

Do partycjonowania dysku twardego służy program fdisk lub jego graficzny

odpowiednich Disk Druid. Oto przykładowe partycje założone w systemie Red Hat:

Punkt montowania Urządznie Rozmiar Typ partycji

/ hda5 256MB Linux Native

/boot hda6 5MB Linux Native

/usr hda7 512MB Linux Native

/home hda8 1146MB Linux Native

/var hda9 256MB Linux Native

/tmp hda10 256MB Linux Native

<Swap> hda11 128MB Linux Swap

Wybór pakietów do instalacji

Na koniec instalacji powinniśmy rozważyć , jakie pakiety należy zainstalować na

serwerze. Wiele serwerów jest systemami ogólnego przeznaczenia, w takim przypadku

należałoby zainstalować całe oprogramowanie systemowe. Inne serwery maja bardziej

szczegółowe funkcje ,które wymagają tylko tylko części oprogramowania systemowego.

Nie należy instalować całego oprogramowania na dedykowanych serwerach. Należy

wybrać tylko te oprogramowanie ,które jest nam potrzebne., gdyż dobrze zainstalowany

Serwer Linuxa jest pierwszym krokiem do bezpiecznego i stabilnego systemu. Należy

przy tym pamiętać ,iż w samej dystrybucji Linuxa istnieje wiele pakietów ,które są same

w sobie zagrożeniem dla bezpieczeństwa systemu. Pakiety te powinny być na samym

początku instalacji odinstalowane. Niektóre z tych pakietów to:

Procinfo Pakiet pokazujący informacje o naszym

serwerze

Rdist Pakiet zarządzający kopiami zapasowymi

docsity.com

na wielu serwerach

Nis Pakiet umożliwiający podgląd systemowych

informacji ,takich jak :login names

,passwords, home directories

Finger-server Pakiet umożliwiający innym użytkownikom

podgląd innych użytkowników na serwerze.

Nfs-server Pakiet umożliwiający mapowanie dysków

sieciowych innych serwerów jako dyski

lokalne

Rsh-server Pakiet umożliwiający zdalne logowanie się

do systemu bez autoryzacji

Rusers Pakiet umożliwiający dowiedzenia się kto w

danym momencie zalogowany jest do

sytemu 5

Podstawowy system zabezpieczeń Zalecane jest ,aby wyłączona została możliwość uruchomienia systemu z dyskietki oraz

wprowadzenie hasła do biosu ,które uniemozliwi nieupoważnionym osobom zmianę

ustawień systemowych komputera (system date, system time, boot from floppy)i zwiększy

jego bezpieczeństwo.

Wybór właściwych haseł

Większośc ludzi korzysta z komputera, zapisuje na nim cenne pliki i dane i nie zdaje

sobie,że często jedyną metodą zabezpieczeń chroniącą ich pliki przed osobami

nieupoważnionymi jest ich hasło. Hasła mogą być złamane przy pomocy wielu

dostępnych na rynku programów ,które działają na zasadzie (brute force). Dlatego też

uruchamiane przez administratora sieci łamaczy haseł jest dobrym pomysłem. Pozwoli to

wyłapac z systemu hasła ,które są łatwe do odgadnięcia. Dlatego ,aby zmniejszyć do

minimum możliwość złamania hasła przez w/w programy zalecane jest aby polityka

bezpieczeństwa haseł była następująca:

5 Opracowanie własne

docsity.com

Hasła powinny mieć co najmniej sześć znaków długości (preferowane jest osiem),oraz

przynajmniej jedną cyfrę lub znak.

Hasła nie powinny być łatwe do zgadnięcia. Nie powinno się więc stosować imion

własnych, zawodów itp.

Powinny być ograniczone czasowo, co oznacza konieczność zmiany hasła po upływie

określonego czasu.

Konta na które wykryto atak słownikowy powinny być zablokowane na określony czas

Przy instalacji linuxa domyślna minimalna długość hasła wynosi 5. Co oznacza,że

dowolny użytkownik może posiadać hasło o długości co najmniej 5 znaków. Wartość ta

dla celów bezpieczeństwa powinna zostać zmieniona na 8. Zmianę tę dokonujemy w pliku

:

/etc/login.def :

PASS_MIN_LEN 5 na PASS_MIN_LEN 8

Plik login.defs jest plikiem konfiguracyjnym dla programu login ,który umożliwia

logowanie się do systemu.W pliku tym można ustawić też inne opcje jak : czas

wygaśnięcia hasła itp.)

Konto „root”

Konto „root” jest najbardziej uprzywilejowanym kontem w systemie Linux. Żadne

restrykcje związane z systemem nie dotyczą tego konta. Używając tego konta ,ważnym

jest aby wiedzieć co się robi. Dla względów bezpieczeństwa nie powinno się używać

konta „root” na co dzień ,chyba że jest to konieczne. Nie powinno się również zostawiać

serwera z zalogowanym użytkownikiem „root”. Jest możliwośc ustawienia po jakim

czasie bezczynności po jakim użytkownik „root” zostanie wylogowany z systemu. Należy

w pliku /etc/profile dodać linijkę:

TMOUT=7200

Co oznacza ,ze po 7200 sekundach (2 godziny) użytkownik zostanie wylogowany z

systemu gdy stwierdzona zostanie jego nieaktywność po tym czasie.

Wyłączenie programów konsoli dla zwykłych użytkowników

docsity.com

Istnieje pewne niebezpieczeństwo, iż dany użytkownik po zalogowaniu się do systemu

będzie w stanie go wyłączyć lub zrestartować przy pomocy komeny (halt, poweroff,

reboot, shutdown). W związku z tym dobrze jest wyłączyć taką możliwość. Skróty do

w/w programów znajdują się w katalogu ogólnego dostępu /etc/security/console.app.

Należy je usunąc stosując komendę :

rm –f /etc/security/console.app/halt

rm –f /etc/security/console.app/poweroff

rm –f /etc/security/console.app/reboot

rm –f /etc/security/console.app/shutdown

W ten sposób użytkownicy zalogowani do systemu nie będą w stanie uruchomić w/w

komend.

Plik konfiguracyjne /etc/inetd.conf

Plik inetd.conf jest często nazywany „super serwerem”. Program ten obsługuje żądania

napływające z sieci dotyczące usług sieciowych uruchomionych na serwerze. Plik

inetd.conf obługiwany jest przez deamona inetd.W ten sposób deamon inetd nasłuchuje

na określonych w tym pliku portach i w razie potrzeby uruchamia odpowiednią usługę dla

danego portu. Usługi ,które nie są porzebne lub z których rzadko korzystamy, powinny

zostać wyłączone i odinstalowane dla poprawy bezpieczeństwa systemu.

Poniżej przedstawiam przykładowy plik /etc/inetd.conf.

ftp stream tcp nowait root /usr/sbin/tcpd in.ftpd –l –a

telnet stream tcp nowait root /usr/sbin/tcpd in.telnetd

rlogin stream tcp nowait root /usr/sbin/tcpd in.rlogind

W/w konfiguracja umożliwia dostęp do naszego serwera usłudze ftp (file transfer

protocol) ,usługi telnet (zdalne logowanie) oraz rlogin (zdalne logowanie bez

uwierzytelniania).

Aby wyłączyć daną usługę należy zachaszowć „#” daną linijkę np.

#ftp stream tcp nowait root /usr/sbin/tcpd in.ftpd –l –a

docsity.com

#telnet stream tcp nowait root /usr/sbin/tcpd in.telnetd

#rlogin stream tcp nowait root /usr/sbin/tcpd in.rlogind

Po każdej zmianie pliku inetd.d należy zrestartować serwer usługi inetd. Możn to zrobić

wydając polecenie :

Killall –HUP inetd.

Komenda ta spowoduje odczytanie pliku konfiguracyjnego /etc/inetd.conf bez

konieczności wyłączania komputera ,czy zatrzymania usługi.

Podczas logowania się do systemu zazwyczaj serwer podaje podstawowe informacje o

zainstalowanym systemie np.(Red Hat 7.2). Ta informacja przekazywana jest do każdego

użytkownika podczas wyświetlania powitania. Informacja ta powinna zostać skasowana

,gdyż umożlwia ona identyfikację oprogramowania jakie działa na serwerze. W tym celu

należy w pliku /etc/inetd.conf zmodyfikować linijkę ,w której znajduje się wpis dotyczący

usług telnet (jeżeli zdecydujemy się na jej uruchomienie.Bezpieczniejsze byłoby

zastosowanie zamiast usługi telnet ,usługi ssh)

telnet: stream tcp nowait root /usr/sbin/tcpd in.telnetd –h

Opcja „-h” wyświetla podczas logowania informacje o systemie. Należy usunąć opcję „-

h”.

Ważną rzeczą jaką należy zrobić jest zabezpieczenia odpowiednich plików przed osobami

nieautoryzowanymi. Wydając polecenie :

chattr +i /etc/inetd.conf

Pliki ,które powinny zostać opatrzone tym atrybutem to :

/etc/passwd - plik z użytkownikami do systemu

/etc/shadow - plik z hasłami do systemu (zakodowanymi)

/etc/group - plik z grupami użytkowników

nadajemy pliku /etc/inetd.conf atrybut “i” – “immutable”.Oznacza on ,że dany plik nie

może zostać zmodyfikowany ,skasowany nawet przez suerużytkownika „root”.Aby zdjąć

atrybut „i” z danego pliku należy wydać polecenie :

docsity.com

chattr –i /etc/inetd.conf

TCP_WRAPPERS

Red Hat Linux pozwala wszystkim usługom I wszystkim klientom na dostęp do systemu.

TCP_WRAPPERS zabezpiecza serwer przed zewnętrznymi metodami dostępu do serwera

i odpowiednich usług. TCP_WRAPPERS składa się z dwóch plików : hosts.allow oraz

hosts.deny. Pliki te określają kto będzie lub nie będzie w stanie mieć dostępu do całego

serwera lub odpowiednich jego usług. Usługa ta działa następująco:

Przykładowy plik /etc/hosts.deny wygląda następująco :

#Dostęp jest zabroniony dla każdego,chyba że plik /etc/hosts.allow na to zezwala.

ALL:ALL@ALL, PARANOID

Przykładowy plik /etc/hosts.allow wygląda następująco:

# Dla klienta o adresie IP 208.108.186.1 i adresie gate.openna.com dostęp do usługi ssh

jest zezwolony.

sshd: 208.108.186.1 gate.openna.com

Dostęp będzie zapewniony jeżeli (usługa,klient) będą zgadzały się z wpisem w pliku /etc/hosts.allow

Jeżeli (usługa,klient) będą zgdzały się z wpisem w pliku /etc/hosts.deny dostęp będzie abroniony.

Jeśli nie ma odpowiedniego wpisu w pliku /etc/hosts.deny oraz /etc/hosts.allow dostęp zostanie przydzielony

docsity.com

Serwisy sieciowe.

Numery portów ,na których odpowiednie usługi sieciowe są uruchamiane zdefiniowane są

w RFC 1700 “Assigned Numbers”. Porty te są ściśle powiązane z usługami sieciowymi.

Przyjęło się ,iż dane usługi jak np. usługa telnet działa na porcie 22 a usługa ssh na porcie

23. Dostęp do tego pliku przez osoby nieupoważnione może spowodowa dodanie nowej

usługi i nowego portu, który spowoduje założanie tzw.backdoor. Dostęp do pliku

/etc/services powinie mieć tyko i wyłącznie użytkownik root.

Plik /etc/securetty

Plik ten umożliwia zdefiniowanie, na którym TTY urządzeniu użytkownik root ma

możliwość logowania się. Plik /etc/securetty jest odczytywany przez program (/bin/login).

Plik ten wygląda następująco :

tty1

#tty2

#tty3

#tty4

#tty5

#tty6

#tty7

#tty8

Oznacza to ,że root może logować sie tylko I wyłącznie na tty1. To ograniczenie

umożliwia uytkownikowi root na logowanie się tylko przez jedno urządzenie tty1.

Grupy specjalne

Ważne jest ,aby wyłączyć wszystkie nazwy użytkowników i grup ,które są nieużywane w

systemie. Niektóre konta istnieją w systemie ,lecz nie są używane, gdyż odpowiednie

usługi do tych kont nie są zainstalowane. Konta ta i grupy powinny zostać w celu

docsity.com

poprawy bezpieczeństwa wykasowane. Używając komendy userdel nazwa_użytkownika i

groupdel nazwa_grupy jesteśmy w stanie skasować dane konto lub grupę. Użytkownicy,

którzy powinni zostać skasowani :

adm

lp

sync

shutdown

halt

news

uucp

opeator

games

gopher

Grupy ,które powinny zostać skasowane:

adm

lp

news

uucp

games

dip

pppuser

popuser

slipuser

Blokowanie dostępu do konta root poprzez „su“

Komenda su umożliwia każdemu zalogowanemu w systemie użytkownikowi na stanie się

superużytkownikiem „root”, pop warunkiem ,że dana osoba zna hasło root. Pomimo tego

sama próba stania się superużytkownikiem przez niepowołane osoby jest dość

niebezpieczna i pozwala na wielokrotne próby złamania hasła root`a metodą bruteforce.

Należy ustawić tylko tych użytkowników lub grupy użytkowników ,które powinny mieć

docsity.com

możliwość używania komeny „su” ,aby stać się użytkownikiem root. Należy wyedytować

plik /etc/pam.d/su i dodać dwie linijki :

Auth sufficient /lib/security/pam_rootok.so.debug

Auth required /lib/security/pam_wheel.so group=wheel

Wpisy te pozwalają tylko I wyłącznie użytkownikom należącym do grupy “wheel” na

stanie się superużytkownikiem poprzez wydanie komendy su root.

Kontrola nad systemem plików

Dzieląc dysk twardy na partycje definiujemy w jakim punkcie będzie ona zamontowana w

systemie. Aby określić punkty montowania oraz opcje z jakimi partycje będą

zamonowane należy wyedytować plik /etc/fstab.

#Partycja Punkt montowania system plików opcje

/dev/hda5 / ext2 defaults

/dev/hda6 swap

/dev/hda7 /home ext2 defaults

W pliku /etc/fstab można stosować następujące opcje ,oto niektóre z nich:

defaults - zezwala na wszystko

noquota - nie ustawia ograniczenia przestrzeni dyskowej dla użytkowników

noexec- uniemożliwia nadania atrybutu „x” plikom (nie da się ich uruchomić)

quota - zakłada ograniczenia przestrzeni dyskowej dla użytkowników

ro - zezwala tylko na odczytywanie plików z partycji

rw - zezwala na czytanie i zapisywanie na partycji

Dlatego dla partycji /tmp powinno zmienić się domyślne ustawinia na

/dev/hda11 /tmp ext2 defaults,rw,noexec

docsity.com

Oznacza to ,że zwykli użytkownicy systemu nie będą w stanie uruchamić programów

znajdujących się na partycji tymczasowej ale będą mogli zapisywać na niej pliki,gdyż na

partycji wymiany muszą znajdować się pliki tymczasowe użytkowników (niewysłane

maile itp.). Często zdarza się ,że na partcji tymczasowej /tmp znajdują się zrzuty pamięci

(core dump) dobrze znane z systemu Windows. Moż zdarzyć się ,że jeżeli core dump

powstał podczas pracy superużytkownika w pliku tym mogą znajdować się cenne

informacje jak : hasło root`a. Należy więc po każdej zakończonej sesji czyścić katalog

/tmp.

Prawa dostępu do plików

Każdemu użytkownikowi systemu zostają nadane pewne prawa dostępu do plików i

katalogów. Prawa dostępu definiują jakie prawa ma właściciel pliku ,jakie prawa ma

grupa użytkowników oraz jakie prawa mają inni użytkownicy. Dlatego system prawa

dostępu składa się w dziewięciu pół. Każde trzy pola reprezentują prawa dostępu dla

danej grupy i tak:

_ _ _ _ _ _ _ _ _

Prawa dostępu dla właściciela

Prawa dostępu dla grupy użytkowników

docsity.com

Prawa dostępu dla innych użytkowników

Każde prawo ma określoną wartość.

Prawo odczytu Read r

Prawa zapisu Write w

Prawo uruchamiania Execute x

Tak więc prawo do danego pliku może mieć następujący charakter

Rwx-r—r

Co oznacza prawa odczytu ,zapisu i wykonywania programu dla właściciela pliku oraz

prawo odczytu dla wszystkich innych użytkowników.

Wszystkie prawa reprezentowane są w sposób numeryczny.

Tryb Liczna

Rwx 7

Rw- 6

r-x 5

r— 4

--wx 3

-w- 2

--x 1

--- 0

Chcąc zmienić lub nadać prawo do pliku należy użyć komendy chmod [tryb]

[nazwa_pliku]

Chmod 777 /etc/passwd

docsity.com

Komenda ta nada pełna prawa odczytu ,zapisu i wykonywania dla wszystkich

użytkowników do pliku passwd, który zawiera cenne informacje o kontach w systemie.

Dlatego wszytkie prawa do ważniejszych plików powinny być często kontrolowane.

Powinno się nienadawać zbyt dużo praw do nieodpowiednich plików ,takich jak :passwd

,shadow ,group. Pliki te przechowują nazwy użytkowników oraz odpowiadające im hasła

do systemu. Dlatego powinny mieć prawo [rwx] tylko dla właściciela pliku (root) oraz

zerowe prawa dla innych użytkowników . Wykonanie komendy

chmod 700 /etc/passwd /etc/shadow /etc/group

nada w/w prawa do tych plików.

W celu sprawdzenia jakie prawa w obcnej chwili posiada plik wystarczy wydać polecenie

:

ls –l

-rwx------ root nobody 0 Jan 9 17:44 passwd

co oznacza ,że właścicielem pliku passwd jest użytkownik “root” ,posiadający pełne

prawa do pliku. Użytkownicy znajdujący się w grupie nobody nie mają żadnych praw do

pliku jak również inni użytkownicy. Plik został utworzony lub zmodyfikowany 9 stycznia

o godzinie 17:44.

Aby zmienić właściciela pliku lub grupę do której należy plik należy użyć komendy

chown

Chown [nazwa_użytkownika][nazwa_grupy] plik

Zwykły użytkownik często może uruchomić dany program jako użytkownik root ,jeżeli

dany program posiada tzw. SUIT root. Wszystkie programy i pliki na linux`ie z literka „s”

w prawach dostępu do danego pliku nadają specjalne prawa dostępu dla użytkownika,

który go uruchamia. Bardzo ważną rzeczą jest ,aby usunąć z wszystkich programów

znacznik „s”

Aby znaleźć programy na naszym dysku twardym z bitem „s” należy posłużyć się

poleceniem

docsity.com

[root@linux]# find / -type f \(-perm -0400 –o –perm -0200 \) \-exec ls –lg {} \;

-rwsr-xr-x 1 root root 3545 Sep 22 22:34 /usr/bin/change

-rwsr-xr-x 1 root root 4353 Sep 22 23:08 /usr/bin/newgrp

-rwsr-xr-x 1 root root 3643 Sep 22 10:23 /usr/bin/gpasswd

Aby usunąć SUID root z w/w plików należy wydać polecenie

[root@linux]# chmod a-s /usr/change

[root@linux]# chmod a-s /usr/newgrp

[root@linux]# chmod a-s /usr/gpasswd 6

6 Tekst przetłumaczony na podstawie dokumenctacji systemu dołączonej do każdej dystrybucji

docsity.com

komentarze (0)
Brak komentarzy
Bądź autorem pierwszego komentarza!
To jest jedynie podgląd.
Zobacz i pobierz cały dokument.
Docsity is not optimized for the browser you're using. In order to have a better experience we suggest you to use Internet Explorer 9+, Chrome, Firefox or Safari! Download Google Chrome