Laboratorium nr 6 VPN i PKI

Podobne dokumenty
Laboratorium nr 4 Sieci VPN

Laboratorium nr 5 Sieci VPN

Bezpieczeństwo Systemów Komputerowych. Wirtualne Sieci Prywatne (VPN)

Bezpieczeństwo systemów informatycznych

Wykład 4 Bezpieczeństwo przesyłu informacji; Szyfrowanie

ZiMSK. Konsola, TELNET, SSH 1

IPsec bezpieczeństwo sieci komputerowych

Konfiguracja OpenVPN w AS30GSM200P. Informator Techniczny Strona 1 z 10

Konfiguracja OpenVPN w AS30GSM200P. Informator Techniczny Strona 1 z 15

Konfiguracja OpenVPN w AS30GSM200P. Informator Techniczny Strona 1 z 11

Wykład 3 Bezpieczeństwo przesyłu informacji; Szyfrowanie

Jarosław Kuchta Administrowanie Systemami Komputerowymi. Dostęp zdalny

MikroTik Serwer OpenVPN

Konfiguracja OpenVPN Parę słów o VPN i OpenVPN

VPN dla CEPIK 2.0. Józef Gawron. (wirtualna sieć prywatna dla CEPIK 2.0) Radom, 2 lipiec 2016 r.

Instalacja i konfiguracja serwera SSH.

VPN Host-LAN IPSec X.509 z wykorzystaniem DrayTek Smart VPN Client

T: Zabezpieczenie dostępu do komputera.

Hosting WWW Bezpieczeństwo hostingu WWW. Dr Michał Tanaś (

Połączenie VPN LAN-LAN IPSec X.509 (stały IP > stały IP)

Serwer SSH. Wprowadzenie do serwera SSH Instalacja i konfiguracja Zarządzanie kluczami

Zdalne logowanie do serwerów

VPN Virtual Private Network. Użycie certyfikatów niekwalifikowanych w sieciach VPN. wersja 1.1 UNIZETO TECHNOLOGIES SA

SSL (Secure Socket Layer)

Tworzenie połączeń VPN.

Konfiguracja aplikacji ZyXEL Remote Security Client:

Konfiguracja OpenVPN w AS30GSM200P. Informator Techniczny Strona 1 z 13

Zastosowania PKI dla wirtualnych sieci prywatnych

Laboratorium nr 5 Podpis elektroniczny i certyfikaty

Protokół IPsec. Patryk Czarnik. Bezpieczeństwo sieci komputerowych MSUI 2010/11. Wydział Matematyki, Informatyki i Mechaniki Uniwersytet Warszawski

Wykład 4. komputerowych Protokoły SSL i TLS główne slajdy. 26 października Igor T. Podolak Instytut Informatyki Uniwersytet Jagielloński

OpenVPN na dd-wrt

12. Wirtualne sieci prywatne (VPN)

Usługi sieciowe systemu Linux

Łukasz Przywarty Wrocław, r. Grupa: WT/N 11:15-14:00. Sprawozdanie z zajęć laboratoryjnych: OpenSSL

1. Wstęp. Wizualizacja połączenia

Bezpieczeństwo usług oraz informacje o certyfikatach

Bezpieczeństwo systemów informatycznych

Dokumentacja SMS przez FTP

Podstawy Secure Sockets Layer

Uwierzytelnianie użytkowników sieci bezprzewodowej z wykorzystaniem serwera Radius (Windows 2008)

Konfiguracja IPSec Brama IPSec w Windows 2003 Server

Konfiguracja bezpiecznego tunelu IPSec VPN w oparciu o bramę ZyWall35 i klienta ZyXEL RSC (Remote Security Client).

Protokół IPsec. Patryk Czarnik

Tworzenie sieci VPN w środowisku Linux i Windows

Sieci VPN SSL czy IPSec?

INŻYNIERIA BEZPIECZEŃSTWA LABORATORIUM. VPN / OpenVPN

Systemy bezpieczeństwa sieciowego

ROZPORZĄDZENIE MINISTRA SPRAW WEWNĘTRZNYCH I ADMINISTRACJI 1) z dnia 2007 r.

