abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 13:22 | IT novinky

    Společnost ARM představila platformu Arm Lumex s Arm C1 CPU Cluster a Arm Mali G1-Ultra GPU pro vlajkové chytré telefony a počítače nové generace.

    Ladislav Hagara | Komentářů: 0
    dnes 05:44 | Nová verze

    Unicode Consortium, nezisková organizace koordinující rozvoj standardu Unicode, oznámila vydání Unicode 17.0. Přidáno bylo 4 803 nových znaků. Celkově jich je 159 801. Přibylo 7 nových Emoji.

    Ladislav Hagara | Komentářů: 0
    včera 21:00 | IT novinky Ladislav Hagara | Komentářů: 6
    včera 18:33 | Nová verze

    Realtimová strategie Warzone 2100 (Wikipedie) byla vydána ve verzi 4.6.0. Podrobný přehled novinek, změn a oprav v ChangeLogu na GitHubu. Nejnovější verzi Warzone 2100 lze již instalovat také ze Snapcraftu a Flathubu.

    Ladislav Hagara | Komentářů: 2
    včera 12:22 | IT novinky

    Polské vývojářské studio CD Projekt Red publikovalo na Printables.com 3D modely z počítačové hry Cyberpunk 2077.

    Ladislav Hagara | Komentářů: 0
    včera 11:44 | Pozvánky

    Organizátoři konference LinuxDays 2025 vydali program a zároveň otevřeli registrace. Akce se uskuteční 4. a 5. října na FIT ČVUT v pražských Dejvicích, kde vás čekají přednášky, workshopy, stánky a spousta šikovných lidí. Vstup na akci je zdarma.

    Petr Krčmář | Komentářů: 6
    8.9. 22:00 | IT novinky

    Uživatelé komunikátoru Signal si mohou svá data přímo v Signalu bezpečně zálohovat a v případě rozbití nebo ztráty telefonu následně na novém telefonu obnovit. Zálohování posledních 45 dnů je zdarma. Nad 45 dnů je zpoplatněno částkou 1,99 dolaru měsíčně.

    Ladislav Hagara | Komentářů: 0
    8.9. 18:44 | Zajímavý článek

    Server Groklaw, zaměřený na kauzy jako právní spory SCO týkající se Linuxu, skončil před 12 lety, resp. doména stále existuje, ale web obsahuje spam propagující hazardní hry. LWN.net proto v úvodníku připomíná důležitost zachovávání komunitních zdrojů a upozorňuje, že Internet Archive je také jen jeden.

    🇵🇸 | Komentářů: 20
    8.9. 14:22 | Nová verze

    Jakub Vrána vydal Adminer ve verzi 5.4.0: "Delší dobu se v Admineru neobjevila žádná závažná chyba, tak jsem nemusel vydávat novou verzi, až počet změn hodně nabobtnal."

    Ladislav Hagara | Komentářů: 3
    8.9. 13:22 | IT novinky

    V Německu slavnostně uvedli do provozu (en) nejrychlejší počítač v Evropě. Superpočítač Jupiter se nachází ve výzkumném ústavu v Jülichu na západě země, podle německého kancléře Friedricha Merze otevírá nové možnosti pro trénování modelů umělé inteligence (AI) i pro vědecké simulace. Superpočítač Jupiter je nejrychlejší v Evropě a čtvrtý nejrychlejší na světě (TOP500). „Chceme, aby se z Německa stal národ umělé inteligence,“ uvedl na

    … více »
    Ladislav Hagara | Komentářů: 21
    Pro otevření více webových stránek ve webovém prohlížečí používám
     (83%)
     (7%)
     (2%)
     (3%)
     (4%)
     (2%)
    Celkem 160 hlasů
     Komentářů: 12, poslední dnes 13:00
    Rozcestník

    Guacamole - HTML5 remote desktop

    19.8.2013 16:30 | Přečteno: 3191× | Výběrový blog | poslední úprava: 19.8.2013 17:23

    V lednu jsem tady zveřejnil příspěvek o tunelování skrz korporátní proxy, samozřejmě takové řešení není zrovna ve shodě s bezpečnostní politikou, ale mít přístup k vlastnímu linuxovému systému se prostě hodí, tak jsem se rozhodl toto řešení "zlegalizovat".

    Jednoduše jsem přestěhoval ssh do web browseru, vlk se nažral a koza zůstala celá. Ale když už tak už, co takhle přístup k plnému Xfce desktopu přes webový prohlížeč. Nakonec, taky je to jen otázka instalace několika balíků a jednoduché konfigurace.

    Hezky od začátku

    Jedná se o kombinaci debian+xfce+xrdp+guacamole+lighttpd (reverzní proxy), a začneme hezky od začátku roztočením nové VM s minimální instalací debianu.

    Nainstalujeme základní balíčky a xfce (a lightdm):

    aptitude install openssh-server vim xfce4 lightdm sudo
    

    Teď stačí zapnout lightdm pomocí "service lightdm start" a přihlásit se do Xfce (lightdm také naskočí po rebootu).

    Osobně mi výchozí vzhled Xfce moc nesedí, takže ještě doinstaluji Greybird téma (které závisí na gtk3-engines-unico a gtk2-engines-murrine) a ikonky elementary.

    aptitude install gtk3-engines-unico gtk2-engines-murrine
    

    Samotné greybird téma je možné stáhnout z http://shimmerproject.org/project/greybird/ a stačí rozbalit tarball do ~/.themes. Obdobně, elementary ikonky stačí rozbalit do ~/.icons. A po té v Xfce v menu "Settings->Appearance" vybrat příslušné téma a ikonky.

    Xrdp

    Teď už je čas na xrdp. Jak už to tak bývá, instalace není o nic složitější než:
    aptitude install xrdp
    

    Můžeme otestovat buď pomocí "xfreerdp adresa_serveru" z linuxu (xfreerdp je v debianu/ubuntu v balíčku freerdp-x11) a nebo pomoci klienta z Windows. Samozřejmě je potřeba si dát pozor, aby připojení někde po cestě neblokoval firewall (tcp port 3389).

    Guacamole

    Další na řade je guacamole (samotná RDP->HTML5 proxy). Guacamole je rozděleno do dvou balíků (guacd: demon, který funguje jako proxy mezi RDP, VNC, SSH apod. a guacamole protokolem, který pak interpretuje javascript běžíci v prohlížeči; guacamole: jednoduchá webová aplikace v javě, která stojí mezi guacd a prohlížečem).
    aptitude install guacd libguac-client-rdp0 guacamole guacamole-tomcat
    

    Co se týka konfigurace guacamole, stačí přidat uživatele, nastavit heslo a povolit připojení k vybraným serverům. K tomu slouží /etc/guacamole/user-mapping.xml - ten by měl vypadat přibližně takto (pozn.: heslo zatím nastavte dočasné na otestování, než v posledním kroku přidáme HTTPS reverzní proxy).

    <user-mapping>
        <!-- documentation: http://guac-dev.org/Configuring%20Guacamole -->
        <authorize username="luv" password="abclinuxu">
            <protocol>rdp</protocol>
            <param name="hostname">localhost</param>
            <param name="port">3389</param>
        </authorize>
    </user-mapping>
    
    Poté je potřeba vyresetovat tomcat.
    service tomcat6 restart
    

    To je vše :-). Teď stačí v prohlížeči otevřít http://server:8080/guacamole ... magic! (Ale pozor, v této staré verzi guacamole se kurzor zobrazuje jako vysloveně miniaturní černá tečka, což je ze začátku dost matoucí).

    Lighttpd (mod_proxy) a https

    Samozřejmě začneme nainstalovánim lighttpd

    aptitude install lighttpd
    

    Vygenerujeme self-signed ssl certifikát

    cd /etc/lighttpd/
    openssl req -x509 -newkey rsa:2048 -keyout key.pem -out key.pem -days 3650 -nodes
    
    V /etc/lighttpd/lighttpd.conf pak stači přidat "mod_proxy" do sekce server.modules a také následující řádky:
    server.port = 443
    ssl.engine = "enable"
    ssl.pemfile = "/etc/lighttpd/key.pem"
    proxy.server  = ( "" => ( ( "host" => "127.0.0.1", "port" => "8080" ) ) )
    
    Ještě můžeme přidat následující rewrite pravidlo, které automaticky přidá "/guacamole/" před vsechny URL (snažší než nastavovat výchozí servlet v tomcatu ;-) ):
    url.rewrite-once = ( "(.*)" => "/guacamole/$1" )
    
    Kompletní lighttpd config pak může vypdat třeba takto:
    server.modules = (
            "mod_compress",
            "mod_proxy",
            "mod_rewrite",
    )
    
    server.port = 443
    ssl.engine = "enable"
    ssl.pemfile = "/etc/lighttpd/key.pem"
    proxy.server  = ( "" => ( ( "host" => "127.0.0.1", "port" => "8080" ) ) )
    
    url.rewrite-once = ( "(.*)" => "/guacamole/$1" )
    
    server.document-root        = "/var/www"
    
    server.errorlog             = "/var/log/lighttpd/error.log"
    server.pid-file             = "/var/run/lighttpd.pid"
    server.username             = "www-data"
    server.groupname            = "www-data"
    
    Nové nastavení můžeme otestovat z prohlížeče na adrese https://server

    Závěrečná čistka

    Také by bylo záhodno, aby se na tomcat nedalo připojit přímo, ale pouze přes reverzní proxy o kterou se nám stará lighttpd. V /etc/tomcat6/server.xml najdeme tag "Connector" a přidáme atribut address="127.0.0.1"
        <Connector address="127.0.0.1" port="8080" protocol="HTTP/1.1" 
                   connectionTimeout="20000" 
                   URIEncoding="UTF-8"
                   redirectPort="8443" />
    
    A vyresetujeme tomcat:
    service tomcat6 restart
    
    Ještě bych doporučil změnit heslo v guacamole, když už teď bude všechno chodit přes https. A rovnou můžeme uložit nové heslo v user-mapping.xml jako md5 hash. Nejdříve vygenerujeme md5 hash:
    cat | tr -d '\n' | md5sum
    
    A do tagu authorize přidáme atribut encoding="md5". Nový /etc/guacamole/user-mapping.xml pak může vypadat takto:
    <user-mapping>
        <!-- documentation: http://guac-dev.org/Configuring%20Guacamole -->
        <authorize username="luv" password="a1f0ce24f2a7d1731f768c0b655ca3b5" encoding="md5">
            <protocol>rdp</protocol>
            <param name="hostname">localhost</param>
            <param name="port">3389</param>
        </authorize>
    </user-mapping>
    

    Závěr

    Rozjet remote desktop přístupný přes webový prohlížeč není žádná rocket science, a tak si v příštím díle ukážeme, proč to dělat jednoduše, když to jde složitě ... a budeme patchovat, kompilovat, řesit vlastní deployment xrdp a guacamole, rozchodíme si xrdp a guacamole i se zvukem a také se zbavíme závislosti na šílenosti jménem tomcat.        

    Hodnocení: 100 %

            špatnédobré        

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    19.8.2013 18:06 David Jaša | skóre: 44 | blog: Dejvův blog
    Rozbalit Rozbalit vše Re: Guacamole - HTML5 remote desktop
    Hm, něčeho podobného by šlo dosáhnout s Xspice + spice-html5. V moderních distribucích bez kompilací. ;-) K testování spice-html5 jsem se nedostal, nicméně podle ohlasů by to chodit mělo.
    19.8.2013 18:26 smazáno | skóre: 18 | blog: smazáno
    Rozbalit Rozbalit vše Re: Guacamole - HTML5 remote desktop
    Podle toho "bez kompilaci" hadam, ze reagujes na ten zaver kde zminuju provoz Xrdp s podporou presmerovani zvuku ... pokud je Xspice a spice-html5 primo v distru a fakt to chodi se zvukem bez problemu tak proc ne. Pokud ale neni potreba presmerovani zvuku, tak bych se drzel overeneho a sel do Guacamole, to ostatne bude brzo(?) podporovat i SPICE.
    19.8.2013 19:05 David Jaša | skóre: 44 | blog: Dejvův blog
    Rozbalit Rozbalit vše Re: Guacamole - HTML5 remote desktop
    Jo to pardon, spice-html5 zvuk neumí. Jakmile spice jako takový přejde na Opus, mělo by to být v html5 verzi brzy.
    19.8.2013 19:26 dizz | skóre: 21 | blog: Dizzyho_Blog
    Rozbalit Rozbalit vše Re: Guacamole - HTML5 remote desktop
    Diky borci, davam do TODO listu s cim si hrat ;-)
    Chuck Norris dohral GNU/Linux... a dvakrat!
    20.8.2013 16:34 smazáno | skóre: 18 | blog: smazáno
    Rozbalit Rozbalit vše Re: Guacamole - HTML5 remote desktop
    To si teprv pockej na druhy dil :-)
    20.8.2013 19:21 kyytaM | skóre: 35 | blog: kyytaM | Bratislava
    Rozbalit Rozbalit vše Re: Guacamole - HTML5 remote desktop
    A kombinacia XRDP s FreeRDP-WebConnect? :)
    20.8.2013 20:06 smazáno | skóre: 18 | blog: smazáno
    Rozbalit Rozbalit vše Re: Guacamole - HTML5 remote desktop
    In particular it relies on the Canvas and the WebSockets feature.
    Neprojde pres korporatni proxy :-)
    20.8.2013 20:23 smazáno | skóre: 18 | blog: smazáno
    Rozbalit Rozbalit vše Re: Guacamole - HTML5 remote desktop
    A par dalsich duvodu:
    • Guacamole je overenejsi a ma balicky primo v Debianu
    • aktivni vyvoj a kvalitni dokumentace
    • umi radu ruznych protokolu (a dokonce i presmerovani zvuku)
    Max avatar 20.8.2013 22:39 Max | skóre: 72 | blog: Max_Devaine
    Rozbalit Rozbalit vše Re: Guacamole - HTML5 remote desktop
    Zajímavé. Osobně mám postavený terminal server na FreeNX, ale už je to relativně mrtvoučká záležitost a hledám něco lepšího. Důležité také je, aby to dobře lítalo na pomalejších lajnách. Zatím spíš jen dělám menší průzkum, každopádně jsem myslel, že spice je k lince mnohem šetrnější, nebo se pletu?
    Zdar Max
    Měl jsem sen ... :(
    20.8.2013 23:56 smazáno | skóre: 18 | blog: smazáno
    Rozbalit Rozbalit vše Re: Guacamole - HTML5 remote desktop
    Jo jasne, na tohle Xrdp idealni asi nebude (navic v tom setupu co jsem zde popsal Xrdp pouziva VNC ke komunikaci s X serverem (Xvnc) ).
    27.8.2013 07:47 boar | skóre: 25 | Praha
    Rozbalit Rozbalit vše Re: Guacamole - HTML5 remote desktop
    Zdar Vypada to pekne, ale ja hledam alternativu logmein/teamview ale na vlastnim serveru. potrebuju, aby zakaznik (popripade maminka:-) kliknul na odkaz/stahnul exe/nebo tak ... a ja jsem mel v tu chvili moznost se k nemu pripojit.

    Zasadni problem je, ze zakaznik (i ja) muzeme byt v tu chvili za natem. Jedine co jsem nalezl, je ultravnc single click. http://www.uvnc.com/downloads/single-click.html nicmene je to celkem krkolomne, a pouziva to nejaky nekompatabilni RFB protokol. - nefunguje to na linuxu s kazdym vnc. navic, nejdriv u sebe musim udelat ssh tunel na server s port forwardem a pustit vnc klienta v modu listen, a pak zakaznik muze spusit jakysi exe, (ktery se mimochodem generuje na strankach uvnc).

    Moje predstava je: zakaznik vleze na www.mujserver.nekde/link_pro_remote stahne + spusti exe/stahne + spusti jar ja provedu vncview mujserver:nejakyport a hotovo.

    Nejake tipy ?

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.