Powtórka z linuxa

Transkrypt

Powtórka z linuxa
Powtórka z linuxa
Polecenia pomocy:
man polecenie
apropos słowo
podczas czytania manuala
/szukajslowa
n następne
N poprzednie
Polecenia pracy z drzewem katalogów:
cd katalog
pwd
cp plik_zr plik_docelowy
mv plik_zr plik_docelowy
mkdir nazwa
rm plik
ls -la
Polecenia zmiany uprawnień:
chmod a+rwx plik
chmod -R g-w katalog
chown grupa:user plik
su Edytor tekstowy:
vi plik
Przetwarzanie łańcuchów znaków:
cat plik
cut -d ':' -f 1 [plik]
grep 'wzorzec' [plik]
grep -v 'wzorzec' [plik]
grep -R 'wzorzec' katalog
less [plik]
sort -n [plik]
tail -3 [plik]
head -c50 [plik]
Potoki, przekierowania:
polecenie1 | polecenie2
polecenie1 > plik
polecenie >> plik
polecenie 2> plik
Procesy:
ps aux
pstree -pu
kill -9 PID
top
Zadanie:
– Utwórz katalog /home/knoppix/podkatalog1 a w nim dwa pliki plik1 i plik2
– Nadaj uprawnienia do modyfikacji pliku 1 dla wszystkich a do pliku2 dla członków grupy
– skopiuj plik1 do /home/knoppix/ i wyedytuj zawartość wpisując w nim słowo TEST
– skasuj katalog /home/knoppix/podkatalog1 wraz z całą zawartością
– wylistul na ekran zawartość pliku1 (teraz jest w /home/knoppix)
– sprawdź poleceniem top, ps lub pstree pid procesu swojej własnej powłoki bash i zabij ją (czemu się nie da?
i co trzeba zrobić żeby się dało?)
Powtórka poleceń sieciowych
Połączenie zdalne telnet
– protokół telnet służy do nawiązywania zdalnych połączeń tekstowych
– pozwala na zdalne połączenie z prostymi programami i sprzętem
– nieraz jedyna metoda zalogowania
– Połączenie nie szyfrowane
telnet host
telnet host port
telnet sunsite.icm.edu.pl
CTRL + ] przejście do trybu komend telnetu
quit
komenda zakończenia pracy
Protokół http i tekstowa przeglądarka
– prosty protokół oparty na połączeniach tcp/ip
– komendy tekstowe
– transfer plików txt i innych
– bezstanowy (żądanie, odpowiedź)
– zastosowanie strony www lecz coraz częściej inne aplikacje
– sam w sobie nie szyfrowany
lynx debian.org
w programie:
– góra/dół poprzedni/następny link
– pgup/pgdown poprzednia/następna strona
– ( / ) scroll po pół strony
– enter przejście do linku
– backspace wybranie strony do której chcemy wrócić
– h pomoc programu
Protokół FTP i klient ftp
– prosty protokół oparty na połączeniach tcp/ip
– komendy tekstowe
– transfer plików
– nawiązywane dwa połączenia jedno do przesyłania poleceń oraz kontroli transmisji, drugie do
przesyłania danych.
– sam w sobie nie szyfrowany
Przykłady anonimowych serwerów ftp:
sunsite.icm.edu.pl
ftp.icm.edu.pl
ftp.ps.pl
ftp.pl.debian.org
debian.ethz.ch
Po uruchomieniu dostępne są między innymi następujące komendy:
quit
- koniec pracy
open host
- łączenie z serwerem
(user anonymous, haslo mail)
binary
- przełącza w tryb binarny
hash
- włącza progressbar
ls
- listuje zawartość
cd dir
- zmienia katalog
close
- zamyka połączenie
get plik [nazwa_lokalna] - pobiera plik
lcd
mget pliki
reget plik
put plik_kokalny
pwd
-
zmienia katalog lokalny
pobieranie z *
kontynuacja pobierania
przesyła plik na serwer
pokazuje katalog bierzący
testowanie połączenia
ping host
ping -c liczba
ping -s rozmiar
sprawdzanie tras
traceroute host
traceroute linux.pl
połączenie zdalne kanałem szyfrowanym
ssh user@host
przesyłanie plików kanałem szyfrowanym
scp opcje źródło cel
scp -r katalog user@host:~/podkatalog
Odpytywanie serwerów nazw DNS
host opcje nazwa_domeny nazwa_serwera
Zadania:
– połącz się z jednym z serwerów ftp i pobierz jakiś plik
– sprawdź wynik polecenia traceroute do serwera praca.pl
– sprawdź poleceniem ping jaki jest czas wędrówki pakietu do serwera www.uni.lodz.pl oraz 212.191.65.6
– odpytaj serwer math.uni.lodz.pl o nazwę domenową mail, odpytaj też potem o "wszystkie" wpisy serwera.
Adresowanie IP
Adres ip ma postać czterech ośmiu bitowych liczb, przyjęto zapisywać liczby rozdzielone znakiem
kropki. To na jego podstawie określa się czy pakiet jest zaadresowany do nas a jeśli nie, w jakim kierunku
powinniśmy go wysłać by dotarł do celu.
przykładowy adres
212.191.65.6
Adres ten składa się z 4 oktetów które zapisane w postaci binarnej mają wartości:
212
191
65
6
=
=
=
=
128*1
128*1
128*0
128*0
+
+
+
+
64*1
64*0
64*1
64*0
+
+
+
+
32*0
32*1
32*0
32*0
+
+
+
+
16*1
16*1
16*0
16*0
+
+
+
+
8*0
8*1
8*0
8*0
+
+
+
+
4*1
4*1
4*0
4*1
+
+
+
+
2*0
2*1
2*0
2*1
+
+
+
+
1*0
1*1
1*1
1*0
więc dla "poprawy" czytelności można zapisać go jako:
212.191.65.6 = 11010100 . 10111111 . 01000001 . 00000110
Reprezentacja binarna pozwoli nam zrozumieć w jaki sposób obliczane są adresy sieci na podstawie klas lub
masek.
Każdy adres sieciowy dzielony jest na dwie części numer sieci oraz numer hosta w tej sieci. Obydwa numery
zawarte są w adresie IP.
Numer sieci pozwala na przekazywanie pakietu w kierunku sieci natomiast (na całym świecie) natomiast numer
hosta jest używany w ostatnim kroku gdy pakiet dotrze już do sieci docelowej.
Adresowanie bezklasowe
W celu zwiększenia elastyczności możliwe jest adresowanie bezklasowe które wprowadzając maskę sieci
pozwala na to by dowolnie podzielić adres IP na numer sieci i numer hosta.
Pozwala to bardziej swobodnie dzielić sieci i bardziej efektywnie wykorzystywać przestrzeń adresową.
Maska sieci mówi nam które bity adresów IP będą traktowane jako część numeru sieci a które nie. Maska sieci
postaci 255.255.255.0 oznacza iż 3 pierwsze bajty przeznaczone są na numer sieci natomiast pozostała część
adresu IP określa numer hosta w tej sieci. Możliwe jest jednak dowolne ustawienie maski tak że np. maska
255.255.255.240 = 11111111 . 11111111 . 11111111 . 11110000
mówi nam że tylko ostatnie 4 bity adresu IP będą określać numer hosta. Oznacza to iż sieć będzie mogła
zawierać maksymalnie 15 adresów IP - 2 więc 13 hostów.
Mówiąc najprościej, jedynki w numerze maski mówią że określony bit adresu IP należy do numeru sieci.
Zero oznacza że bit przeznaczony jest do numerowania hostów.
Przykład:
Dla adresu 212.191.65.6 z maską 255.255.255.240 (28 bitową) możemy rozpisać wszystko w systemie
binarnym:
255.255.255.240 = 11111111 . 11111111 . 11111111 . 11110000
212.191.65.6
= 11010100 . 10111111 . 01000001 . 00000110
daje nam to adres sieci:
212.191.65.0
= 11010100 . 10111111 . 01000001 . 00000000
oraz część adresu przeznaczona dla hosta:
00000000 . 00000000 . 00000000 . 00000110
Pierwszy adres w sieci, (numer hosta w sieci = 0) rozumiany jest jako adres sieci i nie może być
wykorzystywany przez hosty. np. 212.191.65.0 z maską 24 bitową.
Ostatni adres IP w sieci, (numer sieci + same jedynki w części numeru hosta) oznacza adres rozgłaszania
w tej sieci. Dlatego licząc ilość dostępnych adresów hostów należy odjąć 2. np. 212.191.65.255 z maską 24
bitową.
Routing:
Wiemy już co to jest adres IP oraz maska podsieci warto zastanowić się po co to wszystko ? Jak już była
mowa pakiet IP podróżując w sieci nie zawiera definicji jak dotrzeć do adresata. Komputery pośredniczące w
transmisji muszą wywnioskować jak dostarczyć pakiet na podstawie samego adresu IP.
Każdy router posiada tablicę routingu w której przechowywane są następujące informacje:
sieć docelowa
212.191.65.0
.......
default
maska docelowa
255.255.255.0
następny skok
ip_gateway'a
cena
2
iface
eth0
0.0.0.0
domyślny_gw
1
eth2
Odbierając pakiet z sieci router sprawdza do jakiej sieci należy dostarczyć pakiet poprzez wykonanie operacji
IP_DOCELOWY AND MASKA_DOCELOWA
Jeżeli otrzymany adres sieci zgodzi się z przechowywanym adresem docelowym sieci pakiet wysyłany jest do
odpowiedniego routera.
Zadanie:
–
–
–
policz binarną reprezentacje adresu 193.120.240.100 oraz 78.113.239.63
sprawdź czy 212.191.65.192/25 należy do sieci 212.191.65.128/25
policz adres sieci oraz zakres adresów w tej sieci dla par
212.191.65.30 z maską 255.255.255.0
212.191.192.34 z maską 255.255.224.0
10.130.191.67 z maską 255.255.128.0
Konfiguracja połączeń sieciowych.
Co to jest interfejs sieciowy ?
–
–
Najogólniej interfejsem sieciowym w systemach linux nazywamy urządzenia logiczne pozwalające na
nawiązywanie połączeń różnego typu. Najprościej jest to to karta sieciowa.
etho - pierwsza karta, eth1 następna itd. lo - pętla zwrotna.
Co jest potrzebne do działania sieci:
–
–
–
skonfigurowany interfejs sieciowy - wystarczy adres IP, maska podsieci.
określone serwery DNS z których system ma korzystać
określenie bramy domyślnej lub routerów (żeby komputer wiedział jak nawiązać połączenie)
Ręczne ustawienie karty sieciowej:
Abu skonfigurować kartę sieciową należy wykonać polecenie ifconfig z odpowiednimi parametrami. Składnia
polecenia :
ifconfig interfejs opcje
np.
ifconfig eth0 down
ifconfig eth0 up POZOSTAŁE_OPCJE
Należy pamiętać aby podać odpowiednie adres ip oraz maskę wynikające z konfiguracji naszej sieci.
Więcej szczegółów w podręczniku do polecenia
man ifconfig
Ręczne określenie używanego serwera DNS:
Powyższe czynności spowodują poprawne skonfigurowanie sieci aby można w pełni korzystać z
zasobów sieci konieczne jest uruchomienie usługi rozwiązywania nazw domen (DNS). Aby tego dokonać
dokonujemy wpisów w pliku
/etc/resolv.conf
Plik powinien zawierać wpis podobny do poniższego
nameserver 192.168.1.200
Oczywiście adres należy zastąpić właściwym adresem serwera DNS. Więcej informacji w dokumentacji:
man resolv.conf
Plik może zawierać również domeny przeszukiwania. Jeżeli mamy np. domenę domowa.pl to możemy dodać
wpis
search domowa.pl
który spowoduje że będzie można używać samych nazw hostów zamiast pełnej nazwy domenowej. Zamiast
pisać w przeglądarce komputer3.domowa.pl albo ftp.domowa.pl będzie można używać samego ftp lub
komputer3.
Ręczne określenie bramy domyślnej:
Po skonfigurowaniu interfejsu możliwa jest komunikacja jedynie w obrębie lokalnego fragmentu sieci.
Aby możliwa była komunikacja z innymi sieciami konieczne jest ustawienie domyślnej bramy, tj. routera który
odpowiada za przekazywanie naszych pakietów do odległych sieci. Najczęściej w małych sieciach dostępny jest
jeden router. Do ustawiania routingu (zasad przekazywania pakietów) korzysta się z polecenia route.
przykład:
route
Takie wykonanie pokazuje aktualną tablicę routingu. Tablica zawiera kolejno adres sieci docelowej, adres
routera do którego przekazywać pakiety, maskę sieci, flagi informacyjne, kosz trasy oraz interfejs sieciowy do
którego przekazać pakiet.
Aby zdefiniować domyślną bramę wpisujemy polecenie
route add default gw 192.168.0.1
Podajemy oczywiście adres faktycznej bramy nie podany w przykładzie. Takie ustawienie spowoduje że
wszystkie połączenia z komputerami z poza lokalnej sieci będą wykonywane za pośrednictwem tej bramy
domyślnej.
W takiej sieci komputery z podsieci 192.168.3.0 ustawią adres swojej domyślnej bramy na 192.168.3.1,
komputery z podsieci 192.168.2.0 ustawią adres 192.168.2.1. Na powyższym rysunku widzimy że router
posiada 3 karty sieciowe po jednej w obsługiwanych podsieciach oraz jedną łączącą go z internetem za
pośrednictwem jego routera dostępowego. Tak więc router posiadał by wpisy przekierowujące pakiety
pomiędzy dwoma podsieciami oraz domyślną bramę pod adresem 212.191.65.1
Więcej szczegółów w podręczniku man route
Konfiguracja za pomocą DHCP:
–
–
–
DHCP (dynamic host configuration protocol) jest protokołem automatycznego wykrywania ustawień sieci
lokalnej oraz pobierania adresu ip, maski, konfiguracji DNS oraz domyślnej bramy.
DHCP pozwala więc na automatyczne konfigurowanie wszystkich hostów sieci lokalnej z jednego punktu
centralnego którym jest server dhcp.
Każdy klient DHCP musi co ustalony czas (np. 30 min) odnowić swój adres IP w przeciwnym razie zostanie
uznany za niedostępny a adres może być nadany innemy hostowi.
Polecenie pump domyślnie stara się skonfigurować kartę eth0. Jeśli w naszym komputerze sieć
podłączona jest do karty eth1 powinniśmy uruchamiać pumpa z nazwą karty sieciowej czyli:
pump eth1
Zadanie:
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
przeloguj się na konto superużytkownika
zatrzymaj program pump jeśli jest włączony (poleceniem killall pump)
znajdź w dokumentacji polecenia ifconfig odpowiednie parametry by skonfigurować kartę sieciową eth0 w
następujący sposób:
– adres IP 192.168.1.(numer komputera przylepiony na monitorze)
– maska 255.255.255.0
sprawdź działanie karty poleceniem ping (wpisz adres IP sąsiada który skończył już to zadanie).
zmień adres na 192.168.(numer komputera na ekranie).1
sprawdź działanie karty poleceniem ping (wpisz adres IP sąsiada który skończył już to zadanie).
dlaczego teraz ping nie działa ?
jeśli coś się nie uda zatrzymaj kartę i spróbuj ponownie
ustaw adres ponownie na 192.168.1.(numer komputera przylepiony na monitorze)
ustaw domyślną bramę na adres 196.168.1.200
zastanów się dlaczego nie będzie działać polecenie ping wp.pl? oraz kiedy powinno działać.
zatrzymaj klienta dhcp lub jeśli masz ręcznie skonfigurowaną kartę sieciową użyj polecenia ifconfig by ją
zatrzymać.
uruchom polecenie pump
wykonaj polecenie ifconfig bez parametrów by zobaczyć konfigurację karty
wykonaj polecenie pump z odpowiednim parametrem by zobaczyć status karty
jeśli sieć nie będzie działać może trzeba wybrać inny interfejs sieciowy?