la rivincita di linux: da ms windows ts ai client linux embedded e xrdp. - romano trampus

34
Università degli Studi di Trieste Sabato 27 ottobre 2007 LUG Trieste copyleft 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)

Upload: university-of-trieste

Post on 14-Dec-2014

3.822 views

Category:

Economy & Finance


0 download

DESCRIPTION

Il desiderio di ridurre il "total cost of ownership" (TCO) ha portato molte realtà ad utilizzare sistemi "terminal server" (TS). Anche se il concetto di "terminale" è nato da Unix gli ultimi 15 anni hanno visto la casa di Redmond protagonista del mercato. Oggi si intravvede un'inversione di tendenza, dovuta al netto miglioramento di applicazioni desktop opensource, al minor costo dei sistemi Linux Embedded e - paradossalmente - alla necessità di riportare lato client applicativi multimediali e di comunicazione (SkyPe, VOIP, etc.) che si accompagna a hardware per i client decisamente performante. L'intervento mostra come installare un sistema TS basato su xrdp per realizzare desktop di lavoro assolutamente comparabili con altre soluzioni commerciali.

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.