infn security workshopsecurity.fi.infn.it/conferenze/fi00/imho-imp.pdf · programmazione...
TRANSCRIPT
INFN Security WorkshopFirenze 19-20 Settembre 2000
IMHO e IMP:una interfaccia Web sicura
per la posta elettronica
Cosa significano i due acronimiIMHO e IMP?
IMHO = IMAP Mail HostIMP = IMAP webMail Program
Sia IMHO che IMP sono una interfaccia Web alfamoso protocollo IMAP (Internet Message AccessProtocol) ideato dall’Università di Washington.Questo protocollo viene utilizzato per gestire laposta elettronica in modalità remota.
Perché utilizzare IMHO o IMP invece deitradizionali client di posta elettronica?
Vantaggi:1) Disponibilità della propria mail-box ovunque2) Mancanza di impostazioni da parte dell’utente3) Privacy e sicurezza nella trasmissione dei dati
Svantaggi:1) Lentezza di visualizzazione
Possibili scenari di utilizzo
1)
2)
WAN
WAN
IMHO o IMP+
IMAP
IMHO o IMP
IMAP 1
IMAP 2
LAN
NNN
NN
N
N
Canale cifrato (SSL)N
Possibili soluzioni al secondo caso
1)
2)
WAN LAN
N
Canale cifrato (SSL)
WAN
SwitchN
WAN
N
N
Stunnel
LAN
N
N
Pike(linguaggio)
Roxen(Web Server)
Diversità di struttura traIMHO e IMP
IMHO(modulo)
Web Server consupporto PHP e SSL
(es. Apache)
PHP con moduliaggiuntivi
(es. LDAP)
Horde eIMP
IMHO
• La versione più recente di IMHO è la 0.98, tra pocodovrebbe uscire la versione 1.0
• IMHO è stato disegnato come componente del serverweb Roxen
• Insieme con Roxen IMHO viene distribuito sotto ‘GNUPublic License’. Tuttavia, se utilizzato per scopicommerciali, deve essere comprato dalla “RoxenInternet Software”
• L’installazione di IMHO si limita alla copia di un unicofile all’interno della ‘directory tree’ di Roxen
• Il programma è scritto in un linguaggio modularechiamato PIKE (luccio)
PikeCos’è Cos’è PikePike??
• Un linguaggio diprogrammazioneinterpretato
• Orientato agli oggetti• Veloce• Di alto livello• Simile al C++• Facile da estendere a
linguaggi compilati
Cosa ha Cosa ha PikePike??• Sei anni di sviluppo• ‘Garbage collection’• Tipi di dati avanzati
come i vettori associativi• Gestione avanzata delle
stringhe• Supporto per ‘bignum’• Supporto per i ‘socket’
integrato
RoxenCaratteristicheCaratteristiche
• Scritto interamente in PIKE• Si possono definire più utenti
per l’amministrazione e laconfigurazione del server
• E’ possibile creare eaggiungere nuovi moduli alserver web (scritti in PIKE)
• ‘Tag Language’ proprietari• Supporta SSL e LDAP• E’ disponibile per quasi tutti i
tipi di UNIX e per Windows
Pregi di Pregi di RoxenRoxen• Configurabile e
gestibile via web• Ha integrati molti
moduli aggiuntivi• Tante funzionalità e
buone prestazioni
Difetti di Difetti di RoxenRoxen• Al momento non è
diffuso come Apache
Pregi e difetti di IMHO
PregiPregi• Interfaccia utente amichevole• Una sola connessione al server
IMAP (fino al logout)• Abbastanza veloce• Non ha bisogno di “Javascript” e
“Cookies” (ma li può utilizzare)• E’ disponibile per tutte le
piattaforme che supportanoroxen (quasi tutti i tipi di UNIXe Windows)
• E’ estremamente semplice dainstallare e da configurare
• Si possono salvare i messaggiin fase di composizione
• Ha una Finestra separata per il“new mail notification agent”
DifettiDifetti• Fa cache delle pagine visitate• L’utente non può scegliere
quale lingua usare• Il programma è scritto in PIKE
e non è supportato da altriserver web oltre a roxen
screen-shot 1: IMHO login
screen-shot 2: IMHO index
Horde/IMP• Horde è un progetto che nasce per la realizzazione di
applicazioni Web scritte in linguaggio PHP• Horde è distribuito sotto ‘GNU Public License’ e
usufruisce del contributo di migliaia di programmatori• Il codice contenuto in Horde è strutturato e mantenuto
efficiente tramite CVS (Concurrent Versioning System)• IMP è uno dei progetti sviluppati in Horde e quindi
richiede l’installazione dell’ambiente di lavoro di Horde(Horde Frame Work)
• L’attuale versione stabile di IMP è la 2.0.11, da poco èstata rilasciata la 2.2.1 con alcune importanti modifiche,mentre la 2.3 è ancora in fase di sviluppo
PHP
Cos’è PHP?Cos’è PHP?• Nasce in ambiente
Web come linguaggiointerpretato
• E’ simile ad unlinguaggio di script(CGI, Perl ecc.) ma èintegrato nell’HTML
• Viene eseguito sul latoserver
Per cosa si usa PHP?Per cosa si usa PHP?• Per fare dei database
interfacciabili al Web(MySQL, mSQL,Oracle, Informix ecc.)
• Per dialogare con imaggiori protocolli direte (IMAP, SNMP,NNTP, POP3, HTTP)
• Per fare IMP
Software necessari perl’installazione di IMP
IndispensabiliIndispensabili• OpenSSL• Un Web server con
integrati i moduli disupporto per PHP e SSL(es. Apache, IIS4)
• PHP• Horde• IMP
OpzionaliOpzionali• Database
(MySQL, PostgreSQL)• LDAP server
(OpenLDAP, slapd)• IMAP server
(UW imap, Cyrus,PMDF, Courier-imap)
Pregi e difetti di IMPPregiPregi
• Non fa cache delle paginevisitate
• Non richiede un server webspecifico, anche se è preferibileApache
• Funziona su quasi tutti i tipi diUNIX e anche su Windows
• L’utente può scegliere qualelingua utilizzare primadell’inizio di una sessione
• Dalla sessione utente si possonosegnalare direttamente problemie bugs al gruppo di supporto
DifettiDifetti• Apre molte connessioni col
server IMAP (quasi una ognipagina HTML), di conseguenzaè più lento nella visualizzazione
• Per funzionare ha bisogno dellaabilitazione dei “Cookies” e di“Javascript”
• Per avere alcune funzioni(addressbook, LDAP search ecc.)ha bisogno di integrare diversimoduli aggiuntivi a PHP e alserver web
• Ha una interfaccia non moltoamichevole
screen-shot 3: IMP login
screen-shot 4: IMP index
IMHO e IMP a confrontoCaratteristiche
Facilità d’installazione e configurazione
Sicurezza nella gestione della cache
Velocità di visualizzazione
Disponibilità e compatibilità (OS e WS)
Interfaccia amichevole
Indipendenza da Cookie e Javascript
Visualizzazione dei messaggi in HTML
Address Book (personale e generale)
Possibilità ricerche con LDAP
Salvataggio locale dei file allegati
IMHO IMP
5 2
2 5
4 3
3 5
4 3
4 2
5 5
5 4
4 4
4 5
Totale 40 38
ConclusioniLa scelta di installare IMHO oppure IMP dipendedalla situazione specifica di utilizzo, dal programmache meglio si adatta alle singole esigenze e, in parte,anche dal gusto personale (…a me piace più IMH☺)
Indirizzi utili
IMHO: http://www.roxen.com/ http://www.lysator.liu.se/~stewa/IMHO/ ftp://ftp.fis.unipr.it/pub/webmail/imho/
IMP: http://www.horde.org/ http://www.horde.org/imp/ http://security.fi.infn.it/tools/imp/