Połączenie VPN Host-LAN L2TP over IPSec z wykorzystaniem Windows Vista/7

TELEFONIA INTERNETOWA

Brinet sp. z o.o. wyłączny przedstawiciel DrayTek w Polsce

Połączenie VPN LAN-LAN IPSec (tryb agresywny)

Instytut Tele- i Radiotechniczny

ZADANIE.07. Procesy Bezpieczeństwa Sieciowego v.2011alfa ZADANIE.07. VPN RA Virtual Private Network Remote Access (Router) - 1 -

11. Autoryzacja użytkowników

Sieci wirtualne VLAN cz. I

Bezpieczeństwo systemów komputerowych

VPN Host-LAN L2TP over IPSec z wykorzystaniem DrayTek Smart VPN Client. 1. Konfiguracja serwera VPN. 2. Konfiguracja klienta VPN

Instrukcja generowania żądania CSR SOW WERSJA 1.6

Połączenie VPN Host-LAN IPSec z wykorzystaniem Windows Vista/7. 1. Konfiguracja routera. 2. Konfiguracja klienta VPN. 3. Zainicjowanie połączenia

Zestawienie tunelu VPN po protokole IPSec pomiędzy klientem VPN - Draytek Smart VPN Client za NAT-em, a routerem Draytek

SSL VPN Virtual Private Network with Secure Socket Layer. Wirtualne sieci prywatne z bezpieczną warstwą gniazd

IPSec over WLAN z wykorzystaniem DrayTek Smart VPN Client. 1. Konfiguracja serwera VPN. 2. Konfiguracja klienta VPN. 3. Zainicjowanie połączenia

Koncentrator VPN. Konfiguracja OpenVPN. +Sieci hybrydowe. Dotyczy wersji oprogramowania 3.7 Wersja dokumentu: 1.0

# katalog, w który zapisywane są certyfikaty crl_dir=$dir/crl

Wykład 4. Metody uwierzytelniania - Bezpieczeństwo (3) wg The Java EE 5 Tutorial Autor: Zofia Kruczkiewicz

Protokół HTTP (2) I) Wprowadzenie. II) Użyte narzędzia: III) Kolejność działań

Połączenie VPN Host-LAN SSL z wykorzystaniem przeglądarki. 1. Konfiguracja serwera VPN 1.1. Ustawienia ogólne 1.2. Konto SSL 1.3. Grupa użytkowników

Laboratorium 3. Zaawansowana konfiguracja i zarządzanie zaporami sieciowymi D-Link NetDefend cz.3.

VLAN. VLAN (ang. Virtual Local Area Network) - sieć komputerowa wydzielona logicznie w ramach innej, większej sieci fizycznej

Ćwiczenie 7 Sieć bezprzewodowa z wykorzystaniem rutera.

Laboratorium nr 1 Szyfrowanie i kontrola integralności

Laboratorium - Przechwytywanie i badanie datagramów DNS w programie Wireshark

Protokoły zdalnego logowania Telnet i SSH

SMB protokół udostępniania plików i drukarek

VPN Host-LAN L2TP over IPSec z wykorzystaniem DrayTek Smart VPN Client

Instrukcja podłączenia bramki IP 1R+L oraz IP 2R+L w trybie serwisowym za pomocą usługi telnet.

Połączenie VPN LAN-LAN IPSec (stały IP > stały IP)

VSFTPd Użycie certyfikatów niekwalifikowanych w oprogramowaniuvsftpd. wersja 1.3 UNIZETO TECHNOLOGIES SA

PROFESJONALNE SYSTEMY BEZPIECZEŃSTWA

SIP Studia Podyplomowe Ćwiczenie laboratoryjne Instrukcja

Połączenie VPN Host-LAN IPSec wykorzystaniem routera Vigor jako klienta VPN

LABORATORIUM SIECI KOMPUTEROWYCH (compnet.et.put.poznan.pl)

