Radius - historia, zastosowanie

  1. Konieczność autoryzacji

Do konieczności autoryzacji klientów radiowych dołączających się do punktów dostępowych ( AP ) nie trzeba chyba nikogo przekonywać. Każdemu zależy na zabezpieczeniu dostępu do sieci bezprzewodowej. Można stosować do tego celu szyfrowanie połączenia. Jednak nie zawsze jest to konieczne a może zmniejszyć przepustowość łącz radiowych. Dla WISP najistotniejsze jest zabezpieczenie przed nieuprawnionym dostępem do sieci bezprzewodowej. Stąd szyfrowanie jest zbędne i wystarczy autoryzacja urządzeń radiowych z wykorzystaniem adresów MAC. Jednak w dużych sieciach bezprzewodowych, gdzie istnieje wiele punktów dostępowych, kłopotliwe jest zarządzanie tablicą autoryzowanych adresów MAC na każdym AP osobno. Dlatego przydatna staje się możliwość scentralizowanego zarządzania.

Niektóre typy punktów dostępowych umożliwiają autoryzację z wykorzystaniem zewnętrznego serwera RADIUS. Co to daje ? Informacje o autoryzowanych urządzeniach przechowywane są w jednym miejscu. Dlatego zarządzanie staje się łatwiejsze i elastyczniejsze. Po jednorazowym wpisaniu adresu MAC urządzenia klienckiego możliwe jest łączenie się urządzenia z każdym AP korzystającym z serwera RADIUS.

2 Trochę teorii o RADIUS

Scentralizowane zarządzanie dostępem początkowo było stosowane do autoryzacji użytkowników korzystających z modemów do "wdzwaniania" się do serwera. Idea okazała się na tyle uniwersalna, że powstała usługa umożliwiająca uwierzytelnianie, autoryzację oraz rejestrację dostępu do zasobów ( AAA - Authencication, Authorization, Accounting ). RADIUS ( Remote Authentication Dial In User Service ) to protokół umożliwiający realizację AAA przez przesyłanie wiadomości między serwerem RADIUS a NAS ( Network Access Server ).

Serwer Radius zawiera bazę danych z informacjami o autoryzowanych użytkownikach i rejestruje dostęp do zasobów. NAS to komputer lub inne urządzenie umożliwiające dostęp do zasobów. W przypadku próby dostępu do zasobu, NAS wysyła zapytanie ( zawierające nazwę użytkownika i hasło ) do serwera RADIUS. Serwer uwierzytelnia źródło wiadomości ( na podstawie wspólnego klucza ) i sprawdza uprawnienia użytkownika. Następnie odsyła komunikat potwierdzający lub odrzucający prawo dostępu do zasobu. Możliwe jest także żądanie przesłania dodatkowych informacji przez klienta. Radius jest bardzo uniwersalny i jego możliwości znacznie wykraczają poza opis w tym raporcie.

3 RADIUS w sieciach bezprzewodowych

W sieciach WLAN rolę NAS pełni punkt dostępowy pracujący na stacji bazowej. W przypadku próby podłączenia się klienta radiowego, NAS wysyła zapytanie do serwera RADIUS. Zapytanie zawiera nazwę użytkownika i hasło. W przypadku sieci bezprzewodowych jest to adres MAC urządzenia próbującego uzyskać dostęp do sieci bezprzewodowej. Po pozytywnej autoryzacji w serwerze RADIUS do NAS przesyłany jest komunikat zezwalający na dołączenie urządzenia do WLAN.

 

Charakterystyka protokołu RADIUS

Remote Authentication Dial-In User ( RADIUS ) jest pracującym w architekturze klient/serwer rozproszonym systemem autentykacji. W systemie tym klient skonfigurowany jest na serwerze dostępowym lub routerze, a serwerem jest zdalny wielodostępny host z uruchomionym dedykowanym oprogramowaniem RADIUS. Przechowuje on bazę danych o uprawnionych do korzystania z zasobów sieci użytkownikach i ich prawach. Poprawnie skonfigurowany serwer dostępowy odwołuje się do jego wiedzy w celu dokonania autentykacji, autoryzacji i raportowania działań użytkownika w systemie.

RADIUS jest protokołem w pełni otwartym. Specyfikacja protokołu jest publicznie dostępna w formie dokumentu RFC, a oprogramowanie protokołu jest rozpowszechniane bez pobierania żadnych opłat w formie kodu żródłowego.

