Repetytorium cz. 7.1 Linux

Pare słów wstępu na temat linuxa:

System linux jest to tak naprawdę jądro udostępnione na licencji GNU na podstawie którego powstają określone dystybucje. Jest to system stworzony bardziej pod kątem pracy niż gier. Główne zastosowanie Linux znajduje podczas procesu tworzenia serwerów ze względu na bezpieczeństwo oraz bardzo dobrą optymalizacje. Przykładowe dystrybucje linuxa to:
  • Ubuntu
  • Mint
  • Centos
  • Arch Linux
  • Fedora
  • Debian

Ustawienia sieciowe w komputerach z systemem Linux:

Aby dokonać sprawdzenia aktualnej konfiguracji interfejsu sieciowego komputera oraz jej edycji należy wykorzystać polecenie ifconfig.

Za pomocą polecenia ifconfig otrzymujemy następujące informacje o naszym połączeniu sieciowym:

  • Adres MAC
  • Adres IP
  • Adres Broadcast
  • Maskę podsieci
  •  liczba odebranych, błędnych, pominiętych i zgubionych pakietów.
  • dodatkowe opcje interfejsu
  • maksymalny rozmiar pakietu
  • odebrane i wysłane bajty
  • i wiele innych mniej ważnych informacji


Jeśli nie pasuje nam aktualna konfiguracja możemy przeprowadzić manualną lub automatyczną konfigurację:

1. Konfiguracja manualna z wykorzystaniem skryptu ifconfig.
UWAGA !
Nie wszystkie dystrybucje posiadają zainstalowany pakiet net-tools (ifconfig wchodzi w skład tego pakietu).

ifconfig interfejs adres_IPv4 netmask maska up/down
Gdzie:
interfejs - należy podać nazwę interfejsu np. eth0
adres_IPv4 - należy podać adres IP czwartej wersji np. 10.0.0.1
maska - należy podać maskę np. 255.255.255.0
up/down - pozwala na włączenie/wyłączenie interfejsu

Przykład:
ifconfig eth0 10.10.51.1 netmask 255.255.255.0 up


Po skonfigurowaniu karty sieciowej, należy także ustawić bramę domyślną wykorzystując polecenie route

route add default gw adres_IP_v4

Przykład:
route add default gw 10.10.51.254

Ostatnim etapem konfiguracji interfejsu jest konfiguracja serwera DNS. Można to zrobić poprzez edycję pliku resolv.conf wpisując: nano /etc/resolv.conf i dodać:

# pierwszy serwer DNS
nameserver IP_v4
# drugi serwer DNS
nameserver IP_v4

Przykład:
# pierwszy serwer DNS firmy GOOGLE
nameserver 8.8.8.8
# drugi serwer DNS zarządzany przez OpenDNS
nameserver 208.67.222.222

2. Konfiguracja manualna z wykorzystaniem polecenia IP.

Przed przystąpieniem do konfiguracji adresacji, należy włączyć interfejs:

ip link set interfejs up
Gdzie:
interfejs - należy podać nazwę interfejsu np. eth0

Przykład:
ip link set eth0 up

Następnym krokiem jest konfiguracja adresu IP.

ip addr IP_v4/maska broadcast adres_rozgloszeniowy dev interfejs
Gdzie:
IP_v4/maska - należy podać adres IP i maskę np. 10.0.0.1/24 - maska /24 jest równoważna z zapisem 255.255.255.0
adres_rozgłoszeniowy - należy podać adres rozgłoszeniowy np. 10.0.0.255
interfejs -  należy podać nazwę interfejsu np. eth0

Przykład:
ip addr 10.10.51.1/24 broadcast 10.10.51.255 dev eth0

Po poprawnym ustawieniu adresu IP dla karty sieciowej, należy wskazać bramę domyślną.

ip route add default via IP_v4
Gdzie:
IP_v4 - należy podać adres IP bramy domyślnej np. 10.0.0.254

Przykład:
ip route add default via 10.10.51.254

Ostatnim etapem konfiguracji interfejsu jest ustawienie serwerów DNS.
Można wykonać poprzez edycję pliku resolv.conf wpisując: nano /etc/resolv.conf i dodać:

# pierwszy serwer DNS
nameserver IP_v4
# drugi serwer DNS
nameserver IP_v4

Przykład:
# pierwszy serwer DNS firmy GOOGLE
nameserver 8.8.8.8
# drugi serwer DNS zarządzany przez OpenDNS
nameserver 208.67.222.222



3. Jeśli w naszej sieci lokalnej znajduje się serwer DHCP, możemy wtedy dokonać automatycznej konfiguracji. Musimy posłużyć się usługą pump, którą możemy aktywować poleceniem:
 pump –i ethX