Brinet sp. z o.o. wyłączny przedstawiciel DrayTek w Polsce

Badanie bezpieczeństwa IPv6

POSTFIX (SMTP) + POP3 + SSL. Użycie certyfikatów niekwalifikowanych w oprogramowaniu POSTFIX. wersja 1.4

Protokół DHCP. DHCP Dynamic Host Configuration Protocol

Laboratorium podstaw telekomunikacji

Instalacja i konfiguracja serwera telnet.

SSH - Secure Shell Omówienie protokołu na przykładzie OpenSSH

Uwaga!!! Autentykacja LDAP/AD zaimplementowana w Vigor wspiera tylko proste uwierzytelnianie (hasło przesyłane jest jawnym tekstem).

System zdalnego dostępu (VPN) do sieci Wydziału Elektrycznego PW

Metryka dokumentu. str. 2. Tytuł. CEPiK 2 dostęp VPN. Centralny Ośrodek Informatyki. Zatwierdzający. Wersja Data Kto Opis zmian.

Sieci komputerowe i bazy danych

Konfiguracja własnego routera LAN/WLAN

Podstawowe protokoły transportowe stosowane w sieciach IP cz.1

Bezpieczne protokoły Główne zagadnienia wykładu

Połączenie VPN Host-LAN SSL z wykorzystaniem motp. 1. Aplikacje motp 1.1. DroidOTP 1.2. Mobile-OTP. 2. Konfiguracja serwera VPN

Bezpieczeństwo w sieci lokalnej - prezentacja na potrzeby Systemów operacyjnych

Transkrypt:

Laboratorium nr 6 VPN i PKI Wprowadzenie Sieć VPN (Virtual Private Network) to sieć komputerowa, która pomimo że używa publicznej infrastruktury (np. sieć Internet), jest w stanie zapewnić wysoki poziom bezpieczeństwa porównywalny do sieci prywatnej. Przede wszystkim, sieci VPN zapewniają poufność i integralność przesyłanych danych. Najbardziej znanym rozwiązaniem jest sieć VPN oparta na IPsec. Protokół IPsec, ma na celu ochronę informacji przesyłanych w sieciach komputerowych. Jest on blisko związany z warstwą sieci w modelu ISO/OSI, czyli protokołem IP. Zapewnia zarówno poufność jak i integralność danych. W celu ich realizacji, zdefiniowano dwa rodzaje nagłówków: AH (Authentication Header) oraz ESP (Encapsulation Security Payload). Protokół AH zapewnia ochronę integralności zarówno dla przesyłanych danych, jak i części nagłówka IP. Ochroną obejmowane są te pola nagłówka, które nie ulegają zmianie podczas wędrówki przez sieć (np. adresy, identyfikator). Aby zapewnić ochronę informacji, wykorzystywane są takie funkcje skrótu jak MD-5, SHA-1 lub RIPEMD-160. Protokół ESP jest bardziej złożony niż AH. Zapewnia, obok ochrony integralności danych, także ich szyfrowanie. Integralność sprawdzana jest tylko dla danych użytecznych. Szyfrowanie natomiast może odbywać się przy wykorzystaniu algorytmów, takich jak: DES, 3DES (Triple DES) czy AES. Algorytmy funkcji skrótu są takie same jak w przypadku AH.

