Transcript
Page 1: La rivincita di Linux: da MS Windows TS ai client Linux embedded e xrdp. - Romano Trampus

Università degli Studi di TriesteSabato 27 ottobre 2007

LUG Triestecopyleft 2007 – Romano Trampus

[email protected]

me!

La rivincita di Linux: da MS Windows TS ai client Linux embedded e xrdp.

Romano Trampus - [email protected](Univ. Trieste, Servizi Informatici per le Biblioteche)

Page 2: La rivincita di Linux: da MS Windows TS ai client Linux embedded e xrdp. - Romano Trampus

Università degli Studi di TriesteSabato 27 ottobre 2007

LUG Triestecopyleft 2007 – Romano Trampus

[email protected]

me! Outline

● Contesto, concetti ed idee● Sistemi TS e MS Terminal Services● Vantaggi sistemi TS (accentramento, riduzione del TCO, ...)● Spostamento applicazioni (es skype, firefox, ... ) lato client● Il protocollo rdp● Alternative a rdp● Vantaggi / svantaggi rdp

● Xrdp (distro di riferimento Ubuntu 704)● Disegno architetturale● Installazione● Configurazioni

● Dimostrazione pratica del funzionamento

Page 3: La rivincita di Linux: da MS Windows TS ai client Linux embedded e xrdp. - Romano Trampus

Università degli Studi di TriesteSabato 27 ottobre 2007

LUG Triestecopyleft 2007 – Romano Trampus

[email protected]

me! AVVERTENZA

● Le idee di questo intervento non sono mirate a stabilire una compara-zione valutativa assoluta tra due prodotti (uno, maturo, commerciale e uno in via di sviluppo opensource).

● La scelta di una soluzione tecnologica in un ambiente di lavoro reale deve tener conto di molteplici fattori che la rendono “unica” in ciascun contesto applicativo e temporale.

● Le due soluzioni (Microsoft Terminal Services e Linux + xrdp) non sono messe direttamente a confronto in questo intervento.

● Esistono molte alternative possibili per la realizzazione di sistemi central-izzati, sia commerciali che non.

Page 4: La rivincita di Linux: da MS Windows TS ai client Linux embedded e xrdp. - Romano Trampus

Università degli Studi di TriesteSabato 27 ottobre 2007

LUG Triestecopyleft 2007 – Romano Trampus

[email protected]

me! Concetti preliminari

● Per sistema terminal server si intende in questo intervento un sis-tema centralizzato a cui i client si collegano. Il client possiede il software necessario per visualizzare un desktop remoto ad uso es-clusivo dell'utente (definizioni un po' più precise più avanti). Nell'in-tervento possono essere usati nomi alternativi per indicare soluzioni tecnologiche simili (a volte per indicare uno specifico prodotto, ad esempio xrdp).

● RDP è un protocollo (proprietario) per la comunicazione tra client e server.

● Per linux embedded si intende un sistema hardware su cui è instal-lato Linux configurato in modo da:

● Occupare spazio disco limitato● Di norma non essere modificabile e non venir modificato durante

il funzionamento.

Page 5: La rivincita di Linux: da MS Windows TS ai client Linux embedded e xrdp. - Romano Trampus

Università degli Studi di TriesteSabato 27 ottobre 2007

LUG Triestecopyleft 2007 – Romano Trampus

[email protected]

me! Concetti ed idee

● Anni '80 esplosione del mercato desktop computing e inizia l'asce-sa di MS Windows

● Anni '90 nasce Linux

● Sul mercato desktop Microsoft Windows ha sempre fatto il ruolo del leone

● Utenti finali dichiarano di aver maggior feeling con l'interfaccia di Microsoft

● Spesso gli utenti non distinguono l'applicazione dal sistema opera-tivo

Page 6: La rivincita di Linux: da MS Windows TS ai client Linux embedded e xrdp. - Romano Trampus

Università degli Studi di TriesteSabato 27 ottobre 2007

LUG Triestecopyleft 2007 – Romano Trampus

[email protected]

me! Idee

● Aziende di diverse dimensioni utilizzano soluzioni centralizzate (terminal services) per molte ragioni (riduzione del TCO, ...).

● Esistono molte alternative (commerciali e non) per la realizzazione di sistemi TS.

Page 7: La rivincita di Linux: da MS Windows TS ai client Linux embedded e xrdp. - Romano Trampus

Università degli Studi di TriesteSabato 27 ottobre 2007

LUG Triestecopyleft 2007 – Romano Trampus

[email protected]

me! Vantaggi TS

