Richard Stallman dnes v Liberci přednáší o svobodném softwaru a svobodě v digitální společnosti. Od 16:30 v aule budovy G na Technické univerzitě v Liberci. V anglickém jazyce s automaticky generovanými českými titulky. Vstup je zdarma i pro širokou veřejnost.
sudo-rs, tj. sudo a su přepsáné do programovacího jazyka Rust, nahradí v Ubuntu 25.10 klasické sudo. V plánu je také přechod od klasických coreutils k uutils coreutils napsaných v Rustu.
Fedora se stala oficiální distribucí WSL (Windows Subsystem for Linux).
Společnost IBM představila server IBM LinuxONE Emperor 5 poháněný procesorem IBM Telum II.
Byla vydána verze 4.0 multiplatformního integrovaného vývojového prostředí (IDE) pro rychlý vývoj aplikaci (RAD) ve Free Pascalu Lazarus (Wikipedie). Přehled novinek v poznámkách k vydání. Využíván je Free Pascal Compiler (FPC) 3.2.2.
Podpora Windows 10 končí 14. října 2025. Připravovaná kampaň Konec desítek (End of 10) může uživatelům pomoci s přechodem na Linux.
Již tuto středu proběhne 50. Virtuální Bastlírna, tedy dle římského číslování L. Bude L značit velikost, tedy více diskutujících než obvykle, či délku, neboť díky svátku lze diskutovat dlouho do noci? Bude i příští Virtuální Bastlírna virtuální nebo reálná? Nejen to se dozvíte, když dorazíte na diskuzní večer o elektronice, softwaru, ale technice obecně, který si můžete představit jako virtuální posezení u piva spojené s učenou
… více »Český statistický úřad rozšiřuje Statistický geoportál o Datový portál GIS s otevřenými geografickými daty. Ten umožňuje stahování datových sad podle potřeb uživatelů i jejich prohlížení v mapě a přináší nové možnosti v oblasti analýzy a využití statistických dat.
Kevin Lin zkouší využívat chytré brýle Mentra při hraní na piano. Vytváří aplikaci AugmentedChords, pomocí které si do brýlí posílá notový zápis (YouTube). Uvnitř brýlí běží AugmentOS (GitHub), tj. open source operační systém pro chytré brýle.
VNC neboli Virtual Network Computing je systém pro grafické sdílení desktopů (tedy ne jednotlivých oken, jak to umí například X server), který používá protokol RFB (Remote FrameBuffer). Vše, co VNC klient dělá, je zachytávání události klávesnice a myši z klientského systému a jejich odesílání přes síťové spojení na server, kde jsou předány hostitelskému systému. Server potom odesílá obraz plochy zpět klientovi. Pokud to není pochopitelné, bude lepší se podívat na obrázek, který znázorňuje schéma komunikace.
Po instalaci a správném nastavení vnc serveru a klienta (občas je nazýván prohlížeč – viewer) se pomocí klienta jednoduše připojíme na server a od té chvíle můžeme ovládat jeho vzdálenou plochu, jako bychom seděli přímo u něj. Ovšem ve světě počítačů není nic tak jednoduché, jak to vypadá, a náš problém u VNC zní bezpečnost. Protokol není jakkoli šifrován a heslo, které si můžete nastavit, je stejně jako u ftp nebo telnetu přenášeno v plaintextu, takže náš obrázek číslo 1 ve skutečnosti dopadne asi takto.
Jediným rozdílem je, že ve skutečnosti počítač napadne spíše nějaký bot než přímo člověk, ale toto nebezpečí není radno podceňovat, protože porty VNC patří k těm "profláknutým" a mnoho uživatelů s hrůzou zjistilo, že jim někdo zasahuje do počítače! Pokud ovšem uživateli nevadí používat telnet (obyčejný telnet, ti, kteří mají telnet vyspravený Kerberosem, se nepočítají), může si klidně nezabezpečené VNC používat, ale je to počítačový ekvivalent ruské rulety s pěti a dost možná i šesti náboji v komoře.
Řešení, jak zabezpečit komunikaci, je několik:
Možnost číslo dvě používá pouze základní VNC protokol, tudíž by se měl libovolný klient připojit k libovolnému serveru bez větších komplikací. Nejjednodušší cestou, jak na Linuxu vytvořit takový kanál, je použít ssh. I když je pro mnoho lidí ssh ten vzdálený shell, ssh ve skutečnosti pouze šifruje komunikaci a shell nabízí hostitelský systém. Ssh je tak moc spojeno s unixy, že se mi nepovedlo některý software (WinSCP) vůbec přimět k připojení se k serveru s Windows, cesta začínající c:\
mu prostě dělala potíže... Následuje poslední motivační obrázek.
Na Wikipedii je sekce Comparison_of_VNC_software, kde je možné se rychle seznámit s jednotlivými implementacemi a některou z nich si vybrat. Instalace se liší dle vybrané platformy a zvoleného softwaru. Ovšem mnoho implementací je dostupných pod GNU GPL. Pro uživatele Linuxu bude nejlepší přečíst si stránku o VNC na gentoo-wiki. Pokud budeme používat připojení pomocí ssh tunelu, můžeme omezit připojení pouze pro lokální připojení a povolit přihlášení bez hesla.
VNC standardně běží na portech 5900 až 5906, přičemž jim odpovídají čísla virtuálních obrazovek :0 až :6. VNC klienty napsané v Javě naproti tomu používají porty od 5800 do 5806. To je důležité vědět, pokud chceme tunelovat pomocí ssh. U klienta s Windows je situace obtížnější, protože ten standardně neumožňuje paralelní běh více uživatelů, takže na něm máte pouze jedinou plochu. Pokud potřebujete více uživatelů na této platformě, obraťte se na technickou podporu Microsoftu.
OpenSSH je kvalitní open-source implementace protokolu SSHv2, která je na unixových stanicích de facto standard. Její nevýhodou pro uživatele Windows je, že se jedná o unixový program se vším všudy, který nemá žádné GUI nebo něco na ten způsob. Pokud chceme vytvořit tunel, je nutné na stanici, která slouží jako server, nainstalovat SSH server.
V Linuxu nebo BSD systémech je instalace a zprovoznění velice triviální. V případě distribuce Linuxu stačí napsat aptitude install openssh-server
(nebo distribuční ekvivalent v podobě yum, pacmac, emerge, urpmi nebo třeba smart) a za chvíli máme server nainstalován a spuštěn. Na některých systémech bývá ještě nutné ssh server spustit ručně.
Ve Windows jsou dvě možnosti, jak instalaci provést. Pokud na počítači není Cygwin, je možné nainstalovat sshwindows, což je port OpenSSH pro Windows, který si s sebou nese potřebnou část Cygwinu. Ovšem v případě nainstalovaného prostředí Cygwin se stane, že se mezi sebou začnou hádat dvě verze dynamických knihoven a bez poměrně velkých znalostí systému Windows a jeho dynamického linkeru (což, ruku na srdce, zlenivělí unixáci nebudou) se neobejdeme.
Pokud je na počítači nainstalován Cygwin, stačí pouze doinstalovat OpenSSH server (je dostupný v základním výběru balíčků) a pomocí návodu na http://pigtail.net/LRP/printsrv/cygwin-sshd.html nakonfigurovat. Je to nezbytné, protože je třeba přimět systém Windows, aby bral ssh démona jako svoji standardní službu, a kvůli synchronizaci uživatelských hesel. Od Windows XP SP2 je také nezbytné povolit v integrovaném firewallu (pokud je používán) port 22, protože standardní nastavení má uzavřené všechny porty, a dokonce ani neodpovídá na ICMP requesty.
Pochopitelně není nutné se "omezovat" na implementaci OpenSSH a použít buďto server přímo od ssh.com nebo třeba freeSSHd, který nabízí i grafické rozhraní k ovládání systému.
Tunelování nebo-li směrování portů (podrobněji třeba na SSH receptem na bezpečnost 2) je schopnost ssh vytvořit zabezpečený komunikační kanál, přes který mohou téci data. Jediná nevýhoda použití ssh je, že protokol pracuje na aplikační úrovni; to znamená, že to není zcela transparentní, ale je nutné změnit číslo portu.
Příkazem
ssh -L 5901:localhost:5900 user@server.domena
vytvoříme tunel z portu 5900 vzdáleného počítače na port 5901 lokálního počítače. VNC prohlížeč tedy připojíme na lokální port 5901 a ssh se postará o transparentní šifrování a přenos na port 5900 vzdáleného počítače, kde je opět rozšifruje a předá VNC serveru.
Uživatelé Windows většinou nepoužívají OpenSSH klienta, ale dávají přednost programu Putty, který tunelování umí také. Podrobnější návod (přímo pro tunelování VNC) je na http://martybugs.net/smoothwall/puttyvnc.cgi. Při používání Putty mě pouze vypeklo to, že je v definici tunelu nutné místo localhost zadat IP adresu 127.0.0.1 (anebo oblíbený cíl, kam posíláme script-kiddies).
Díky tomu, že je použit pouze základní VNC protokol a o šifrování/dešifrování se stará ssh, je možné použít libovolného klienta. Náš tunel končí na localhost:5901
, tudíž do přihlašovací obrazovky VNC prohlížeče zadáme localhost:1
(pozor, některé prohlížeče vyžadují číslo portu, takže v tom případě se připojíme přes localhost:5901).
A nakonec poslední obrázek ukazuje připojení notebooku s Linuxem na pracovní stanici s Windows pomocí protokolu VNC tunelovaného přes ssh (z něhož je jednoznačně poznat den, kdy byl tento screenshot pořízen). Na obou stranách byla použita implementace z OpenSSH, jako server na Windows byl zvolen RealVNC a jako prohlížeč krdc z prostředí KDE. Poměrně šikovná vlastnost krdc je propojení schránky.
VNC pochopitelně není jediná možnost, jak používat vzdálený desktop. Samotný X server používaný na unixech je síťově transparentní, takže není nutné instalovat externí software, ale použít nativní prostředky systému. Bohužel není X protokol zabezpečený, takže je nezbytné použít tunel (nejčastěji) pomocí SSH, které má podporu X forwardingu zabudovanou. Výhodou je, že se okno zobrazené pomocí X protokolu nijak neliší od oken, které běží lokálně. Správce oken, který je ovládá, totiž běží na vašem lokálním stroji (technicky tam běžet nemusí, ale to už je trochu komplikovaný případ). Nevýhodou je pochopitelně skutečnost, že X server je nativní na unixech, ale na Windows, který je nejpoužívanějším desktopovým OS na zemi, už ne. Pro Windows je možné použít třeba Xming.
Klasikou v přístupu na vzdálený desktop je potom společnost Citrix a jejich produkt Citrix Presentation Server (dříve známý jako Citrix Meta Frame) a Citrix ICA Client. Citrix se také více podobá X serveru v tom, že nepřenáší framebuffer, ale vysokoúrovňové informace jako barevnou hloubku, souřadnice a podobně. Na protokolu ICA (Independent Computing Architecture) je založen protokol RDP, ovšem vztahy mezi společnostmi Citrix a Microsoft jsou, diplomaticky řečeno, komplikované.
Remote Desktop Protocol (RDP) z Windows Terminal Services je protokol vyvinutý společností Microsoft pro vzdálené připojení k systému Windows. Klienty jsou dostupné pro řadu platforem (například krdc z prostředí KDE tento protokol umí). Klient pro unixové systémy je například rdesktop a pracuje se i na serveru pro unixy xrdp. Ovšem momentálně je RDP záležitost operačního systému Windows.
Samotný X protokol spotřebuje poměrně velkou šířku pásma (řešení typu lbproxy se neujala, ale často se používá ssh komprese), takže existuje protokol NX, který provádí kompresi a optimalizaci datového toku, navíc může fungovat jako proxy pro RDP nebo samotné VNC. Společnost NoMachine dodává servery i klienty pro mnoho platforem a základní knihovny klienta jsou dostupné pod GPL. FreeNX je implementací serveru NX protokolu pod licencí GPL.
Program synergy sem, přísně vzato, nepatří, protože nepřenáší žádný obraz (základním předpokladem je, že druhý počítač vidíme), ale vzdálenou správu umožňuje také. Můžeme si jej představit jako osekané VNC. Pokud máme dva počítače, je otravné pořád brát jinou myš a klávesnici v závislosti na tom, který chceme používat. Použití je jednoduché: na počítači, u kterého sedíme, rozjedeme synergy server (synergys
) a na dalším klienta (synergyc
). Potom normálně pracujeme na svém počítači. V okamžiku, kdy se chceme přesunout na ten sousední, jednoduše posuneme myš na okraj obrazovky (závisí na konfiguraci), která najednou opustí počítač a objeví se na tom vedlejším. Veškeré vstupy z klávesnice se pomocí TCP/IP přenáší na ten vedlejší. Funguje jak na Linuxu, tak i na Windows. Navíc dokáže sdílet schránku.
Nástroje: Tisk bez diskuse
Tiskni
Sdílej:
Osobne misto RealVNC pouzivam TightVNC, obsahuje totiz kodovani tight, nastaveni jpg kvality obrazu a kompresniho stupne.Souhlasím, že je RealVNC (alespoň v základní variantě) nejpomalejší, ale v době psaní článku jsem jiné servery nezkoušel. Ale používám jej pořád, protože se mi nechce vrtat do něčeho, co už jsem rozjel
K tomu tunelovani bych se take spis primlouval k stunnelu, zvlaste kdyz by uzivatel nemel mit pristup na shell, navic pres stunnel jde autentizovat pomoci certifikatu, takze i autentizace muze byt bezpecna ...Používám ssh klíče, takže by to mělo být také bezpečné. Je pravda, že jsem se mohl aspoň odkázat na článek o tunelování na root.cz, kde se probírají i jiné možnosti (se kterými nemám osobně zkušenosti). Díky za komentář, mám pocit, že vydal za celý článek
Souhlasím, že je RealVNC (alespoň v základní variantě) nejpomalejší, ale v době psaní článku jsem jiné servery nezkoušel. Ale používám jej pořád, protože se mi nechce vrtat do něčeho, co už jsem rozjelRekl bych, ze i v realvnc jsou prikazy vncserver a Xvnc a parametry budou stejne jako v tightvnc, takze neni ceho se bat.
Používám ssh klíče, takže by to mělo být také bezpečné. Je pravda, že jsem se mohl aspoň odkázat na článek o tunelování na root.cz, kde se probírají i jiné možnosti (se kterými nemám osobně zkušenosti).Jojo, urcite pres SSH je to stejne bezpecne jako pres stunnel, akorat vyhoda stunnelu je, ze se nemusi vytvaret shell ucty a navic, co me posledni dobou trapilo pri ssh tunelovani, ze jsem na ssh serveru musel spustit nejaky program, aby se spojeni neuzavrelo a tunel zustal. Tak jsem vymyslel ruzne sleepy a podobne, ale bylo to blby, protoze obcas se stalo, ze spojeni sice spadlo, ale protoze na tunel byly pripojene nejake aplikace, tak se ssh spojeni uplne neuzavrelo, takze ssh poslouchalo na portu, ale uz nedokazalo s cilovym serverem komunikovat. Dokud to ssh neskoncilo, tak se samozrejme nenahodilo nove. A i kdyby se nove nahodilo, tak nemohlo poslouchat na tom portu, protoze se tam drzelo to stare ssh. Navic pak jeste kdyz to ssh treba i kompletne spadlo a zacalo se nahazovat nove, tak se obcas stalo, ze na ssh serveru zustal bezet ten udrzovaci proces, takze jsem musel resit jeste zabijeni tech starych procesu. Samozrjeme klic byl bez hesla, coz byla taky dira, ale na ssh serveru jsem mel v authorized_key omezeni pro ten klic na jeden prikaz (ten udrzovac spojeni). Proste nebylo to ono. Takze jsem presel na stunnel - je to jednoduche na konfiguraci a pritom dostatecne bezpecne (vyzadovani certifikatu podepsanych od vybrace CA). Takze ted je to dobry.
Pokud by chtel nekdo v Linuxu, aby se pomoci VNCview pripojil k te session, kterou ma na lokalnim monitoru, lze pouzit x11vnc, ktery vytvori virtualni VNCserver s obsahem, ktery se zobrazuje na lokalnim monitoru. Tzn. chovani bude pak naprosto stejne jako v pripade Windows.Případně přímo v Gnome je vino: Systém -> Nastavení -> Vzdálená pracovní plocha, nebo
vino-preferences
(alespoň na FC6 to tak je).
Ma predstava je takovato: * PC1 bezi na windows * PC2 bezi na linuxu * PC3 bezi na windows nebo linuxu Encodovani: * PC2 se pripoji pre vncviewer na PC1 * na PC1 se encoduje deni ve vncvieweru * encodovane video se posila do site * PC2 je dost vykonny na on-line encodovani Prohlizeni: * na PC3 pustim VLC a koukam na videoTakze se mi jedna o cteni dat z vncviewer (asi vncrec?) a nasledne prekonvertovani do MPEG streamu (asi transcode s podporou vnc?) a naslednou distrubuci videa do site.
Jediná nevýhoda použití ssh je, že protokol pracuje na aplikační úrovni; to znamená, že to není zcela transparentní, ale je nutné změnit číslo portu.
ssh -L 5901:localhost:5900 user@server.domena
SSH tunel není transparentní? A co brání při tunelování použití zcela transparentního
ssh -L 5901:localhost:5901 user@server.domena
?
Já to tak alespoň používám (linux), měnit port mě ještě nenapadlo. To je nějaká vlastnost Windows? Obecně je komunikace je vedená na lokální 5901 posílána na vzdálený ssh port a tam z localhostu na 5901 vzdáleného stroje, takže nevidím problém, asi není dobré to prezentovat jako vlastnost ssh, když je patrně jen řešen nějaký nesoulad v konkrétním nastavení služeb (patrně na woknech běžící vnc:5900 na nějž se chceme z nejasných příčin připojovat podobně jako na linux vnc:5901, ale to jen hádám).
Při používání Putty mě pouze vypeklo to, že je v definici tunelu nutné místo localhost zadat IP adresu 127.0.0.1
V jakém případě je nutno někam do putty.exe zadávat 127.0.0.1? Pokud se připojuji z Woken používám
Connection -> SSH -> Tunnels ->"
Source port: 5901
Destination: server.domena:5901
V jakém případě je nějak potřeba psát 127.0.0.1?
A.
localhost
nevytvořil.
-L
-R
, Putty na to má volby Local, Remote při v sekci Tunnels - viz obrázek