Vybudoval jsem si doma soukromé cloudové pracovní prostředí a bylo to jednodušší, než jsem čekal
SSH, RDP a VNC, používal jsem každý protokol pro vzdálený přístup, který existuje, a všechny mají své místo. Problém je v tom, že důvod, proč jsou tyto protokoly a platformy užitečné, je také jejich největším problémem. Když se připojuji k vzdálenému počítači doma, přistupuji k celému PC a ploše, které potřebují neustálou údržbu a zabezpečení, protože jsou přístupné zvenčí mé sítě.
Co jsem opravdu potřeboval, byl soukromý webový portál, kde bych mohl spouštět vzdáleně publikované pracovní plochy a aplikace přímo z prohlížeče, odkudkoli. To mě přivedlo ke KASM Workspaces, což je desktop založený na prohlížeči, který jsem si mohl nainstalovat na svůj vlastní server. Umožňoval mi spouštět dočasné a trvalé pracovní plochy, nebo jen jednotlivé aplikace, zdarma, odkudkoli.
Potřeboval jsem něco lepšího než RDP a VNC
Vzdálený přístup funguje, ale je příliš neohrabaný
RDP a VNC jsou stále velmi užitečné nástroje pro vzdálený přístup, ale vycházejí ze zastaralého předpokladu. Připojíte se ke svému vzdálenému počítači a pak musíte pracovat s tím stavem, ve kterém se počítač právě nachází. Pokud je plocha přeplněná, jste s tím nuceni žít. Pokud je spojení se vzdáleným strojem špatné, vaše relace je zpožděná a neproduktivní. Pokud chcete jen spustit například Slack nebo Discord, zdědíte celé prostředí, včetně jakéhokoli škálování, které nativní plocha používá.
Ale co správa aplikací přes SSH a X11? Jo, vyhne se to tomu nepořádku, ale na mobilu je to také hrozný zážitek. VPN může také pomoci, ale stále jsi uvězněný u samotné vzdálené plochy.
KASM je odlišný, protože je to platforma pro vzdálené publikování aplikací, trochu jako Citrix a Neverinstall. S KASM místo toho, abych se připojoval na svůj nepořádný počítač doma, jsem se přihlásil do čistého webového portálu a spustil, co jsem potřeboval. Někdy to byl celý desktop, terminál nebo jednorázové testovací pracovní prostředí. KASM působil spíše jako můj vlastní soukromý spouštěč než jako vzdálené připojení k desktopu. Nejlepší na tom je, že je zcela zdarma pro soukromé použití.
Co jsem použil pro svůj server KASM
Nemusí to být superpočítač
Použil jsem virtuální stroj s minimální instalací Ubuntu 24.04 LTS a veřejným subdoménovým hostnamenem připojeným k doméně, kterou již vlastním. Chtěl jsem, aby mé nastavení působilo jako skutečná služba, takže jsem místo IP adresy a ošklivého varování před vlastnoručně podepsaným certifikátem použil správnou doménu hostovanou zdarma na Cloudflare. To také výrazně usnadnilo pozdější přidání důvěryhodného certifikátu Let's Encrypt.
Pro KASM nepotřebujete monstrózní server, ale RAM je pravděpodobně nejdůležitějším faktorem při výběru nastavení, protože právě tam budou běžet pracovní prostory.
Požadavky |
Minimum | Doporučeno |
CPU | 2 jádra/2 vCPU | 4 jádra/4 vCPU |
RAM | 8GB | 32GB+ |
Úložiště | OS + 50GB |
OS + 200 GB+ |
Síť | Lokální nebo veřejný přístup (bez CGNAT) | VPS |
OS | Ubuntu Server 24/Debian 12 | Ubuntu Server 24/Debian 12 |
Otevřené porty | 443 (HTTPS) | 22 (SSH), 80 (HTTP) a 443 (HTTPS) |
Ve svém nastavení jsem otevřel porty 22 pro SSH, 80 pro Let’s Encrypt a 443 pro samotné webové rozhraní KASM.
Nastavení bylo ta snadná část
Instalace byla ještě jednodušší
Začal jsem s čerstvým, minimálním serverem Ubuntu a nejprve nastavil to obvyklé. Vytvořil jsem nového uživatele, přidal ho do sudoers a podnikl základní kroky k zabezpečení SSH v Linuxu, jako je zakázání přihlášení root přes SSH. Poté jsem aktualizoval server a otevřel porty, které jsem potřeboval, povolením firewallu UFW:
sudo apt update && sudo apt upgrade -ysudo apt install curl ufw -ysudo ufw allow OpenSSHsudo ufw allow 80/tcpsudo ufw allow 443/tcpsudo ufw enable Poté jsem následoval kroky instalace pro jediný server od KASM:
cd /tmpcurl -O https://kasm-static-content.s3.amazonaws.com/kasm_release_1.18.1.tar.gztar -xf kasm_release_1.18.1.tar.gzsudo bash kasm_release/install.sh Instalátor KASM je jednoduchý a snadný a sám se postará o nastavení rozhraní, webového portálu, pracovního prostoru a kontejneru.
Jediným problémem zde je, že instalátor vytváří přihlašovací údaje admin@kasm.local a user@kasm.local. Nejlepší je je okamžitě zapsat, protože je budete potřebovat pro přihlášení. Webové rozhraní KASM bylo funkční hned po dokončení instalace a stačilo pouze otevřít veřejný název hostitele v mém prohlížeči, abych získal přístup.
První přihlášení fungovalo okamžitě, i když varování ohledně vlastnoručně podepsaného certifikátu celé věci dávalo pocit nedokončenosti.
Oficiálně jsem to udělal s Let’s Encrypt
Odstraňte ošklivý vlastnoručně podepsaný certifikát
Nic mě neotravuje víc než nutnost vidět self-signed certifikát a pokaždé proklikávat varování prohlížeče, když chci přistoupit ke své vlastní platformě. Protože jsem už měl subdoménu směřující na server, dalším zřejmým krokem bylo udělat to všechno hezké a uhlazené s bezplatným TLS certifikátem od Let’s Encrypt.
To znamenalo zastavení KASM, instalaci Certbotu a požádání o nový certifikát pro doménu:
sudo /opt/kasm/1.18.1/bin/stopsudo apt install certbot -ysudo certbot certonly -standalone -d kasm.ggcontentlabs.com Poté jsem jen nahradil výchozí soubory certifikátu KASM novým certifikátem Let’s Encrypt a restartoval KASM:
sudo /opt/kasm/1.18.1/bin/start Po rychlém obnovení stránky varování o nebezpečném prohlížeči zmizelo. Teď moje KASM pracovní prostředí působí o něco méně jako „laboratorní test“ a víc jako „připravené na produkci“.
Pracovní prostory a trvalé profily z něj udělaly něco užitečného
Jednorázové plochy jsou zábavné, ale chtěl jsem své nastavení zpět
Jakmile jsem se přihlásil a vytvořil nový administrátorský účet, začal jsem publikovat některá pracovní prostředí. Nejprve jsem přidal plnou plochu Debian Trixie, potom prohlížeč Chrome, terminál a nakonec několik nástrojů, které používám pořád, když jsem mimo domov, na dovolené nebo v práci. Jen kdyby někdo náhodou tázal, ano, na KASM se dá hrát Doom.
Spuštění desktopu uvnitř prohlížeče zpočátku působilo zvláštně, ale brzy se to stalo přirozeným. Jakmile je desktop nebo aplikace otevřená, můžete se odhlásit nebo zvolit její zničení. Zničení relace odstraní všechna nastavení a soubory, což je užitečné pro testování, ale není to ideální pro každodenní používání.
Trvalé profily jsou to, co jsem použil k tomu, abych to opravil. To znamená povolit tuto funkci uvnitř KASM a vytvořit adresářovou strukturu na serveru Ubuntu, obvykle na /mnt/kasm_profiles/. Poté už jde jen o přiřazení této cesty jednotlivým pracovním prostorům pomocí cesty /mnt/kasm_profiles/{user_id}.
Jakmile je cesta k perzistentním profilům přidána do pracovního prostoru, všechny aplikace a pracovní plochy k ní pak mají přístup. Jakýkoli soubor, složka nebo nastavení vytvořené uvnitř pracovní plochy se stává trvalým, i když je pracovní prostor nebo aplikace zničena. Stále můžete spustit pracovní plochu nebo aplikaci jako dočasný pracovní prostor. Je to jen otázka odznačení možnosti perzistentního profilu při prvním spuštění.
Profily nejsou v KASM zálohy. Nezapomeňte pravidelně zálohovat cestu k trvalému profilu KASM, abyste nikdy nepřišli o žádné důležité soubory.
Několik nastavení k utažení před každodenním používáním
Chovej se k tomu, jako by to byla vzdálená plocha
Mít plně funkční pracovní plochu a aplikace, které lze spustit na dálku, je praktické, ale je důležité si uvědomit, že stále přistupujete ke svému vlastnímu serveru na dálku. Všechno, co je vystaveno internetu, si zaslouží pečlivé bezpečnostní návyky.
Vytvořil jsem nový administrátorský účet a zakázal výchozí. Také jsem povolil vícestupňové ověřování pro oba účty, administrátorský i uživatelský. Na straně serveru udržuji Ubuntu a KASM aktualizované, včetně registrů samotných pracovních prostorů.
Další lekce, kterou jsem se rychle naučil, je, že pracovní prostory se při používání značně zvětšují a existuje skutečné riziko vyčerpání místa na disku. Linuxový terminál například zabírá 2,1 GB, jakmile je sdílen mezi všemi uživateli. Plochy a větší aplikace mohou snadno přesáhnout 10-20 GB. Takže pokud plánujete vyzkoušet KASM, dávejte pozor na úložiště, protože můžete zůstat s serverem, který se ani nedokáže spustit, jakmile se vaše úložiště zaplní.
Zapomeňte na RDP a VNC, KASM je mnohem užitečnější
Nep nahradí můj hlavní počítač, ale znamená to, že můžu vypnout RDP
Začal jsem svůj experiment s KASM s tím, že získám hezkou malou webovou verzi vzdálené plochy. To, co z toho nakonec vzniklo, se skutečně proměnilo v soukromý cloud pro každodenní používání, ke kterému mohu přistupovat odkudkoliv téměř na každém zařízení. HTTPS tomu dodalo profesionální a uhlazený vzhled, pracovní prostory mi umožnily běžet a přistupovat k internetu pomocí mé rezidenční IP adresy a trvalé profily z něj udělaly něco, co mohu nadále používat s jistotou.
Pokud máte jen zájem o SSH terminál doma, KASM je rozhodně přílišně náročný a v blízké době nenahradí můj hlavní počítač ani můj VPN. Ale pro izolované prohlížení a vyhýbání se vystavování mých homelab serverů skenování portů RDP a VNC je KASM jednoznačně nejvíce užitečný projekt pro produktivitu, který jsem kdy zkusil hostovat sám.