● L'utente non usa più un PC ma un thinclient

● L'utente non ha il completo controllo della macchina

● Sicurezza

● Controllo remoto della sessione di lavoro

● Ubuquità

● Telelavoro

● ...

Page 8: La rivincita di Linux: da MS Windows TS ai client Linux embedded e xrdp. - Romano Trampus

Università degli Studi di TriesteSabato 27 ottobre 2007

LUG Triestecopyleft 2007 – Romano Trampus

[email protected]

me! “Svantaggi” TS

● La user experience con un sistema TS è influenzata dal contesto: potenza di calcolo del sistema centrale, larghezza di banda disponibile tra client e server, tipologia di applicazioni utilizzate.

● Single point of failure

● Per applicazioni multimediali e di telefonia bisogna veicolare l'audio

● Pagine web con animazioni consumano banda anche quando l'u-tente non sta guardando

● ...

Page 9: La rivincita di Linux: da MS Windows TS ai client Linux embedded e xrdp. - Romano Trampus

Università degli Studi di TriesteSabato 27 ottobre 2007

LUG Triestecopyleft 2007 – Romano Trampus

[email protected]

me!Shift di applicazioni da server a client

● I thinclient spesso sono basati su sistemi linux embedded con rdesktop

● Spostamento di applicazioni da server a client per ovviare al single point of failure, esigenze di voip, web browsing, colli di bottiglia nel-la banda, ...

● Aumento delle performance dei thinclient dovute al calo dei costi hardware

Page 10: La rivincita di Linux: da MS Windows TS ai client Linux embedded e xrdp. - Romano Trampus

Università degli Studi di TriesteSabato 27 ottobre 2007

LUG Triestecopyleft 2007 – Romano Trampus

[email protected]

me! Divario tra le applicazioni

● Riduzione del divario tra le applicazioni proprietarie e le appli-cazioni FLOSS

● In alcuni casi molti utenti finali preferiscono l'alternativa FLOSS proprio per l'usabilità (ad es. MS IE 7.0 vs. Mozilla Firefox)

● In molti casi l'alternativa FLOSS ha raggiunto le potenzialità propri-etarie per tutte le funzioni richieste dalla maggioranza degli utenti (ad esempio MS Office vs. OpenOffice)

● Aumento della capacità di utilizzo delle applicazioni da parte degli utenti e maggiore flessibilità.

Page 11: La rivincita di Linux: da MS Windows TS ai client Linux embedded e xrdp. - Romano Trampus

Università degli Studi di TriesteSabato 27 ottobre 2007

LUG Triestecopyleft 2007 – Romano Trampus

[email protected]

me! Sistemi Terminal Server

● Un sistema terminal server è un computer che ha la particolarità di ag-gregare canali di comunicazione multipli. Siccome ciascuno di quesi canali è bidirezionale sono possibili due modelli di funzionamento:

● Diverse entità si collegano ad una singola risorsa● Una singola entità si collega a diverse risorse

● Il sistema può mettere a disposizione risorse sia fisiche che virtuali● Quando il sistema permette l'accesso contemporaneo a diversi utenti si

parla di centralized computing.

(wikipedia)

Page 12: La rivincita di Linux: da MS Windows TS ai client Linux embedded e xrdp. - Romano Trampus

Università degli Studi di TriesteSabato 27 ottobre 2007

LUG Triestecopyleft 2007 – Romano Trampus

[email protected]

me! Centralized Computing

● Il sistema terminal server rende disponibile un desktop di lavoro per ciascuno dei terminali (utenti) connessi.

● Le applicazioni per il collegamento ai sistemi terminal server sono spesso chiamati anche remote desktop application.

● I terminali che hanno prevalentemente lo scopo di rendere disponi-bile una remote desktop application vengono spesso chiamati thin-client.

Page 13: La rivincita di Linux: da MS Windows TS ai client Linux embedded e xrdp. - Romano Trampus

Università degli Studi di TriesteSabato 27 ottobre 2007

LUG Triestecopyleft 2007 – Romano Trampus

[email protected]

me! RDP History

● E' un protocollo proprietario (Microsoft) basato sull'ITU T.share protocol (aka T.128).

● La prima versione del RDP (versione 4.0) è stata introdotta con le Ter-minal Services in Windows NT 4.0 Server, Terminal Server Edition.

