Coraz częściej producenci maszyn czy integratorzy systemów automatyki poszukują rozwiązań, pozwalające łatwo i szybko sposób monitorować zainstalowane urządzenia i systemy u klienta. Taki zdalny nadzór pozwala na redukcję kosztów wdrożenia a także zaoferowanie pakietu usług dodanych, pozwalających kontrolować parametry procesu i przewidywaniu ewentualnych usterek zanim one wystąpią. Istotnym elementem jest bezpieczeństwo transmisji danych tak by była ona odporna na próby ingerencji w pracę monitorowanego systemu, zapewniała integralność i wiarygodność przesyłanych danych. Zatem popatrzmy na przykładową implementacją na przykładzie serii routerów serii ARS i AGS firma Antaira Technologies. System pozwala na dowolne kształtowanie topologii systemu monitoringu. Mogą być przesyłane różnorodne dane procesowe czy streaming video. Przykładową implementację pokazuje rysunek 1
Rysunek 1. System nadzoru i monitoringu
Zawansowane systemy zdalnego monitoringu wykorzystują routery korzystające z technologii szyfrowanych kanałów transmisyjnych VPN i serwerów zlokalizowanych w chmurze. Takie rozwiązanie pozwala ominąć ograniczenia narzucane przez firewall czy NAT jak również pozwala na nie stosowanie statycznych adresów IP po stronie monitorowanego urządzenia i stacji nadzoru.
Co wpływa na bezpieczeństwo tych rozwiązań? Możemy wymienić szereg norm i standardów, które systematyzują bezpieczeństwo cybernetyczne. Do najpopularniejszych należą NIST 800-53, NERC CIP dla energetyki czy IEC 62443. Dają one szereg zalecań zarówno dla projektantów systemów, producentów komponentów sieciowych jak również użytkowników - definiując katalog dobrych praktyk dla bezpiecznych systemów automatyki przemysłowej. Zabezpieczenia systemu przypominają wielopoziomową ochronę strategicznego obiektu i niekiedy są nazywane (z ang.) „Defence in Depth” lub „Castle Approach”. Dzielą się na trzy aspekty - fizyczny, techniczny i administracyjny. Fizyczne zapewnienie bezpieczeństwa następuje poprzez zabezpieczenie infrastruktury w szczególności serwerów cloud i routerów end point. Miejsca gdzie serwery są zlokalizowane są zabezpieczone przed ingerencją osób trzecich. Zarówno hardware jak i software jest na bieżąco aktualizowany a ich stan pracy na bieżąco monitorowany. Aplikacje są optymalizowane i walidowane pod kątem bezpieczeństwa. Nie mniej ważnym elementem jest zabezpieczenie routera polegające na wprowadzeniu wielu poziomów dostępów, wymuszaniu stosowania silnych haseł periodycznie zmienianych, analizy pakietów pod względem ich struktury i ich filtrowania, reguł i zasad QoS. Ważnym elementem jest też autodiagnoza i implementacja Watch-dog timera pozwalającego na automatyczny reset w przypadku problemów z komunikacją. Od strony technicznej istotnym elementem jest zabezpieczenie kanału transmisji. Potwierdzeniem spełnienia tych norm są certyfikaty bezpieczeństwa ISO 27001 i AICPA. Popatrzmy na jedną z najbezpieczniejszych implementacji sieci VPN wykorzystującą protokół Open VPN. Możemy wyróżnić trzy poziomy zabezpieczenia przy nawiązywaniu komunikacji pomiędzy end point:
- uwierzytelnienie (ang. authentication) – sprawdzenie czy serwer i klient jest tym, z którym faktycznie chcemy się połączyć. Może to odbywać się za pomocą loginu i hasła lub za pomocą kluczy uwierzytelniających. Druga metoda jest bezpieczniejsza i jest ona stosowana w systemach przemysłowych. Zapobiega to sytuacji kiedy ktoś wejdzie w posiadanie elementu autoryzacyjnego (np. hasła) lub gdy następuje próba podszycia się pod serwer VPN. Dzięki TLS serwer zawsze ma swój własny klucz, wydany certyfikat i certyfikat CA. Po stronie klienta również musi być kopia właściwego certyfikatu CA. Uwierzytelnienie musi zakończyć się pozytywnie po obydwu stronach – serwera (cloud) i klienta (router),
- autoryzacja (ang. End points authorisation) – zweryfikowanie czy dany klient ma prawo dostępu do podłączenia do sieci VPN. Jak wyżej może to się odbywać na podstawie hasła, zestawu kluczy,
- szyfrowanie (ang. cipher) – polega na szyfrowaniu transmisji w taki sposób aby nie mogła ona zostać odczytana a także aby nie można było dokonać jej modyfikacji.
Istnieją także inne mechanizmy, które za zadanie mają zwiększyć bezpieczeństwo przesyłanej transmisji. W OpenVPN istnieje mechanizm HMAC (ang. keyed-Hash Message Authentication Code), który wykorzystuje osobny klucz do podpisania każdego pakietu kontrolnego przy uruchamianiu transmisji. Dane, które nie są odpowiednio podpisane takim kluczem są automatycznie odrzucane. Inną formą jest uwierzytelnianie wieloskładnikowe, gdzie ciekawą i bezpieczną implementacją jest AWS MFA (Amzaon Multi-Factor Authentication).
W celu bezpiecznej komunikacji potrzebna była metoda na skuteczne uwierzytelnianie jej uczestników oraz zapewnianie jej integralności. W tym celu stworzono infrastrukturę klucza publicznego czyli zespół elementów pozwalający na tworzenie kluczy, certyfikatów, ich podpisywanie, odwoływanie oraz weryfikację. Całością usługi zajmują się zaufane firmy zwane Centrami Certyfikacji (ang. Certificate Authority). Przy tworzeniu połączenia VPN serwer cloud generuje parę kluczy składającą się z klucza prywatnego i klucza publicznego, wraz z żądaniem podpisania certyfikatu (CSR). CSR to zakodowany plik tekstowy, który zawiera klucz publiczny i inne informacje, które zostaną zawarte w certyfikacie. Po wygenerowaniu CSR serwer wysyła go do urzędu certyfikacji, który sprawdza, czy informacje w nim zawarte są poprawne, a jeśli tak to cyfrowo podpisuje certyfikat kluczem prywatnym i wysyła go zwrotnie. Dodatkowo warto zwrócić uwagę na zabezpieczenie jakim jest przeznaczenie certyfikatu. Dzięki temu nawet jeśli posiadamy certyfikat podpisany przez nasze CA, ale nie jest on typu serwerowego, to nie uruchomimy własnego serwera. Dzięki temu niemożliwe jest podszycie się klienta z poprawnym certyfikatem klienckim pod serwer cloud VPN. Proces autoryzacji zapewnia, że tylko autoryzowane urządzenia mogą nawiązać komunikację oraz, że transmisja jest zaszyfrowana i zabezpieczona przed modyfikacją przez osoby trzecie. Proces uwierzytelnienia i autoryzacji wygląda następująco:
- router łączy się do serwera i przedstawia swój podpisany przez CA certyfikat, serwer weryfikuje jego poprawność za pomocą certyfikatu CA,
- serwer przedstawia swój podpisany przez CA certyfikat a klient go weryfikuje na podstawie certyfikatu CA,
- serwer szyfruje transmisję do klienta za pomocą publicznego klucza klienta, a klient za pomocą swojego prywatnego go odszyfrowuje,
- klient szyfruje transmisję do serwera za pomocą publicznego klucza serwera, a serwer za pomocą swojego prywatnego go odszyfrowuje,
- serwer za pomocą swojego prywatnego klucza podpisuje (zapewnia integralność i pewność pochodzenia) dane do klienta, a klient weryfikuje to za pomocą publicznego klucza serwera,
- klient za pomocą swojego prywatnego klucza podpisuje dane do serwera, a serwer weryfikuje to za pomocą publicznego klucza klienta.
Systemy zdalnego monitoringu urządzeń pozwalają na kontrolę dowolnych maszyn i systemów z dowolnego miejsca na świecie. Producent czy integrator może w czasie rzeczywistym monitorować parametry pracy systemu zainstalowanego w miejscu oddalonym o setki, czy tysiące kilometrów. Pozwala to na zdalną optymalizację i wczesne wykrywalnie problemów bez potrzeby wysłania serwisanta na miejsce. Bezpieczeństwo takich rozwiązań jest jednym z kluczowych elementów i jest zapewniane przez wielopoziomowe zabezpieczenia na poziomie sprzętu i oprogramowania. Obecne rozwiązania zapewniają wysoki poziom bezpieczeństwa z jednocześnie łatwą i tanią implementacją.
Informacje antaira.pl
W artykule wykorzystano informacje ze strony: https://openvpn.net
|
|