Dydaktyka:
FeedbackTo jest stara wersja strony!
Zadanie 1. Przygotuj konfigurację sieciową:
Vlab, następnie Linux SK progapt-get updateapt-get install telnet picocomapt-get install dnsmasq/etc/dnsmasq.conf linie: interface=enp0s8 dhcp-range=10.0.0.2,10.0.1.10enp0s8 na np. 10.0.0.1/24 i włącz go, przykładowa komenda: ifconfig enp0s8 10.0.0.1/24 upsysctl net.ipv4.conf.all.forwarding=1enp0s3: iptables -t nat -A POSTROUTING -o enp0s3 -j MASQUERADEsystemctl restart dnsmasqRADIUS to nazwa protokołu sieciowego służącego do uwierzytelniania (authentication), autoryzacji (authorization), i accountingu (accounting), usług określanych wspólnie jako AAA.
Protokół RADIUS pozwala na wysłanie żądania dostępu (access-request) w formie listy atrybutów (identyfikator atrybutu + wartość). Serwer RADIUS na podstawie tych atrybutów albo pozwala na dostęp (access-accept), żąda więcej danych (access-challange), albo odmawia dostępu (access-reject).
Odpowiedź (jak każda inna wiadomość) to lista atrybutów w których można zawrzeć dodatkowe informacje, używane np. do autoryzacji czy do konfiguracji klienta. Przykładowo: można odesłać identyfikator VLANu uwierzytelnionego użytkownika czy informacje o jego poziomie uprawnień dostępu do konsoli CISCO.
Protokół RADIUS używany jest (tylko) między serwerem RADIUS a urządzeniem wykonującym uwierzytelnienie (Netwok Access Server), np. Access Pointem. Przykład (graficzny): [1].
FreeRADIUS [1], [2] jest najpopularniejszym darmowym (i open-source) serwerem RADIUS.
Zadanie 2. Zainstaluj i skonfiguruj (minimalnie) serwer FreeRadius:
apt-get update apt-get install freeradius freeradius-utils wpasupplicantsystemctl stop freeradius /etc/freeradius/3.0usersmods-available/ldap) lub z bazy danych (mods-available/sql)clients.confsecret?freeradius -Xradtest użytkownik hasło 127.0.0.1 0 testing123 0 localhost certsca.cnf i server.cnfmake freeradius -XKonfiguracja serwera radius (z materiałów eduroam):
Wstęp do CISCO na podstawie cisco_wstep
Zadanie 3. Skonfiguruj AP CISCO do współpracy z serwerem protokołu RADIUS:
Ciscopicocom /dev/ttyS0(conf)# wykonaj konfigurację interfejsu mostka, nadając mu adres IP z dhcp: interface BVI 1 ip address dhcp
radius-server host 10.0.0.1 auth-port 1812 acct-port 1813 key sekrettest aaa group radius użytkownik hasło new-codeAAA, jak wspomniano wyżej, to:
W protokole RADIUS uwierzytelnienie i autoryzacja są zwykle robione razem, accounting musi być wykonywany osobno.
Poniższej znajdują się ćwiczenia pokazujące działanie każdego z elementów AAA na przykładzie dostępu do wiersza poleceń urządzania CISCO.
Zadanie 4. Authentication - uwierzytelnianie (logowanie do CISCO)
aaa authentication login default group radius none none) to określenie co ma się dziać jeśli serwer RADIUS nie odpowiada; none oznacza brak kontroli dostępu telnet 10.0.0.xZadanie 5. Authorisation - autoryzacja (logowanie do CISCO)
aaa authorization exec default group radiusrobert Cleartext-Password := "hello"
Service-Type = NAS-Prompt-User,
Cisco-AVpair = "shell:priv-lvl=15"
alice Cleartext-Password := "hello"
NAS-Port-Type = Wireless-802.11
alice, na utworzonego przez Ciebie wcześniej użytkownika, na robertZadanie 6. Accounting (logowanie do CISCO)
aaa accounting exec default start-stop group radiusradius-server vsa send accounting/var/log/freeradius/radacct/ i przejrzyj wpisy dotyczące accountingu
Jednym z ważnych zastosowań serwera RADIUS jest uwierzytelnianie użytkowników w sieciach bezprzewodowych korzystających z WPA/WPA2 Enterprise (WPA2 jest opisywane przez standard IEEE 802.11i).
Standard WPA/802.11i nie wprowadza własnych metod uwierzytelniania - nakazuje użycie standardu 802.1X i zdefiniowanego w nim EAPOL.
EAPOL korzysta z rozwiązania EAP (EAPOL = EAP over LAN). Protokół EAP nie służy do uwierzytelniania; EAP pozwala na przekazanie wiadomości różnych metod (protokołów) uwierzytelniania, a których najpopularniejsze to TLS, PEAP i TTLS.
Wiadomości protokołu EAP są przesyłane wpierw między klientem sieci bezprzewodowej (stacją, STA) a AccessPointem (AP) przy użyciu protokołu EAPOL, następnie między AP a serwerem RADIUS przy użyciu protokołu RADIUS.
Więcej informacji o 802.1X:
Użycia WPA2 Enterprise na przykładzie sieci eduroam:
Poniższe ćwiczenia pokazują prostą konfigurację sieci WPA2 Enterprise z wykorzystaniem wcześniej skonfigurowanego serwera RADIUS do uwierzytelniania użytkowników sieci bezprzewodowej.
Zadanie 7. Sprawdź lokalnie (na serwerze radius) uwierzytelnianie EAP:
eapol_testnetwork={
ssid="wartoscIgnorowanaPrzezEapolTest"
key_mgmt=WPA-EAP
eap=PEAP
#eap=TTLS
anonymous_identity="anonymous"
phase2="autheap=MSCHAPV2"
identity="użytkownik"
password="hasło"
}
./eapol_test -c wpa_supplicant.conf -s sekret_radiusa
# building eapol_test git clone git://w1.fi/hostap.git cd hostapd/wpa_supplicant cp defconfig .config nano .config # CONFIG_DRIVER_WEXT=y CONFIG_EAPOL_TEST=y CONFIG_LIBNL32=y CFLAGS += -I/usr/include/libnl3 -Wno-format-truncation apt-get install libssl-dev libnl-genl-3-dev libnl-3-dev make make eapol_test
Zadanie 8. Skonfiguruj nową grupę serwerów radius i nową grupę uwierzytelniania na potrzeby WPA-Enterprise:
aaa group server radius grupaSerwerowRadiusDlaWpa server 10.0.0.1 auth-port 1812 acct-port 1813 aaa authentication login grupaUwierzytelnianiaDlaWpa group grupaSerwerowRadiusDlaWpa
Zadanie 9. Skonfiguruj sieć bezprzewodową (przkład dla sieci o nazwie wybranySsidSieci działającej na kanale 11):
dot11 ssid wybranySsidSieci
authentication open eap grupaUwierzytelnianiaDlaWpa
authentication key-management wpa
guest-mode
interface Dot11Radio 0
channel 11
encryption mode ciphers aes-ccm
ssid wybranySsidSieci
no shut
Zadanie 10. Przetestuj łączenie się do sieci (wykorzystując nieużywany komputer lub własną komórkę / laptopa)
Zadanie 11. Ograniczanie dozwolonych metod EAP:
mods-enabled/eap z katalogu konfiguracji FreeRadiusa.ttls i peap (uwaga: sekcje tls-config i mschapv2 muszą zostać)eap_test działanie konfiguracjiZadanie 12. Accounting sieci bezprzewodowej:
aaa accounting network grupaAcctDlaWpa start-stop group radiusDlaWpadot11 ssid wybranySsidSieci accounting grupaAcctDlaWpa/var/log/freeradius/radacct/ i przejrzyj wpisy dotyczące accountingu Opisany w poprzedniej sekcji protokół IEEE 802.1X stworzono na potrzebę uwierzytelniania urządzeń podłączanych do sieci kablowej. IEEE 802.1X to tylko uwierzytelnianie klienta – w porównaniu do WPA2-Enterprise nie stosuje się szyfrowania ruchu.
Zadanie 13. Przełącz się z konfiguracji AP na konfigurację switcha. Wykonaj podstawową konfigurację:
interface range GigabitEthernet 0/1-24 spanning-tree portfast interface vlan 1 ip address dhcp do ping 10.0.0.1 aaa new-model radius-server host 10.0.0.1 auth-port 1812 acct-port 1813 key sekret ip radius source-interface vlan 1 do test aaa group radius użytkownik hasło new-code
Zadanie 14. Wykonaj minimalną konfigurację 802.1X:
aaa authentication dot1x default group radiusdot1x system-auth-controlinterface GigabitEthernet 0/24 switchport mode accessauthenticator): interface range GigabitEthernet 0/1-12 switchport mode access dot1x port-control auto dot1x pae authenticatorshow dot1x show dot1x interface GigabitEthernet 0/1 detailsZadanie 15. Uwierzytelnij połączenie do switcha:
ap_scan=0
network={
key_mgmt=IEEE8021X
eap=PEAP
#eap=TTLS
phase2="autheap=MSCHAPV2"
identity="bob"
password="hello"
}
Zwróć uwagę na ap_scan=0 i key_mgmt=IEEE8021X w pliku konfiguracyjnym
wpa_supplicant -D wired -i enp0s8 -c wpa_supplicant.conf [-d] -D wired nakazuje traktować interfejs jako kablowy (nie bezprzewodowy). -d włącza tryb diagnostyczny (debug)Zadanie 16. Wymuś przeterminowywanie i periodyczne odświeżanie uwierzytelnienia:
dot1x reauthenticationdot1x timeout reauth-period 20 Zadanie 17. Accounting
aaa accounting dot1x default start-stop group radius