Lista 2

Transkrypt

Lista 2
Technologie informacyjne
Laboratorium, lista 2
Część 1
W tej części będziemy pracować w systemie Linux (dowolna spośród
2 dystrybucji).
1. Wygeneruj klucz prywatny i publiczny.
2. Wyeksportuj swój klucz publiczny.
3. Wymień się kluczami publicznymi z wybraną osobą siedzącą w innym
miejscu sali (nie bezpośrednio obok).
4. Zaimportuj klucz publiczny koleżanki lub kolegi do swojego pęka kluczy.
5. Podpisz klucz publiczny koleżanki lub kolegi.
6. Przygotuj wiadomość w pliku tekstowym. Zaszyfruj ją i podpisz.
7. Wymień się wiadomościami z koleżanką lub kolegą.
8. Spróbuj odkodować wiadomość i sprawdzić podpis. Jeśli Ci się udało,
zapytaj, czy prawidłowo odczytałeś wiadomość.
9. Przekaż wiadomość przeznaczoną dla Ciebie komuś innemu, odbierz
cudzą wiadomość.
10. Spróbuj odkodować wiadomość i sprawdzić podpis. Jeśli Ci się udało,
zapytaj, czy prawidłowo odczytałeś wiadomość.
11. Wyeksportuj klucz prywatny i zapisz go w bezpiecznym miejscu (jeśli
nie masz przy sobie pamięci przenośnej, pomiń ten krok i wygeneruj
klucz nowy klucz innym razem).
12. Skasuj pęk kluczy.
Część 2
W tej części możemy pracować na dowolnym spośród dostępnych systemów. Wejdź na dowolną stronę wyposażoną w certyfikat SSL, czyli korzystającą z protokołu HTTPS.
1. Kto jest wystawcą certyfikatu? (Urzędem certyfikacji podpisującym
klucz)
2. Jaka jest data ważności certyfikatu?
3. Z kim skontaktować się w sytuacji, gdyby certyfikat nie działał?
4. Jaki jest numer IP Twojego komputera w sieci lokalnej?
5. Jaki jest numer IP Twojego komputera w sieci globalnej?
6. Jaki jest numer IP komputera, na którym działa ta strona?
7. Jaką trasę pokonują pakiety w drodze do celu?
1
Ściągawka z GPG
Uwaga, klucze domyślnie trafiają do tak zwanego pęku kluczy. Domyślnie, jest to ~/.gnupg. Ponieważ katalog domowy jest współdzielony przez
wielu użytkowników, do każdego wywołania programu GPG dodajemy
opcję --homedir ~/123456/gpg, gdzie 123456 jest numerem indeksu. Dodatkowo, warto podczas generowania kluczy wyłączyć lokalizację, czyli
tłumaczenie komunikatów na język polski. Robimy to dopisując LANG=en
przed komendą.
W przykładach pisząc (nieistniejącą) nazwę komendy
GPG
mamy na myśli właśnie
LANG=en gpg --homedir ~/123456/gpg
Jeśli wykonujemy te same komendy na komputerze prywatnym, możemy skorzystać z innego języka oraz domyślnego pęku kluczy — wtedy nie
ma potrzeby dopisywania dodatkowych opcji. Pęk kluczy można od razu
umieścić na pamięci przenośnej, wtedy też nie ma potrzeby go kasować.
Utworzenie katalogu na pęk kluczy:
mkdir ~/123456/gpg
Generowanie klucza: Aby wygenerować klucz, wpisujemy komendę
GPG --full-gen-key
Następnie wypełniamy formularz. Jeśli komenda nie jest dostępna (stara
wersja GPG), zadziała
GPG --gen-key
Po pojawieniu się formularza, wybieramy generowanie klucza RSA i RSA
(opcja 1, zatem wpisujemy jedynkę i naciskamy enter). Zostaniemy potem
zapytani o rozmiar klucza, możemy zostawić wartość domyślną lub zwiększyć. Wybraną wartość znów zatwierdzamy enterem. Potem ustalamy okres
ważności klucza. Domyślna wartość, czyli 0, oznacza, że klucz nie wygasa.
Po wprowadzeniu tej informacji, musimy ją zatwierdzić wpisując „y” oraz
enter.
Następny etap to wypełnienie informacji osobowych. Podajemy imię
oraz nazwisko, oddzielone spacją (stosując wielkie litery oraz polskie znaki).
Następnie podajemy adres e-mail. Potem zostaniemy zapytani o identyfikator. Może to być numer indeksu, może to być pseudonim, możemy to
pole zostawić puste. Cokolwiek tam wpiszemy, będzie widoczną częścią
podpisu! Po wyświetleniu potwierdzenia, mamy możliwość edycji poszczególnych pól lub zatwierdzenia (klawisz „O” i enter).
Potem musimy podać hasło (dwukrotnie, zgodne). Jeśli będzie zbyt
słabe, zostaniemy o tym poinformowani. Po wpisaniu odpowiedniego hasła
(musimy je zapamiętać!) komputer musi wygenerować odpowiednią ilość
entropii, czyli źródła losowości dla generatora liczb pseudolosowych. Aby
2
to zrobić, możemy poodwiedzać różne strony internetowe, pobawić się
okienkami, etc. Pełna informacja co generuje entropię pojawi się na ekranie.
Gdy procedura się zakończy, program wróci do konsoli.
Odnalezienie ID klucza: Podczas generowania na ekranie pojawiło się
ID klucza publicznego. Jest to wartość pojawiająca się po znaku ukośnika
w tekście takim, jak poniżej:
gpg: depth: 0 valid: 1 signed: 0 trust: 0-, 0q, 0n, 0m, 0f, 1u
pub rsa2048/8CA5D241 2015-10-12
W tym przypadku to 8CA5D241. W dalszych przykładach należy zastąpić
to ID odpowiednią wartością, podobnie jak 123456 numerem indeksu. Zamiast ID możemy też posłużyć się e-mailem, imieniem i nazwiskiem lub
komentarzem (pseudonimem, numerem indeksu, itp).
Eksport klucza publicznego: Piszemy
GPG --armor --export 8CA5D241 > ~/123456/klucz.pub
Plik klucz.pub możesz otworzyć w notatniku lub przekazać innej osobie.
Import klucza publicznego: Piszemy
GPG --import plik.pub
gdzie plik.pub to ścieżka do pliku klucza, który chcemy zaimportować. Po
imporcie zobaczymy ID klucza publicznego.
Lista kluczy: Piszemy
GPG --list-keys
Pozwana nam to sprawdzić ID kluczy oraz ich dane i statystyki (w tym poprawność). Załóżmy, że dopiero co zaimportowany klucz ma ID 145AF041.
Podpisanie klucza publicznego: Piszemy
GPG --sign-key 145AF041
Podpisywanie odbywa się za pomocą klucza prywatnego, więc konieczne
może być podanie hasła. Innym sposobem na podpisanie klucza, jest jego
edycja.
GPG --edit-key 145AF041
Podczas edycji możemy wpisać komendę sign, co spowoduje podpisanie
klucza. W edycji klucza mamy więcej możliwości, np. komendę trust, która
pozwala ustawić poziom zaufania oraz quit, która opuszcza tryb edycji.
Kodowanie wiadomości: Piszemy
GPG --encrypt -r 145AF041 plik
3
gdzie -r jest skrótem od --receiver, czyli odbiorca. W obecnym katalogu
zostanie utworzony plik plik.gpg, który będzie zaszyfrowany.
Podpisywanie wiadomości: Piszemy
GPG --sign plik
co spowoduje podpisanie pliku i zapisanie podpisanej wersji w pliku plik.gpg.
Niestety, nie będzie on czytelny (zostanie skompresowany). Jeśli chcemy,
aby wiadomość wciąż była czytelna i dysponujemy plikiem tekstowym, to
możemy napisać
GPG --clearsign plik
Tym razem plik zostanie zapisany w plik.asc. Istnieje też możliwość utworzenia osobego podpisu — wtedy musimy pamiętać, aby wysłać dwa pliki
(plik oraz podpis).
GPG --detach-sig plik
Podpis zostanie zapisany w plik.sig.
Sprawdzanie podpisu: Piszemy
GPG --verify plik.sig plik
lub
GPG --verify plik.asc
lub
GPG --verify plik.gpg
zależnie od rodzaju podpisu.
Odkodowanie wiadomości: Piszemy
GPG --decrypt plik.gpg > plik
Co spowoduje, że powstanie odkodowany plik o nazwie plik.
Eksport klucza prywatnego: Piszemy
GPG --armor --export-secret-keys 8CA5D241 > ~/123456/klucz.priv
Więcej informacji i przykładów na stronie:
https://www.gnupg.org/gph/en/manual.html.
4
Ściągawka z diagnostyki sieci
Dane o certyfikacie: Dane o certyfikacie możemy sprawdzić wprost w
przeglądarce, zwykle klikając na znak kłódki w pasku adresu lub nazwę
firmy w pasku adresu (ale nie na sam adres).
Dane o domenie: Na systemie Linux możemy posłużyć się komendą whois
whois domena
Na systemie Windows w standardowej instalacji systemu nie ma odpowiednika tego narzędzia. Można go zainstalować lub skorzystać z usług w sieci,
jak whois.icann.org.
Sprawdzenie numeru IP w sieci lokalnej: Na systemie Linux możemy
użyć komendy
ifconfig
Na systemie Windows
ipconfig /all
Komendy te wyświetlają też adres MAC karty sieciowej (na systemie Linux
jest to ether lub HWaddr, na systemie Windows, Physical address).
Sprawdzenie numeru IP w sieci globalnej: Najłatwiej w przeglądarce
wpisać adres ipecho.net.
Sprawdzenie numeru IP innego komputera: Najłatwiej użyć programu
Ping. Na systemie Linux:
ping -c 5 domena
Na systemie Windows:
ping domena
Sprawdzenie trasy do komputera: Najłatwiej użyć programu Traceroute.
Na systemie Linux:
traceroute domena
Na systemie Windows:
tracert domena
5

Podobne dokumenty