Pobierz Geneza Internetu - Notatki - Informatyka - Część 2 i więcej Notatki w PDF z Informatyka tylko na Docsity! 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 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 Sieć MAN i WAN
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 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 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 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