Protokół IPsec może pracować w dwóch trybach. Oba z nich przedstawione zostały na rysunku. Pierwszym, najprostszym jest tzw. tryb transportowy. Pomiędzy nagłówkiem IP a protokołem wyższej warstwy (transportowej), dodany został nagłówek IPsec. Chroni on zarówno dane użyteczne jak i nagłówki wyższych warstw. Drugi tryb zapewnia tunelowanie protokołu IP. Dane użyteczne wraz ze wszystkimi nagłówkami są szyfrowane, a protokół IPsec buduje nowy nagłówek IP, w którym umieszcza adresy pośrednich ruterów na trasie między nadawcą a odbiorcą. Dzięki temu, że wewnętrzny pakiet jest szyfrowany w całości, bierny obserwator nie ma możliwości stwierdzenia, między jakimi jednostkami zachodzi komunikacja. Sieci VPN można również budować korzystając z asymetrycznych algorytmów szyfrujących. Na takim sposobie ochrony danych bazuje protokół SSL (Secure Socket Layer). Aby móc zbudować sieć SSL VPN należy stworzyć centrum certyfikacji wraz z całą infrastrukturą klucza publicznego. Przed wysłaniem, dane będą szyfrowane za pomocą kluczy publicznych znajdujących się w odpowiednich certyfikatach. Podczas zajęć laboratoryjnych, do tworzenia testowej sieci VPN opartej o PKI, zostanie użyty program OpenVPN. Przygotowanie 1. Proszę uruchomić komputer w systemie Linux. Następnie zainstalować OpenVPN przy użyciu komend: sudo apt-get update sudo apt-get install openvpn easy-rsa Następnie skopiować katalog easy-rsa do /etc/openvpn i stworzyć katalog keys : sudo su cp -r /usr/share/easy-rsa/ /etc/openvpn mkdir /etc/openvpn/easy-rsa/keys 2. Tworzymy centrum certyfikacyjne za pomocą komend: cd /etc/openvpn/easy-rsa../vars./clean-all./build-ca Można wcześniej zmienić dane w pliku vars, aby ustawić w odpowiedni sposób wszystkie parametry: KEY_COUNTRY, KEY_PROVINCE, KEY_CITY, KEY_ORG i KEY_EMAIL (proszę zwrócić uwagę na fakt że w tym pliku jest podana również długość klucza).

3. Generowanie certyfikatów i kluczy dla serwera (server) i klientów (client1, client2):./build-key-server server./build-key client1./build-key client2 Proszę zapoznać się ze wszystkimi polami przykładowego certyfikatu 4. Definicja parametrów do ustalania kluczy za pomocą komendy: openssl dhparam -out /etc/openvpn/dh1024.pem 1024 Lista wygenerowanych plików znajduje się w poniższej tabeli. Część z plików należy dystrybuować do klientów. Które z plików należy dystrybuować do klientów, a które nie możemy? Dlaczego? Filename Needed By Purpose Secret ca.crt server + all clients Root CA certificate NO ca.key key signing machine only Root CA key YES dh{n}.pem server only Diffie Hellman parameters NO server.crt server only Server Certificate NO server.key server only Server Key YES client1.crt client1 only Client1 Certificate NO client1.key client1 only Client1 Key YES client2.crt client2 only Client2 Certificate NO client2.key client2 only Client2 Key YES client3.crt client3 only Client3 Certificate NO client3.key client3 only Client3 Key YES

Połączenie VPN typu klient-serwer (pomiędzy różnymi komputerami) 5. Kopiujemy pliki związane z serwerem do katalogu /etc/openvpn: cp /etc/openvpn/easy-rsa/keys/{server.crt,server.key,ca.crt} /etc/openvpn Następnie, ściągamy ze strony przedmiotu gotowy plik z konfiguracją serwera server.ovpn (plik kopiujemy do katalogu /etc/openvpn) i uruchamiamy serwer komendą: openvpn --config server.ovpn Klient (na innym komputerze) dostaje od serwera pliki: client1.crt, client1.key oraz ca.crt i umieszcza je w katalogu /etc/openvpn (oczywiście wcześniej należy zainstalować środowisko openvpn używając komend z punktu 1). Następnie, ściąga ze strony przedmiotu gotowy plik z konfiguracją klienta client.ovpn (plik również kopiuje do katalogu /etc/openvpn) i uruchamia połączenie komendą: openvpn --config client.ovpn (proszę pamiętać o wpisaniu poprawnego adresu IP serwera adres z podsieci 10.64.0.0 oraz upewnić się że w pliku konfiguracyjnym znajdują się odpowiednie nazwy plików z certyfikatami i kluczem prywatnym klienta) W razie problemów z połączeniem proszę wyłączyć firewall komendą: ufw disable 6. Jeśli udało się nawiązać połączenie, proszę odwołać certyfikat jednego klienta - można to zrobić za pomocą listy unieważnionych certyfikatów CRL (Certificate Revocation List), która będzie sprawdzana podczas każdorazowej próby łączenia klienta z serwerem. Jeśli na liście CRL znajduje się certyfikat klienta połączenie z tym klientem nie będzie ustalone. Przykładowo, aby unieważnić certyfikat dla klienta nr 2, należy wygenerować listę CRL za pomocą komend:../vars./revoke-full client2 Komendy te generują plik crl.pem który należy skopiować do folderu, w którym uruchomiony jest serwer. Następnie w pliku konfiguracyjnym serwera należy dodać linię: crl-verify crl.pem tak aby serwer sprawdzał listę odwołanych certyfikatów przy każdorazowej weryfikacji klientów. Na koniec należy uruchomić serwer (lub zrestartować jeśli już jest uruchomiony) i spróbować podłączyć do niego klienta nr 2.