Kod ten może podlegać modyfikacjom w celu dostosowania do wszystkich aktualnie wykorzystywanych systemów bezpieczeństwa. Na routerach i serwerach dostępowych Cisco protokół RADIUS jest implementowany w ramach modelu AAA. Konfiguracja bezpieczeństwa w systemie AAA przewiduje możliwość współistnienia protokołu RADIUS z innymi protokołami podobnego przeznaczenia takimi jak: TACACS+, Kerberos oraz autentykacją na podstawie lokalnych baz użytkowników na serwerze dostępowym.

Protokół RADIUS znajduje zastosowanie:* w sieciach ,do których dostęp odbywa się poprzez serwery dostępowe różnych producentów, z których każdy obsługuje RADIUS-a,* w sieciach, w których użytkownik jest uprawniony do wykorzystania jednej określonej usługi lub jednego określonego hosta ( istnieje możliwość takiej konfiguracji praw użytkownika, aby na przykład mógł on uruchomić tylko sesję terminalową Telnet lub tylko protokół PPP ),

* w sieciach wymagających raportowania ( accounting ) wykorzystania zasobów oraz działań użytkowników.

RADIUS-a nie można wykorzystać:

* w sieciach, w których pracują protokoły AppleTalk Remote Access Protocol (ARAP), NetBIOS Frame Control Protocol (NBFCP), NetWare Asynchronous Service Interface (NASI), X.25 PAD,

* dla zapewnienia autentykacji połączeń router-to-router ( protokół RADIUS nie zapewnia mechanizmów autentykacji działających w obie strony takiego połączenia ),

* w środowiskach sieci, w których użytkownicy winni korzystać z wielu serwisów sieciowych ( protokół RADIUS zwykle wiąże użytkownika z jednym tylko rodzajem usługi ).

Funkcjonowanie protokołu RADIUS

W odpowiedzi na próbę zalogowania się użytkownika do sieci serwer dostępowy generuje zapytanie o dane użytkownika, w tym jego identyfikator i hasło. Po wprowadzeniu tych danych z poziomu terminala użytkownika, jego identyfikator wraz z zakodowanym hasłem zostają wysłane do serwera RADIUS-a.

Rolę serwera autentykacji spełnia host, na ogół pracujący pod kontrolą systemu operacyjnego Unix z uruchomionym dedykowanym oprogramowaniem serwera RADIUS. Po sprawdzeniu danych użytkownika skutkiem ich skonfrontowania z zawartością własnych baz danych serwer RADIUS może odpowiedzieć jednym z następujących komunikatów:

* ACCEPT - oznacza sukces autentykacji,

* REJECT - użytkownik nie został poprawnie zautentykowany, dostęp do zasobów sieci jest zabroniony,

* CHALLENGE - prośba o wprowadzenie dodatkowych danych uwierzytelniających.

Po przejściu z sukcesem etapu autentykacji, serwer RADIUS sprawdza w bazach autoryzacji, jakie usługi są dostępne dla danego użytkownika ( np. telnet, rlogin, połączenia terminalowe LAT, oprogramowanie protokołów SLIP czy PPP, możliwość wywołania interpretera EXEC ). Serwer RADIUS na etapie autoryzacji sprawdza też czy działania danego użytkownika w sieci nie powinny podlegać restrykcjom wynikłym z list dostępu.

Konfiguracja oprogramowania klienta RADIUS na serwerze dostępowym

W pierwszej kolejności, poprawna konfiguracja serwera RADIUS wymaga zapewnienia komunikacji pomiędzy hostem, na którym działa oprogramowanie protokołu i serwerem dostępowym. Kolejny etap konfiguracji będzie polegał na uruchomieniu autentykacji opartej o protokół RADIUS w ramach modelu AAA. Administrator na tym etapie konfiguruje listę metod autentykacji, którą później aktywuje na rzecz wyróżnionego interfejsu lub linii serwera dostępowego.

Lista metod może zawierać następujące pozycje:

* enable - do autentykacji użytkownika używane jest hasło dostępu do trybu enable,

* krb5 - za autentykację odpowiada serwer Kerberos,

* line - do autentykacji użytkowników wykorzystywane są hasła dostępu do linii TTY, VTY, AUX i linii konsoli,

* local - autentykacja przeprowadzana jest w oparciu o lokalne bazy użytkowników na serwerze dostępowym,

* none - brak autentykacji, dostęp bezwarunkowy,

* radius - autentykacja RADIUS,

* tacacs+ - autentykacja TACACS+,

* krb5_telnet - autentykacja Kerberos 5 Telnet dla terminalowego dostępu do serwera dostępowego.