● La versione 5.0, introdotta con Windows 2000 Server ha aggiunto il sup-porto per la gestione di molte risorse (local printing, miglioramento dell'u-tilizzo della banda)

● La versione 5.1, rilasciata con Windows XP Professional, supporta audio e colori a 32 bit.

● Di default, tutti i sistemi Windows XP e Vista includono il Remote Desk-top Connection (RDC) client, un'applicazione per il collegamento ad un sistema terminal server con il protocollo RDP.

● I client RDP sono disponibili per tutti i sistemi operativi (Microsoft Win-dows, Mac OSX, Linux, ...)

Page 14: La rivincita di Linux: da MS Windows TS ai client Linux embedded e xrdp. - Romano Trampus

Università degli Studi di TriesteSabato 27 ottobre 2007

LUG Triestecopyleft 2007 – Romano Trampus

[email protected]

me! Obiettivo

● Creare un client embedded basato su linux con il client rdesktop per col-legarsi a un terminal server RDP e tutte le altre applicazioni eventual-mente desiderate.

● Creare terminal server Linux che accetta connessioni con il protocollo RDP in modo da fornire agli utenti un desktop remoto basato su Linux.

Page 15: La rivincita di Linux: da MS Windows TS ai client Linux embedded e xrdp. - Romano Trampus

Università degli Studi di TriesteSabato 27 ottobre 2007

LUG Triestecopyleft 2007 – Romano Trampus

[email protected]

me! Linux embedded

● Utilizziamo il tool Live-Helper realizzato da Daniel Baumann nell'ambito del Debian Live project.

● Live-Helper contiene script che automatizzano la creazione di un Live Linux CD o USB.

● Ipotizziamo di voler creare una versione live da eseguire da una memoria flash o da una pendrive.

● Non si può installare Linux direttamente su una memoria flash perchè queste hanno un numero limitato di cicli lettura/scrittura.

Page 16: La rivincita di Linux: da MS Windows TS ai client Linux embedded e xrdp. - Romano Trampus

Università degli Studi di TriesteSabato 27 ottobre 2007

LUG Triestecopyleft 2007 – Romano Trampus

[email protected]

me! Linux embedded

● vi /etc/apt/sources.list

● deb http://live.debian.net/debian/ feisty main

● apt-get install debian-unofficial-archive-keyring● apt-get install live-helper

● Dare il comandolh_config

per preparare l'ambiente preliminare per la creazione del sistema live

● Cambiare i file di configurazione nella direcotrydebian-live/config/

Page 17: La rivincita di Linux: da MS Windows TS ai client Linux embedded e xrdp. - Romano Trampus

Università degli Studi di TriesteSabato 27 ottobre 2007

LUG Triestecopyleft 2007 – Romano Trampus

[email protected]

me! Linux embedded

● Nel file debian-live/config/chroot

● Impostare il parametro LIVE_INTERACTIVE="enabled" (consente di effettuare modifiche alla configurazione prima che l'immag-ine del sistema live sia compressa)

● Specificare la lista dei pacchetti da installare, ad esempio:LIVE_PACKAGES_LISTS="gnome, rdesktop, tsclient"

● Nel filedebian-live/config/binary

● Impostare il parametro LIVE_BINARY_IMAGES="usb-hdd"

Page 18: La rivincita di Linux: da MS Windows TS ai client Linux embedded e xrdp. - Romano Trampus

Università degli Studi di TriesteSabato 27 ottobre 2007

LUG Triestecopyleft 2007 – Romano Trampus

[email protected]

me! Linux embedded

● Avviare il processo di creazione con il comandolh_build

● Una volta che gli script hanno finito di installare l'ambiente base verrà avviata una shell (chroot) per l'installazione di software addizionale e permettere ulteriori configurazioni.

● Exit, per continuare il processo

● dd if=binary.img of=/dev/sdX

● Il sistema sulla memoria flash al boot verrà caricato in ramdisk e Linux non scriverà alcun dato sul supporto fisico.

Page 19: La rivincita di Linux: da MS Windows TS ai client Linux embedded e xrdp. - Romano Trampus

Università degli Studi di TriesteSabato 27 ottobre 2007

LUG Triestecopyleft 2007 – Romano Trampus

[email protected]

me!VNC (Virtual Network Computing)

● VNC è stato creato inizialmente nel laboratorio della Olivetti & Oracle Research Lab, mantenuto poi dalla Olivetti e Oracle Corporation.

● Nel 1999 AT&T ha acquistato il laboratorio, quindi nel 2002 ha chiuso definitivamente la parte di laboratorio dedicata alla ricerca.

● VNC RFB (Remote Frame Buffer) si basa semplicemente su regioni di pixel dello schermo che vengono inviati al client in forma compressa.

Page 20: La rivincita di Linux: da MS Windows TS ai client Linux embedded e xrdp. - Romano Trampus

Università degli Studi di TriesteSabato 27 ottobre 2007

LUG Triestecopyleft 2007 – Romano Trampus

[email protected]

me! xrdp

● http://xrdp.sf.net

● Xrdp è un servizio che accetta connessioni dai client RDP. Xrdp imple-menta il protocollo RDP, la sicurezza, i protocolli intermedi necessari al funzionamento, un semplice window manager e alcuni controlli.

● Il processo è multi threaded.

● RDP implementa 3 livelli di sicurezza per la trasmissione dei dati:Low utilizza 40 bit, vengono cripttati solo i dati dal client al server.Medium utilizza 40 bit in modo bidirezionale.High utilizza 128 bit in modo bidirezionale.

Page 21: La rivincita di Linux: da MS Windows TS ai client Linux embedded e xrdp. - Romano Trampus

Università degli Studi di TriesteSabato 27 ottobre 2007

LUG Triestecopyleft 2007 – Romano Trampus

[email protected]

me! xrdp

● Xrdp supporta tutti e tre i livelli di sicurezza 3. I file di configurazione sono normalmente in /etc/xrdp.

● Xrdp è modulare e i singoli moduli vengono caricati a runtime.

● Il multi threading ottimizza le performance: i rallentamenti di un client non hanno ripercussioni sugli altri.

Page 22: La rivincita di Linux: da MS Windows TS ai client Linux embedded e xrdp. - Romano Trampus

Università degli Studi di TriesteSabato 27 ottobre 2007

LUG Triestecopyleft 2007 – Romano Trampus

[email protected]

me! Moduli Xrdp

● Libvnc, un modulo VNC che permette di collegarsi a un server VNC.

● Librdp, un modulo RDP che permette di collegarsi ad un server RDP. Supporta solo connessioni RDP4.

● Sesman, è il session manager di xrdp. Xrdp utilizza sesman per verifi-care le credenziali dell'utente e avviare il desktop remoto ramite il win-dows manager installato.

Page 23: La rivincita di Linux: da MS Windows TS ai client Linux embedded e xrdp. - Romano Trampus

Università degli Studi di TriesteSabato 27 ottobre 2007

LUG Triestecopyleft 2007 – Romano Trampus

[email protected]

me! Xrdp architecture

● Xrdp è un server

RDPclient xrdp

sesman

libvnc

libxrdp

...

X11

Page 24: La rivincita di Linux: da MS Windows TS ai client Linux embedded e xrdp. - Romano Trampus

Università degli Studi di TriesteSabato 27 ottobre 2007

LUG Triestecopyleft 2007 – Romano Trampus

[email protected]

me! Installazione XRDP

Sistema di riferimento: Ubuntu Linux 7.04

● sudo apt-get install build-essential

● scaricare xrdp (http://xrdp.sf.net, v. 0.4.0)

● compilare xrdp● make● make install

● configurare il repository: /etc/apt/sources.listdeb http://us.archive.ubuntu.com/ubuntu/ edgy universedeb-src http://us.archive.ubuntu.com/ubuntu/ edgy universe

per risolvere un bug di vnc4server nel pacchetto della dis-tribuzione di Ubuntu

Page 25: La rivincita di Linux: da MS Windows TS ai client Linux embedded e xrdp. - Romano Trampus

Università degli Studi di TriesteSabato 27 ottobre 2007

LUG Triestecopyleft 2007 – Romano Trampus

[email protected]

me! Installazione xrdp

● apt-get install vnc4server/edgy

● apt-get install kde(o il desktop manager desiderato

● Preparare gli script di startup● cp xrdp_control.sh /etc/init.d/xrdp● update-rc.d xrdp defaults

Page 26: La rivincita di Linux: da MS Windows TS ai client Linux embedded e xrdp. - Romano Trampus

Università degli Studi di TriesteSabato 27 ottobre 2007

LUG Triestecopyleft 2007 – Romano Trampus

[email protected]

me! Performance RDP vs VNC

(measuting multimedia performance...)

Page 27: La rivincita di Linux: da MS Windows TS ai client Linux embedded e xrdp. - Romano Trampus

Università degli Studi di TriesteSabato 27 ottobre 2007

LUG Triestecopyleft 2007 – Romano Trampus

[email protected]

me!Dimostrazione funzionamento

Page 28: La rivincita di Linux: da MS Windows TS ai client Linux embedded e xrdp. - Romano Trampus

Università degli Studi di TriesteSabato 27 ottobre 2007

LUG Triestecopyleft 2007 – Romano Trampus

[email protected]

me! Alternative

● Linux Terminal Server Project (http://www.ltsp.org/)

● VNC● Citrix (ICA)●● http://en.wikipedia.org/wiki/Comparison_of_remote_desktop_

software

Page 29: La rivincita di Linux: da MS Windows TS ai client Linux embedded e xrdp. - Romano Trampus

Università degli Studi di TriesteSabato 27 ottobre 2007

LUG Triestecopyleft 2007 – Romano Trampus

[email protected]

me! Perché RDP?

● Perché è installato di default su tutti i sistemi Microsoft Windows e il client per Linux e gli altri S.O. è molto piccolo, trasportabile e di solito non richiede installazione (basta es-eguirlo).

Page 30: La rivincita di Linux: da MS Windows TS ai client Linux embedded e xrdp. - Romano Trampus

Università degli Studi di TriesteSabato 27 ottobre 2007

LUG Triestecopyleft 2007 – Romano Trampus

[email protected]

me! Conclusioni

● I sistemi terminal server nascono molto prima del protocolo RDP(si veda come alternativa LTSP basato su bootp e collegamento diretto a X11).

● La diffusione di Microsoft Windows ha spinto verso determinate soluzioni.

● Vincoli tecnologici e costi di licenza hanno stimolato la creazione di thin-client basati su Linux.

● La riduzione del divario tra applicazioni proprietarie e FLOSS ha ridotto le perplessità degli utenti nei confronti del FLOSS.

Page 31: La rivincita di Linux: da MS Windows TS ai client Linux embedded e xrdp. - Romano Trampus

Università degli Studi di TriesteSabato 27 ottobre 2007

LUG Triestecopyleft 2007 – Romano Trampus

[email protected]

me! Riferimenti

● XRDP: http://xrdp.sourceforge.net/● VNC protocol, http://www.cl.cam.ac.uk/research/dtg/attarchive/vnc/protocol.html● Wikipedia: http://www.wikipedia.org● J. Nieh, S. J. Yang, Measuring the Multimedia Performance of Server-Based

Computing, Proceedings of the 10 th International Workshop on Network and Operating System Support for Digital Audio and Video, Chapel Hill, NC, June 2000. http://citeseer.ist.psu.edu/nieh00measuring.html

● S. Jae Yang, Jason Nieh, Matt Selsky, and Nikhil Tiwari, The Performance of Remote Display Mechanisms for Thin-Client Computing, roceedings of the 2002 USENIX Annual Technical Conference, June 10-15, 2002, Monterey Conference Center, Monterey, California, USA. http://www.usenix.org/events/usenix02/full_papers/yang/yang_html/

● Create Your Own Live Linux CD or USB distribution, http://www.pendrivelinux.com/2007/05/31/create-your-own-live-linux-cd-or-usb-distribution/

● Debian Live Project, http://debian-live.alioth.debian.org/

Page 32: La rivincita di Linux: da MS Windows TS ai client Linux embedded e xrdp. - Romano Trampus

Università degli Studi di TriesteSabato 27 ottobre 2007

LUG Triestecopyleft 2007 – Romano Trampus

[email protected]

me! Riferimenti

● rdesktop, http://www.rdesktop.org● tsclient, http://sourceforge.net/projects/tsclient/● Skype, http://www.skype.com

Page 33: La rivincita di Linux: da MS Windows TS ai client Linux embedded e xrdp. - Romano Trampus

Università degli Studi di TriesteSabato 27 ottobre 2007

LUG Triestecopyleft 2007 – Romano Trampus

[email protected]

me! Ack

● MS, Microsoft, Windows® sono marchi regis-trati di Microsoft Corporation.

● I nomi dei prodotti indicati sono marchi regis-trati dei rispettivi produttori o autori, dove ap-plicabile.

Page 34: La rivincita di Linux: da MS Windows TS ai client Linux embedded e xrdp. - Romano Trampus

Università degli Studi di TriesteSabato 27 ottobre 2007

LUG Triestecopyleft 2007 – Romano Trampus

[email protected]

me!

Licenza d'usodi questo documento

Quest'opera è stata rilasciata sotto la licenza Creative Commons At-tribuzione-Condividi allo stesso modo 2.5.Per leggere una copia della licenza visita il sito web http://creativecommons.org/licenses/publicdomain/ o spedisci una lettera a Creative Commons, 559 Nathan Abbott Way, Stanford, Cal-ifornia 94305, USA.


Top Related