np. pump –i eth0
Dzięki temu zdefiniowaliśmy połączenie sieciowe na domyślnej (pierwszej) karcie sieciowej. Ustawienia usługi pump przechowywane są w pliku: /etc/pump.conf, który jest plikiem konfiguracyjnym usługi.
Serwer DHCP w systemie linux konfiguruje się za pomocą pliku konfiguracyjnego znajdującego się w /etc/dhcp3/dhcpd.conf. Jeśli DHCP jest nieskonfigurowany ten plik jest pusty. Jeśli jednak jest skonfigurowany przedstawia się on w następujący sposób:
np.
authoritative;
ddns-update-style ad-hoc
subnet 192.168.7.0 netmask 255.255.255.0 {
range 192.168.7.10 192.168.7.30;
option domain-name-servers 194.115.108.77 , 194.115.108.1;
option domain-name "nazwa_domeny";
option routers 192.168.0.1;
option broadcast-address 192.168.0.255;
default-lease-time 86400;
max-lease-time 86400;
}


Przydatne komendy w systemie Linux:

tcpdump - służy ono do sledzenia komunikacji pakietów TCP/IP lub protokolów transmitowanych lub odbieranych w sieci komputerowej.
 Wykorzystywane jest do :










  • śledzenia błędów aplikacji używających komunikacji sieciowej
  • analizowanie konfiguracji samej sieci


  • useradd - Polecenie służące do zakładania nowego użytkownika za pomocą konsoli.
    np. useradd -m Jan  - tworzy użytkownika wraz z katalogiem domowym
    Dane dotyczące użytkowników znajdują się w pliku /etc/passwd natomiast hasła w /etc/shadow

    usermod -g grupa nazwa_uzytkownia - komenda służąca do dodania użytkownika (nazwa_uzytkownika) do podanej grupy (grupa)
    np.usermod -g egzamin Kowalski

    Dana dotyczące grup zapisywane są w pliku /etc/group

    Dostęp do plików w systemie Linux:

    W systemie linux dostęp do plików definiowany jest za pomocą praw zapisywanych w następujący sposób rwx rwx rwx. Zapis ten przyznaje wszystkie prawa dla użytkownika grupy oraz właściciela.
    Poniższa tabelka ukazuje w jaki sposób należy odczytywać te znaki:

    LiczbaPrawa do pliku Zapis literowy
    0Brak praw ---
    1Wykonywanie --x
    2 Zapis -w-
    3 Zapis i wykonanie -wx
    4 Odczyt r--
    5 Odczyt i wykonanie r-x
    6 Odczyt i zapis rw-
    7 Odczyt, zapis i wykonanie rwx

    Aby ustawić prawa do pliku wykorzystujemy komendę chmod XXX nazwa_pliku gdzie pod X wstawiamy liczbę odpowiadającą interesujące nas prawa do pliku. Pierwszy X oznacza właściciela drugi X oznacza grupę a trzeci X oznacza wszystkich użytkowników.
    chmod 777 plik.txt - nadaje uprawnienia do odczytu zapisu oraz wykonania dla wszystkich użytkowników
    chmod 742 plik.txt - nadaje uprawnienia do odczytu zapisu oraz wykonania dla właściciela pliku, dla grupy  nadawane jest uprawnienie do odczytu a dla wszystkich prawo do zapisu.
    Aby zmienić uprawnienia do katalogu należy użyć komendy chmod -R XXX ścieżka_do_katalogu
    chmod -R 777 home/katalog- nadaje uprawnienia do odczytu zapisu oraz wykonania dla wszystkich w katalogu oraz wszystkich plikach/podkatalogach znajdujących się w nim

    Pakiety, programy użytkowe oraz wybrane protokoły w systemie Linux:

    SQUID - Popularny program używany aby postawić serwer Proxy rozpowszechniany na wolnej licencji GPL. Serwer Proxy jest rodzajem bufora między Tobą, a zasobami Internetu. Do zalet SQUID'a należy wydajność oraz rozbudowane możliwości konfiguracyjne.
    Samba - jest to darmowy serwer plików oraz drukarek udostępniany na licencji GPL.Samba pozwala na tworzenie mieszanego środowiska, w którym mogą działać obok siebie komputery z systemem operacyjnym Linux oraz Windows i wzajemnie korzystać z plików oraz drukarek
    SSH - jest to protokół komunikacyjny  Służący do zdalnego łączenia z komputerami. SSH jest następcą protokołu telnet lecz w przeciwieństwie do swojego poprzednika, połączenia połączone za pomocą SSH są szyfrowane.
    iptables - jest to program (skrypt) sterujący filtrem pakietów opracowany dla systemu operacyjnego Linux. Jego głównymi zadaniami zazwyczaj jest działanie jako Zapora sieciowa lub NAT.
    ip - jest to program, który służy do wyświetlania, modyfikacji konfiguracji karty sieciowej, tablic tras routingu, tuneli. Wchodzi w skład jądra Linux od wersji 2.2 i jest częścią pakietu iproute2.

    Polecam sprawdzić swoje umiejętności rozwiązując pytania egzaminacyjne z poniższego linku:
     Zadania sprawdzające