====== Jak na to: Přístup ke vzdáleným TCP serverům pomocí CloudAccess Adapteru ====== **Mervis CloudAccess Adapter** je klientská aplikace pro Windows, která vytváří zabezpečený tunel k vašemu vzdálenému PLC. Umožňuje přistupovat ke službám TCP běžícím na PLC (například **SSH**, **webové servery** nebo **Modbus TCP**) tak, jako by bylo zařízení ve vaší lokální síti. Tento návod ukazuje, jak nakonfigurovat Adapter pro přístup k **SSH serveru** na vzdáleném PLC. ===== Předpoklady ===== Než budete pokračovat, ujistěte se, že máte k dispozici: * **CloudAccess Adapter Binaries**: Klientský software pro Windows (obvykle soubor `.zip`). * **CloudAccess přihlašovací údaje**: * **Uživatelské jméno** a **Heslo** (specifické pro projekt CloudAccess). * **Channel ID**: Jedinečný řetězec (např. `iiiii`) identifikující konkrétní službu (např. SSH) na PLC. * **SSH klienta**: Například PuTTY, MobaXterm nebo Windows Terminal. Software CloudAccess Adapter ani přihlašovací údaje nejsou veřejně ke stažení. Pro získání instalačních souborů Adapteru a projektových přihlašovacích údajů prosím **kontaktujte [[en:help:support|technickou podporu Mervis]]**. ===== Krok 1: Konfigurace appsettings.json ===== Adapter je plně řízen konfiguračním souborem ve formátu JSON. Je nutné namapovat vzdálené **Channel ID** na **lokální port** ve vašem počítači. - Rozbalte soubor `.zip` s Adapterem do složky (např. `C:\Mervis\CloudAccess\`). - Otevřete soubor `appsettings.json` v textovém editoru (např. Notepad nebo VS Code). - Vyhledejte sekci ``"Forwarding"`` uvnitř ``"AdapterEngine"``. Upravte konfiguraci podle příkladu níže. Zvláštní pozornost věnujte **zvýrazněným položkám**. Tento úryvek si můžete stáhnout pomocí odkazu nad blokem kódu. { "urls": "http://*:25011", "AdapterEngine": { "Forwarding": [ { "ChannelId": "YOUR_CHANNEL_ID_HERE", "Credentials": { "User": "YOUR_CA_USERNAME", "Password": "YOUR_CA_PASSWORD" }, "Protocol": "Tcp", "AdapterClientEndpoint": { "Port": 8082, "Ssl": false, "Timeout": "00:01:00" }, "DsServerEndpoint": { "Host": "cloudaccess.mervis.info", "Port": 23000, "Ssl": true, "ValidateCertificate": false, "Timeout": "00:02:30" } } ] }, "Logging": { "Console": { "Disabled": false }, "File": { "Disabled": true }, "Levels": { "Default": "Trace", "Microsoft": "Warning" } }, "AllowedHosts": "*" } === Klíčové konfigurační parametry === ^ Parametr ^ Popis ^ | **ChannelId** | Konkrétní ID poskytnuté podporou, které odpovídá SSH službě na PLC. | | **Credentials** | Vaše uživatelské jméno/heslo pro CloudAccess (odlišné od přihlášení do PLC). | | **AdapterClientEndpoint / Port** | **Lokální port.** Port, na který se budete připojovat na svém PC (např. `8082`). Lze změnit na libovolný volný port. | | **DsServerEndpoint** | Definuje připojení ke cloudu Mervis. Obvykle ``cloudaccess.mervis.info`` na portu ``23000``. | ===== Pokročilé: Mapování více kanálů ===== Můžete definovat více kanálů a používat je paralelně. Například můžete současně namapovat **SSH připojení** (na lokální port 8082) a **webový server PLC** (na lokální port 8083). Pro tento účel přidejte druhý blok do pole ``"Forwarding": [ ... ]``. Ujistěte se, že každý blok má své unikátní ``ChannelId`` a unikátní lokální ``Port``. "Forwarding": [ { "ChannelId": "SSH_CHANNEL_ID", "Credentials": { "User": "...", "Password": "..." }, "AdapterClientEndpoint": { "Port": 8082 ... }, "DsServerEndpoint": { ... } }, { "ChannelId": "WEB_SERVER_CHANNEL_ID", "Credentials": { "User": "...", "Password": "..." }, "AdapterClientEndpoint": { "Port": 8083 ... }, "DsServerEndpoint": { ... } } ] ===== Krok 2: Spuštění Adapteru ===== Pro otestování připojení můžete Adapter dočasně spustit v konzoli. - Otevřete **Příkazový řádek** nebo **PowerShell**. - Přejděte do složky obsahující Adapter. - Spusťte spustitelný soubor s odkazem na váš konfigurační soubor: .\ESG.NetCore.DataSpy.Client.Host.exe --runAsConsole -configFile "appsettings.json" **Úspěch:** V logu byste měli vidět, že se Adapter spustil a naslouchá na lokálním portu (např. `127.0.0.1:8082`). **Toto okno ponechte otevřené.** ===== Krok 3: Připojení pomocí SSH klienta ===== Nyní, když je tunel aktivní, připojte se pomocí SSH klienta na **localhost**. - **Host Name (nebo IP adresa)**: ``127.0.0.1`` - **Port**: ``8082`` (nebo hodnota nastavená v ``AdapterClientEndpoint`` -> ``Port``). - **Typ připojení**: SSH Po kliknutí na **Open** budete vyzváni k zadání přihlašovacích údajů. **Poznámka k přihlášení:** V této fázi se přihlašujete do **operačního systému PLC**. Zadejte uživatele root a heslo pro daný PLC hardware (např. Unipi / root), **nikoli** přihlašovací údaje CloudAccess. **Příklad pro Windows Terminal:** ssh unipi@localhost -p 8082 -o ServerAliveInterval=10 ===== Řešení problémů ===== * **Connection Refused**: Ujistěte se, že je konzole Adapteru stále otevřená a běží. Zkontrolujte, že se připojujete na `127.0.0.1` a na přesný port definovaný ve vašem JSON souboru. * **Authentication Failed (Adapter)**: Zkontrolujte logy v konzoli. Pokud vidíte chybu „Unauthorized“ nebo problém s přihlašovacími údaji, ověřte `ChannelId`, `User` a `Password` v `appsettings.json`. * **Konflikt portu**: Pokud se Adapter ihned ukončí, může být port `8082` již používán. Změňte `"Port": 8082` v JSON na jiné číslo (např. `22222`).