7. Możliwości konfiguracyjne serwera OpenVPN są bardzo bogate. Proszę zapoznać się z opcjami zawartymi w pliku server.ovpn W szczególności proszę: ustawić inny algorytm szyfrowania danych (np. 3DES) skonfigurować serwer tak aby nasłuchiwał zarówno na porcie UDP jak i TCP (wpis: proto tcp ) sprawdzić informacje dotyczące połączonych klientów (aktualizowane co minutę) w pliku z logami: openvpn-status.log 8. Kolejne ćwiczenie będzie polegało na zarządzanie siecią VPN za pomocą specjalnego interfejsu. Proszę dodać wpis: management localhost 7505 Następnie połączyć się z interfejsem np. poprzez telnet: telnet localhost 7505 Proszę sprawdzić jakie informacje pojawiają się w przypadku łączenia nowego klienta z serwerem. 9. W utworzonej sieci klienci mogą się komunikować jedynie z serwerem. Proszę umożliwić komunikację między klientami sieci VPN (opcja: route) 10. Proszę przetestować alternatywy sposób uwierzytelniania klientów, np. za pomocą haseł (wpisy: client-cert-not-required i username-as-commonname ) Tunel VPN pomiędzy dwoma komputerami 11. Proszę utworzyć tunel VPN pomiędzy dwoma komputerami przy użyciu pliku tunel.ovpn (do ściągnięcia ze strony przedmiotu). Obie osoby muszą wpisać odpowiednie adresy IP w pliku konfiguracyjnym i wygenerować współdzielony klucz za pomocą komendy: openvpn --genkey --secret static.key Współdzielony klucz static.key należy dystrybuować do obu jednostek które chcą utworzyć bezpieczny tunel (proszę zwrócić uwagę na format zapisu danych w tym pliku). Następnie uruchamiamy połączenie. Czy współdzielony klucz static.key powinien być tajny czy jawny? Czym rożni się ten sposób łączenia komputerów w porównaniu z poprzednim (klientserwer)? Jaki algorytm szyfrujący jest użyty w celu zabezpieczenia transmisji? Proszę podać długość klucza i rodzaj trybu szyfrowania. 12. Bezpieczeństwo transmisji można sprawdzić na wiele sposobów, np. wysyłając pakiety ping na adresy IP, ściągając udostępniony plik tekstowy, itd. W celu analizy ruchu można użyć programu do analizy pakietów (Ethereal, WireShark, itp.). Należy upewnić się czy program analizuje pakiety na odpowiedniej karcie sieciowej. Aby zobaczyć różnice, badania należy przeprowadzić dla połączenia VPN oraz bez niego.

Sprawozdanie W sprawozdaniu z laboratorium nr 6 należy opisać wykonane ćwiczenia i ich wyniki. W szczególności należy odpowiedzieć na zadane pytania. Dodatkowo we wnioskach należy wyjaśnić, dlaczego Infrastruktura Klucza Publicznego (PKI) jest w stanie zapewnić bezpieczeństwo połączeń VPN typu klient-serwer.