Zdalny dostęp do sterownika, na przykładzie PLC Horner XL4e z routerem Teltonika RUT955 po OpenVPN. Kurs zdalnego dostępu do maszyn i stanowisk produkcyjnych odc.2
Z tego artykułu dowiesz się:
- jak uzyskać zdalny dostęp do sterownika PLC (oraz innych urządzeń),
- jak poprawnie skonfigurować sterownik PLC, aby umożliwić zdalne połączenie,
- jakie są najczęściej popełniane błędy i jak się ich ustrzec.
W poprzednim odcinku dowiedziałeś/aś się, jak wykonać pierwsze kroki przy uruchamianiu przemysłowego routera GSM. W oparciu o te ustawienia i wiedzę ze wstępu teoretycznego, w drugim odcinku dowiesz się jak uzyskać zdalny dostęp do sterownika PLC.
Zdalne programowanie sterownika PLC to jeden z wielu przykładów zastosowania zdalnego dostępu. Zaprezentowana konfiguracja umożliwi również zdalne połączenie z większością innych urządzeń IP (panel HMI, system SCADA, przemiennik częstotliwości, kamera, maszyna, itp.).
Kurs zdalnego dostępu do maszyn i stanowisk produkcyjnych dla automatyków od podstaw
- 1. Wstęp: Jakie usługi kart SIM oferują operatorzy, czym się one różnią i jakie dają możliwości dla routerów i sieci przemysłowych?
- 2. Podstawowa konfiguracja routera dla sieci przemysłowej – dostęp do Internetu, publiczny IP, LAN, WiFi, resetowanie routera, DDNS| Kurs zdalnego dostępu do maszyn i stanowisk produkcyjnych odc.1
- 3. Zdalny dostęp w celu programowania sterownika, na przykładzie Teltonika RUT955 + Horner XL4e + OpenVPN | Kurs zdalnego dostępu do maszyn i stanowisk produkcyjnych odc.2
- 4. Zdalny dostęp w celu programowania sterownika bez publicznego IP, na przykładzie Teltonika RUT955 + Horner XL4e + ZeroTier | Kurs zdalnego dostępu do maszyn i stanowisk produkcyjnych odc.3
- 5. Tworzenie przemysłowej sieci OpenVPN stworzonej z trzech zdalnych punktów. Jak przypisać statyczny adres IP w sieci OpenVPN | Kurs zdalnego dostępu do maszyn i stanowisk produkcyjnych odc.4
- 6. Konwersja Modbus RTU i Modbus TCP w routerach przemysłowych | Kurs zdalnego dostępu do maszyn i stanowisk produkcyjnych odc.5
- 7. Alarmowanie SMS w routerach przemysłowych| Kurs zdalnego dostępu do maszyn i stanowisk produkcyjnych odc.6
- 8. Konwersja Modbus TCP/MQTT w routerach przemysłowych | Kurs zdalnego dostępu do maszyn i stanowisk produkcyjnych odc.7
- 9. „Troubleshooting” – sposoby szukania błędów w konfiguracji routerów przemysłowych | Kurs zdalnego dostępu do maszyn i stanowisk produkcyjnych odc.8
Przedstawiona przykładowa konfiguracja będzie oparta o sterownik PLC Horner serii XL4e oraz router przemysłowy RUT955. Szacowany czas konfiguracji: ~30-60 min
Słownik pojęć
- WebUI (Web User Interface) – przeglądarkowy interfejs użytkownika; podstawowa metoda konfiguracji routera Teltonika RUT955,
- TLS (Transport Layer Security) – protokół kryptograficzny do zapewnienia bezpieczeństwa w sieciach komputerowych,
- PKI (Public Key Infrastructure) – zbiór ról, polityk, procedur, potrzebnych do zarządzania, przechowywania i używania cyfrowych certyfikatów oraz zarządzania szyfrowaniem za pomocą publicznego klucza,
- EasyRSA – narzędzie do zarządzania PKI.
Publiczne IP
Po przeczytaniu wstępu teoretycznego powinieneś/powinnaś wiedzieć, na czym polega publiczny adres IP w kartach SIM. Z pierwszego odcinka dowiedziałeś/aś się, jak uzyskać publiczne IP poprzez Setup Wizard.
W tym odcinku wykorzystasz tę wiedzę. Upewnij się, że karta SIM, którą posiadasz ma uruchomioną usługę publicznego IP u operatora GSM oraz łączysz się zgodnie z zaleceniami danej usługi (APN, metoda autoryzacji, login/hasło autoryzacji).
Potwierdź, czy operator uruchomił usługę: wykonaj ping na przydzielony adres IP z komputera z niezależnym (od RUT955) źródłem Internetu. Brak odpowiedzi w większości przypadków będzie oznaczał, że adres IP nie jest publiczny. Dodatkowo po restarcie urządzenia, adres powinien pozostać bez zmian – adres publiczny, statyczny.
Instalacja OpenVPN i generowanie kluczy TLS
Pobierz instalator OpenVPN – kliknij tutaj. Uruchom pobrany plik. Przed instalacją naciśnij przycisk Customize.
W oknie Custom installation znajdź paczkę OpenSSL Utilities -> EasyRSA 3 Certificate Management Scripts. Upewnij się, że paczka zostanie zainstalowana w procesie instalacji OpenVPN.
Przygotowanie EasyRSA
Po instalacji OpenVPN możesz przejść do przygotowania silnika generowania kluczy – EasyRSA.
Przygotowanie silnika i generowanie kluczy odbywa się z poziomu wiersza poleceń Windows. Uruchom wiersz poleceń, wpisując cmd w oknie wyszukiwania Windows (skrót klawiszowy Windows+S). Uruchom aplikację jako administrator.
Pełny przykładowy przebieg procedury generowania certyfikatów i kluczy możesz zobaczyć w wideo poniżej.
Przejdź do folderu, gdzie zainstalowany jest EasyRSA. Wykonaj komendę (jeśli OpenVPN został zainstalowany w innym folderze, dopasuj ścieżkę):
cd „C:\Program Files\OpenVPN\easy-rsa”
Uruchom EasyRSA:
EasyRSA-Start.bat
Przed generowaniem plików za pomocą EasyRSA zainicjalizuj infrastrukturę PKI:
./easyrsa init-pki
Wyczyść pliki, które mogły być wygenerowane w przeszłości:
./easyrsa clean-all
Generowanie kluczy i certyfikatów
Generowanie rozpocznij od tzw. certificate authority (CA) – podstawowy plik certyfikujący, który pozwoli weryfikować pozostałe certyfikaty i klucze:
./easyrsa build-ca nopass
Wygeneruj certyfikat i klucz przypisany do Servera:
./easyrsa build-server-full server nopass
Wygeneruj certyfikaty i klucze przypisane do kolejnych Client’ów. W miejsce Client1 wpisz unikatową nazwę Common Name (CN) dla danej sieci OpenVPN. Urządzenia w sieci są rozpoznawane na podstawie CN i przypisanego do niego klucza. Wielkość liter ma znaczenie:
./easyrsa build-client-full Client1 nopass
Na koniec wygeneruj parametry szyfrowania Diffie-Hellman:
./easyrsa gen-dh
Wygenerowane pliki pojawią się w następujących lokalizacjach na komputerze (dla domyślnej ścieżki instalacji OpenVPN):
Konfiguracja routera przemysłowego RUT955 jako Server OpenVPN
Uruchom WebUI urządzenia. Przejdź do zakładki Services > VPN > OpenVPN. Z listy rozwijanej Role wybierz Server. Nadaj nazwę według własnych preferencji. Stwórz nową instancję OpenVPN, klikając przycisk Add New. Przejdź do konfiguracji naciskając przycisk Edit.
Konfigurację rozpocznij od wybrania TLS z listy rozwijanej Authentication – wybór innej metody autoryzacji zmieni rozkład okna konfiguracji.
Poniżej znajdziesz listę parametrów Servera wraz z krótkim opisem. W nawiasie, pogrubioną czcionką wypisane są ustawienia dla prezentacyjnego połączenia ze sterownikiem PLC Horner XL4e:
- TUN/TAP (TUN) – połączenie tunelowe (TUN), połączenie mostkowe (TAP)
-
Protocol (UDP) – UDP zapewni większą prędkość transmisji, wymaga mniej zasobów, brak potwierdzenia przesłania pakietów. TCP pozwoli na mniejszą prędkość transmisji, wymaga dużej ilości zasobów, ale zapewnia poprawność przesłania każdego pakietu.
Ważne: Nie zaleca się tworzenia tunelu TCP, gdy protokół przesyłany przez tunel również jest protokołem TCP! Może to spowodować wystąpienie tzw. TCP Meltdown (przeczytaj więcej) - Port (1194) – port wykorzystywany do połączenia VPN
- LZO (OFF) – algorytm bezstratnej kompresji danych. Z kompresją danych połączenie VPN spowoduje mniejsze obciążenie sieci. Ze względu na udokumentowane, skuteczne ataki na połączenia z kompresją danych, ta opcja nie jest zalecana!
- Client to client (OFF) – zezwolenie na komunikację między Clientami OpenVPN
- Encryption (BF-CBC 128) – algorytm szyfrowania danych. Zależnie od wybranego algorytmu i długości klucza możesz manipulować stosunkiem poziomu bezpieczeństwa do prędkości transmisji.
- Authentication (TLS) – metoda autoryzacji.
- Keep alive (10 120) – parametr utrzymywania połączenia. Pierwsza wartość określa interwał wysyłania zapytania „Ping”. Druga wartość określa czas oczekiwania Klienta na odpowiedź. Po przekroczeniu określonego czasu Klient przystąpi do ponownego nawiązania połączenia. Wartości 10 120 są ustawieniem domyślnym i stosunkowo uniwersalnym. Parametr dostosuj do własnych potrzeb.
- Virtual network IP address (10.0.0.0) – IP wirtualnej sieci VPN.
- Virtual network netmask (255.255.255.0) – maska wirtualnej podsieci VPN.
- Push option (route 192.168.1.0 255.255.255.0) – opcje przekazywane każdemu połączonemu klientowi OpenVPN, np. „route 192.168.1.0 255.255.255.0” zezwoli na przekierowanie do sieci lokalnej 192.168.1.0 przez server OpenVPN (tj. zdalny dostęp do sieci przez tunel VPN).
- Allow duplicate certificates (OFF) – dopuszczenie zduplikowanych certyfikatów do sieci
- Pozostałe opcje dotyczą haszowania, szyfrowania, formatowania, itp. – pozostaw je na domyślnych wartościach.
- Prześlij wcześniej wygenerowane pliki zgodnie z regułą:
- Certificate authority: ca.crt
- Server certificate: server.crt
- Server Key: server.key
- Diffie Hellman parameters: dh.perm
- CRL file (optional): brak
Zapisz konfigurację przyciskiem Save.
Konfiguracja sterownika PLC Horner XL4e
Zobacz pełną wersję artykułu na Poradniku Automatyka
www.astor.com.pl
źródło: ASTOR
Słowa kluczowe
ASTOR, automatyka, horner, PLC, Poradnik Automatyka, sterowanie, sterownik