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 12:22 | Nová verze Ladislav Hagara | Komentářů: 0
    včera 20:00 | Komunita

    Byly zpracovány a na YouTube zveřejněny videozáznamy z konference LinuxDays 2025.

    Ladislav Hagara | Komentářů: 0
    4.10. 15:22 | IT novinky

    Na konferenci LinuxDays 2025 byl oficiálně představen nový router Turris Omnia NG.

    Ladislav Hagara | Komentářů: 26
    4.10. 05:22 | Komunita

    Přímý přenos (YouTube) z konference LinuxDays 2025, jež probíhá tento víkend v Praze v prostorách FIT ČVUT. Na programu je spousta zajímavých přednášek.

    Ladislav Hagara | Komentářů: 12
    3.10. 22:44 | IT novinky

    V únoru loňského roku Úřad pro ochranu osobních údajů pravomocně uložil společnosti Avast Software pokutu 351 mil. Kč za porušení GDPR. Městský soud v Praze tuto pokutu na úterním jednání zrušil. Potvrdil ale, že společnost Avast porušila zákon, když skrze svůj zdarma dostupný antivirový program sledovala, které weby jeho uživatelé navštěvují, a tyto informace předávala dceřiné společnosti Jumpshot. Úřad pro ochranu osobních údajů

    … více »
    Ladislav Hagara | Komentářů: 8
    3.10. 19:00 | Nová verze

    Google Chrome 141 byl prohlášen za stabilní. Nejnovější stabilní verze 141.0.7390.54 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Opraveno bylo 21 bezpečnostních chyb. Za nejvážnější z nich (Heap buffer overflow in WebGPU) bylo vyplaceno 25 000 dolarů. Vylepšeny byly také nástroje pro vývojáře.

    Ladislav Hagara | Komentářů: 0
    3.10. 17:11 | Upozornění

    eDoklady mají kvůli vysoké zátěži technické potíže. Ministerstvo vnitra doporučuje vzít si sebou klasický občanský průkaz nebo pas.

    Ladislav Hagara | Komentářů: 31
    3.10. 17:00 | Komunita

    Novým prezidentem Free Software Foundation (FSF) se stal Ian Kelling.

    Ladislav Hagara | Komentářů: 1
    3.10. 14:33 | Komunita

    Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za září (YouTube).

    Ladislav Hagara | Komentářů: 0
    3.10. 12:33 | Upozornění

    Vyšla kniha Počítačové programy a autorské právo. Podle internetových stránek nakladatelství je v knize "Významný prostor věnován otevřenému a svobodnému softwaru, jeho licencím, důsledkům jejich porušení a rizikům „nakažení“ proprietárního kódu režimem open source."

    javokajifeng | Komentářů: 0
    Jaké řešení používáte k vývoji / práci?
     (38%)
     (45%)
     (16%)
     (17%)
     (21%)
     (15%)
     (17%)
     (16%)
     (16%)
    Celkem 178 hlasů
     Komentářů: 12, poslední 4.10. 20:35
    Rozcestník

    Zabezpečené VNC spojení se SSVNC

    16.1.2012 14:10 | Přečteno: 3075× | Linuxení aneb hrátky se šrotem | Výběrový blog | poslední úprava: 16.1.2012 14:09

    V jednom ze svých prehistorických zápisků jsem řešil problematiku VNC po Linuxem [1]. Vše ale bylo řešeno přímo, bez jakéhokoliv zabezpečení. Postupem času ale vyvstala i otázka s bezpečností připojení přes VNC, na její řešení se podívejme nyní.

    VNC server, jeho nastavení a certifikát

    Jako server pro zabezpečené VNC lze použít například prográmek x11vnc, což je jednoduchá konzolová utilita, se kterou lze sdílet a vzdáleně spravovat počítač s běžícím X serverem. Postup zprovoznění základního spojení jsem popisoval v minulém zápisku, nyní se podívejme na rozšířené volby pro zabezpečení spojení a to, jak se program v tomto případě chová.

    Pro zabezpečení VNC serveru lze použít SSL, což je funkce, která se zapne při spuštění programu použitím přepínače -ssl. V mém případě tedy x11vnc spouštím příkazem

    x11vnc -rfbauth /home/pushkin/.x11vnc -shared -http -ssl -forever -o /home/pushkin/.x11vnclog -display :0
    
    Přičemž jedntlivé přepínače říkají programu x11vnc umístění hesla pro přístup k VNC serveru (soubor /home/pushkin/.x11vnc, přepínač -rfbauth /home/pushkin/.x11vnc), že zobrazovaná plocha má být sdílená mezi vzdáleným a lokálním uživatelem (-shared), program má vytvořit lokální mini http server, ke kterému se bude moci připojit klient za pomoci webového přohlížeče (-http). Spojení má být (v každém případě) zabezpečeno za pomoci ssl (-ssl) a po ukončení spojení má VNC server zůstat běžet (-forever). Veškeré hlášky od VNC serveru budou vypisovány do textového souboru (soubor /home/pushkin/.x11vnclog, přepínač -o /home/pushkin/.x11vnclog), jinak by byly vypisovány pouze do stdout. Sdílená plocha je přitom primární, tedy ta na adrese :0 (-display :0). Odpovědí x11vnc na jeho spuštění je v první řadě vystavení SSL certifikátu, který buď vypíše do konzole nebo do textového souboru jako v mém případě, konkrétně jde o hlášku uvedenou níže:

    12/01/2012 10:55:47 Using SSL Certificate:
    
    -----BEGIN CERTIFICATE-----
    MIID5DCCAsygAwIBAgIJANCf3+Q5NH2lMA0GCSqGSIb3DQEBBQUAMIGlMQswCQYD
    VQQGEwJBVTEOMAwGA1UEBxMFTGludXgxJzAlBgNVBAsTHmVrMjExcDA3LWtldi0x
    MzI2MzYxNzgzLjgzMTY1ODEPMA0GA1UEChMGeDExdm5jMSYwJAYDVQQDEx14MTF2
    bmMtU0VMRi1TSUdORUQtQ0VSVC0xNTg1MDEkMCIGCSqGSIb3DQEJARYVeDExdm5j
    QHNlcnZlci5ub3doZXJlMB4XDTEyMDExMjA5NDk0M1oXDTEzMDExMTA5NDk0M1ow
    gaUxCzAJBgNVBAYTAkFVMQ4wDAYDVQQHEwVMaW51eDEnMCUGA1UECxMeZWsyMTFw
    MDcta2V2LTEzMjYzNjE3ODMuODMxNjU4MQ8wDQYDVQQKEwZ4MTF2bmMxJjAkBgNV
    BAMTHXgxMXZuYy1TRUxGLVNJR05FRC1DRVJULTE1ODUwMSQwIgYJKoZIhvcNAQkB
    FhV4MTF2bmNAc2VydmVyLm5vd2hlcmUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw
    ggEKAoIBAQC13Qs9Ht0uVChzkmyHnB2aVUbnuVYUsgyaN1ToZ6Ypo8JLx98NdzNu
    ij5uWCa9fROt/7dA2GsT4c92ceNuBTy78A18F7Q9QfatKVCVvBnTaBMvZ8lmI0jv
    isgeT6IJnobFLZ5K/zKaGc8qRG8TPlQDR84Oqg9jjW/9Pl2CKj9TqnEXmi87vMp1
    TKaAfVvCuyw0LtsdqFr2oWTH7rPkolSnHhH/VnsZlwpfHFLAb23J8wGsvEA5dNUl
    ElTdjP0J1Hx8b6A9slZemyI1dOGQeGuwQNEClXq8tQN3HHwRnJD9aj5kHCjrgA9Z
    J+KSEMlijrDrXorSE+us479JaMJjck1nAgMBAAGjFTATMBEGCWCGSAGG+EIBAQQE
    AwIGQDANBgkqhkiG9w0BAQUFAAOCAQEAaQRMZu2JHSBU9z4ePglTKNbSRsJmHw/Q
    4iTyZUvcMmdKPs4Vx4PSLPWTdkvw+NeuZxFDF4Qe+avYVdR/i/9FuzGe+crvqZGa
    SwMgcB3CwTwzlCee0+iEQplcv9odINhpO1QNRCYm2X4Utap8SolEJNzNG5mQDb7Z
    fmsukMLEoZqrexsZDK90vub4DA58E46xycWLVEEuvR9QBY/DV24+Fpatttn/sYGG
    x64vVgwll8NIT3GtEjp/6yJ7pWRpB1a63OyUjSyFKz/L0zEsUmlVEFX5Kpb6lJKK
    bwgZiEU3epbCxwD6/9cN9PolVJeVyDC2nbqg8dHXnR0T2fMU2PP44A==
    -----END CERTIFICATE-----
    

    Tento certifikát je vhodné si zkopírovat a nosit s sebou (respektive jeho MD5 součet) jako kontrolu pro vzdáleného klienta, který bude tak jako tak vyžadovat potvrzení certifikátu vystaveného serverem.

    Klient, připojení přes webový prohlížeč

    K takto zprovozněnému VNC serveru se lze připojit například z webového prohlížeče se zprovozněnou Javou připojením se na adresu http://server:5800. Odpovědí prohlížeče bude upozornění na neznámý certifikát, jehož vlastnosti si lze prohlédnout a následně je nutno jej odsouhlasit.

    Připojení z webového prohlížeče Připojení z webového prohlížeče, certifikát

    Po odsouhlasení certifikátu VNC server přesměruje spojení na port 5900 a lze se klasickým způsobem přihlásit k VNC serveru.

    Připojení z webového prohlížeče, login

    Klient, připojení pomocí ssvnc

    ssvnc je TightVNC server s podporou SSH a SSL navržený přímo pro připojení k x11vnc. Navenek má velice jednoduché grafické rozhraní, které však umožňuje vše potřebné včetně prohlédnutí si certifikátu ještě před samotným připojováním k VNC serveru. Pozor - na rozdíl od webového klienta se zde do adresy nezadává port pro připojení, nýbrž číslo displaye, tedy například "server:0".

    SSVNC, prohlížení vertifikátu

    Po prohlédnutí a zkontrolování certifikátu již lze přistoupit k přihlášení a normálně na vzdáleném počítači pracovat. Cerifikát si lze samozřejmě pro příští připojení uložit.

    SSVNC, uložení certifikátu

    POZOR!! Jak je uvedeno i na webových stránkách SSVNC, uživatelé distribuce Debian a jejích derivátů by si měli zkontrolovat používanou verzi knihovny OpenSSL z důvodů možné zranitelnosti, více viz: http://www.debian.org/security/2008/dsa-1571.

           

    Hodnocení: 100 %

            špatnédobré        

    Obrázky

    Zabezpečené VNC spojení se SSVNC, obrázek 1 Zabezpečené VNC spojení se SSVNC, obrázek 2 Zabezpečené VNC spojení se SSVNC, obrázek 3 Zabezpečené VNC spojení se SSVNC, obrázek 4 Zabezpečené VNC spojení se SSVNC, obrázek 5

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

    Komentáře

    Vložit další komentář

    16.1.2012 14:39 Dag | skóre: 25 | blog: bzuk
    Rozbalit Rozbalit vše Re: Zabezpečené VNC spojení se SSVNC
    Dík!
    16.1.2012 15:24 marek_hb
    Rozbalit Rozbalit vše Re: Zabezpečené VNC spojení se SSVNC
    super, díky moc
    Michal Fecko avatar 16.1.2012 21:12 Michal Fecko | skóre: 31 | blog: Poznámkový blog
    Rozbalit Rozbalit vše Re: Zabezpečené VNC spojení se SSVNC
    Ako je to s pripojením na Linux mašinu (na ktorej beží SSVNC server) a Win mašinou s bežným VNC klientom (RealVNC, TightVNC či UltraVNC)?
    pushkin avatar 17.1.2012 06:39 pushkin | skóre: 43 | blog: FluxBlog
    Rozbalit Rozbalit vše Re: Zabezpečené VNC spojení se SSVNC
    Alespoň co jsem měl možnost vyzkoušet, tak klasické TightVNC se chová stejně pod Linuxem i pod Windows, tj. zahlásí, že server nabídl nepodporovaný způsob zabezpečení. RealVNC asi dopadne stejně - alespoň podle informací na jejich webu, kde o SSL/SSH není ani zmínka. Nicméně stále lze použít buď windowsí verzi SSVNC nebo webový prohlížeč s Javou, obojí jsem zkoušel a funguje to.
    17.1.2012 13:06 Michal Vyskočil | skóre: 60 | blog: miblog | Praha
    Rozbalit Rozbalit vše Re: Zabezpečené VNC spojení se SSVNC
    Svoje postřehy ohledně VNC připojení z Linuxu na Windows přes ssh jsem sepsal v článku VNC - používáme vzdálený desktop.
    When your hammer is C++, everything begins to look like a thumb.
    17.1.2012 13:20 Radek Hladik | skóre: 20
    Rozbalit Rozbalit vše Re: Zabezpečené VNC spojení se SSVNC
    Ono je to s VNC a SSL (resp. šifrováním obecně) trošku komplikovanější. Standardně VNC nabízí mechanismus autentikačních protokolů, které se při hello nabídnou, vybere se shodný a vhodný a ten se použije. Takže to, že se zde bavíme o SSL znamená konkrétně mechanismus VeNCrypt, který sám o sobě má svoje mechanismy (X509+heslo,X509,...). Například šifrování s UltraVNC je úplně jiné a využívá nějakých jejich speciálních vlasntostí.

    VNC protokol je poměrně jendoduchý a moc toho neumí a umožňuje snadné rozšiřování (nejen těch autentikačních protokolů). Ale zpátky k VeNCryptu, ten je zajímavý i tím, že ho používá Qemu a potažmo tedy i Libvirt a spol. Také je zajímavý tím, že pro Windows existují dvě implementace, jedna přímo s názvem VeNCrypt, která se už nevyvíjí a dokázala strašně snando spadnout. Druhá je zmíněné SSVNC, což ale ve skutečnosti je jenom wrapper okolo jiných VNC klientů (a funguje i s UltraVNC). Ovšem z hlediska protokolu je to tak, že SSVNC naváže spojení, dohodne parametry, VeNCrypt autentizaci, pak nahodí stunnel, spustí VNC klienta, provede s ním vlastní začátek protokolu, podstrčí mu nějaký auth. způsob, který klient zná a pak ho přesměruje do stunnelu. Řešení funkční, ale docela kostrbaté.

    Z toho důvodu a ze zvědavosti jsem se rozhodl si napsat vlastního VNC klienta s podporou pro VeNCrypt a další Qemu rozšíření. Směřuju ho především na Qemu+textovou konzoli, ale docela funguje i s grafickým VNC. Pokud má někdo zájem o vyzkoušení (říkejme tomu alfa verze :-) ), může se mi ozvat přes email v profilu.
    17.1.2012 15:28 kolcon | skóre: 15 | blog: kolcon
    Rozbalit Rozbalit vše Re: Zabezpečené VNC spojení se SSVNC
    me by spis zajimalo, jake pouzivate spravce vnc spojeni, tj. pripojit se na jedno kliknuti, vcetne spravy hesel atd.

    neco jako vinagre, ale lehci, bez gnome dependenci...
    pushkin avatar 17.1.2012 15:57 pushkin | skóre: 43 | blog: FluxBlog
    Rozbalit Rozbalit vše Re: Zabezpečené VNC spojení se SSVNC
    To je dobrá otázka, ale pro někoho jiného - osobně žádného správce hesel nepoužívám ani necítím potřebu jej používat.
    17.1.2012 16:23 kolcon | skóre: 15 | blog: kolcon
    Rozbalit Rozbalit vše Re: Zabezpečené VNC spojení se SSVNC
    no ja premyslim, jestli neco takoveho treba s ncurses rozhrani nenapsat...
    18.1.2012 16:08 Radovan Garabík
    Rozbalit Rozbalit vše Re: Zabezpečené VNC spojení se SSVNC
    CPM
    18.1.2012 20:11 kolcon | skóre: 15 | blog: kolcon
    Rozbalit Rozbalit vše Re: Zabezpečené VNC spojení se SSVNC
    no, to neni uplne ono - ja myslel spis neco
    +------------+
    | vnc host1 |
    | vnc host2 |
    +------------+

    kde po najeti se otevre vnc spojeni s automaticky zadanym heslem, parametry a tak
    pushkin avatar 19.1.2012 07:17 pushkin | skóre: 43 | blog: FluxBlog
    Rozbalit Rozbalit vše Re: Zabezpečené VNC spojení se SSVNC
    Mno, to by teoreticky nebyl problém naprogramovat za pomoci nějakého jednoduchého wrapperu pro vnc a konfiguračního souboru*, kde by byly uloženy servery s porty, hesly a příslušnými volbami. Jenom si nedovedu představit jak to nasoftit v bashi :-)
    *) Což by mohl být potenciální bezpečnostní problém, protože by musel být čitelný oním wrapperem a tedy nejspíše i uživatelem, který jej spouští ... a člověk přeci nechce aby se jakýkoliv uživatel dostal kamkoliv a ještě navíc viděl hesla k serverům v nezahashované formě.
    19.1.2012 19:39 kolcon | skóre: 15 | blog: kolcon
    Rozbalit Rozbalit vše Re: Zabezpečené VNC spojení se SSVNC
    jj, si to asi napisu v Perlu... ten konfigurak bude nekde v ~, takze pristupny pouze pro uzivatele, co ten skript pusti
    23.1.2012 16:09 Radovan Garabík
    Rozbalit Rozbalit vše Re: Zabezpečené VNC spojení se SSVNC
    dialog --menu 'vyber servera' 15 25 6 1 host1.cz 2 host2.cz

    Založit nové vláknoNahoru

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