La Pillola del Geek

9 dicembre 2006

Linux per tutti !!!

"Chi ha detto che un server Linux e' difficile da configurare?
Chi ha detto che non posso configurare un buon server gateway/firewall senza pagare un euro?
Chi lo ha detto non lo so', ma sicuramente non ne sa molto!!!"
E' proprio vero! Viviamo in un mondo imperfetto, dove la maggioranza delle persone oltre a seguire le mode, si lascia facilmente influenzare dagli ingannevoli e astuti messaggi pubblicitari che spesso siamo costretti a guardare.
Poi, come se non bastasse, esiste ancora la stupida idea che la qualita' negli oggetti e' proporzionale al prezzo pagato, ovvero, piu' spendiamo e meno problemi avremo in futuro.
Per non parlare dell'errato concetto che molti hanno sulla "semplicita'": la maggior parte infatti, preferisce lavorare utilizzando sistemi operativi basati esclusivamente su grafica (finestre e mouse), escludendo inconsapevolmente, qualsiasi approccio su cio' che e' basato sull'esecuzione dei programmi da semplice riga di comando (testuale); quest'ultima ritenuta piu' difficile da adoperare e meno performante perche' senza grafica.
Tutto cio' probabilmente perche', non tutti sono degli appassionati di informatica, non tutti hanno del tempo per fare delle giuste comparazioni tra i vari prodotti e sembra che non si riesca ad intuire che il prodotto migliore non e' sempre quello utilizzato dalla maggioranza delle persone.
Allora perche' spendere tanti soldi, se poi esistono soluzioni piu' economiche che spesso funzionano meglio; perche' scegliere un prodotto che in futuro non sara' compatibile con le versioni precendenti e che ci obbliga quindi a migrare (pagando) all'ultima versione disponibile? Perche' pagare per acquistare un software che e' scarsamente documentato, di cui non si sa nemmeno cosa fa e su quali file va ad effettuare le modifiche?

La soluzione potrebbe essere linux: non lo paghi; e' affidabile e stabile; e' ben documentato; e' relativamente semplice da utilizzare; e' flessibile e performate;e' portabile anche sugli hardware piu' inpensabili; e' configurabile sia da interfaccia grafica che su linea di comando; riesce a fare meglio cio' che fanno gli altri sistemi operativi a pagamento; non reinventa i protocolli come fanno gli altri; tutti possono contribuire alla crescita di linux modificando il suo codice sorgente.

Allora come e' possibile sensibilizzare le persone affinche' inizino anche loro ad utilizzare linux?

Oggi, la maggiore attenzione e la continua espansione della cultura informatica, hanno favorito la diffusione e la conoscenza di quelle tecnologie, che seppur di alta qualita', erano spesso ritenute complesse e poco orientate alla semplicita' di utilizzo.
Ma per garantire una maggiore diffusione di queste "complesse tecnologie" e' purtroppo necessario avvicinarsi anche alle esigenze di quelle persone poco esperte e sempre piu' attratte dagli aspetti piu' estetici e meno nobili dell'informatica (come sfondi belli e finestre sempre piu' colorate).

Anche Linux e' stato costretto ad adattarsi a cio' che e' piu' desiderato dalla massa, infatti in questi ultimi anni, ha subito dei grossi cambiamenti che lo hanno reso purtroppo un po' piu' simile alla furba e spietata concorrenza (Microsoft): l'installazione e' piu' semplice e le applicazioni che girano su ambiente grafico sono sempre piu' numerose.
Per esempio, le distribuzioni di Linux sono in continua crescita, se ne trovano veramente tante e ognuna di esse si adatta meglio ad ogni specifica esigenza: da quella professionale per server di rete a quella piu' semplice per uso multimediale.

Il mio consiglio per per chi non e' esperto ed e' ancora affezionato a cio' che e' esclusivamente Microsoft, e' quello di iniziare con un linux semplice da installare e configurabile tramite l'aiuto dell'interfaccia web, alla stessa maniera di come si fa per un router wireless casalingo.
Ma a differenza di un router wireless, avremo invece, un vero server Linux capace anche di gestire lan di piccole e medie dimensioni.
Ovviamente qualsiasi persona piu' esperta, come ad esempio, sistemisti e gestori di reti, saranno contrari a cio' che sto' proponendo; anche io, pur non essendo esperto, penso che non e' possibile gestire una rete senza aver prima acquisito delle conoscenze informatiche di base, senza aver mai letto della documentazione, oppure senza aver mai installato linux prima.
Non tutte le persone sono uguali e purtroppo c'e' sempre qualcuno che "se non vede non crede"... e allora facciamogli vedere come e' possibile unire la banale semplicita' (fortemente desiderata dalle incolte e testarde persone) alla grande potenza di linux.
Ma qualcuno potrebbe dire: "se fai un qualcosa a prova di scimmia, allora, stai pur certo che ne nascera' uno ancora piu' scimmia" (purtroppo questo e' vero; fare un linux a prova di scimmia e' quasi un controsenso...ma tutto cio' e' necessario per contrastrare l'ingannevole concorrenza).

La distribuzione Linux di Point Clark Networks

Da un progetto universitario di un team di ingegneri della canadese Queen's University, nel mese di Maggio 2000 nasce Point Clark Networks, azienda fornitrice di soluzioni e servizi basati su broadband server/gateway.
Ecco alcuni dei principali servizi offerti da Point Clark Network:
  • SDN Service Delivery Network (Back Office Infrastructure)
  • Suva (Authentication and Encryption)
  • Lopez (load balancing)
  • ClarkConnect (Linux-based appliance software)
ClarkConnect e' una robusta distribuzione Linux basata su CentOS, arricchita da un numeroso set di tools e da una interessante interfaccia web per semplificare la configurazione e la gestione dei servizi server/gateway/firewall.

Cio' che lo rende interessante, oltre alla facilita' di installazione e' anche la disponibilita' di tutti i moduli gia' preconfigurati e adatti a chi deve gestire una LAN, inoltre la presenza dell'interfaccia web (webconfig) per il setup del server non pregiudica sulla qualita' dei vari servizi utilizzabili...

Sono disponibili tre diverse versioni:
  • Office Edition (versione commerciale)
  • Enterprise Edition (versione commerciale)
  • Community Edition (versione gratuita)
La versione gratuita Community Edition si differenzia dalla altre per la mancanza del Technical Support di livello I-II-III, Managed/Dynamic VPN, DMZ support, Multiple ISP connections, 1-to-1 NAT support, di qualche servizio addizionale offerto da Clak Point tipo DNS o SDN e per il limite delle 10 Mailboxes gestite da interfaccia web.

La versione da me preferita e' la "Community Edition", in quanto e' gratuita, ha tutto cio' che serve per la gestione di una piccola/media rete, ed inoltre e' pianamente supportata anche dalle Free Community Web Sites tipo Ya-FAQ e Newbie Portal.

L'aggiornamento di CC e' semplificato dall'interfaccia web (webconfig) che richiama l'utilizzo del package management system APT (di Debian).
E' comunque possibile scaricare i codici sorgenti dal server download.clarkconnect.com, oppure i piu' esperti possono ricompilare i sorgenti o utilizzare gli rpm di CentOS, perdendo pero' le features abbinate a webconfig (webconfig e' una sorta di webmin adattato e potenziato per CC, ovvero la famosa interfaccia web di gestione).

Al momento, l'ultima versione disponibile di CC e la 4.0, ed e' basata sul kernel 2.6.

Anche se oggi esistono diversi "third party firmware projects" basti su linux che estendono le capacita' dei router/wireless casalinghi (vedi ad esempio openwrt o tomato), CC rimane la soluzione migliore per implementare servizi tipo Primary Domain Controller PDC (file server con Samba), server di posta elettronica, intrusion detection/prevention, ftp server, web server, backup server, content filter, spam filter, antivirus server, traffic shaping, trasparent proxy, pop up blocker su proxy, caching DNS, stateful firewall, IDS/IPS, printsharing, database server, vpn, webmail, routing server... tutto gratuitamente e configurabile in meno di 30 minuti... e poi non dimentichiamo che linux sfrutta meglio le risorse hardware e a differenza della concorrenza funziona bene anche con i vecchi PC!

Dal sito di CC potete trovare una lista dei vari servizi configurabili e gestibili da interfaccia web:
  1. Management/Monitoring

  2. System Updates
    • Content Filter Updates
    • Intrusion Detection Updates
    • Software Updates

    System Monitoring
    • System Monitor
    • Bandwidth Monitor

    Mail Services
    • Mail/MX Backup
    • Antispam ASP
    • Antivirus ASP

    DNS and Domain Services
    • Domain Registration/Transfers
    • DNS Service
    • Dynamic DNS

    VPN and Security
    • Security Audits
    • Managed VPN

  3. Filtering and Bandwidth

  4. Filtering
    • Web Proxy
    • Content Filter
    • Bandwidth Manager
    • Peer-to-Peer Manager

  5. Firewall and VPN

  6. Virtual Private Networks - VPN
    • IPsec VPN
    • PPTP VPN

    Firewall and Security
    • Stateful Firewall
    • 1-to-1 NAT and DMZ
    • Intrusion Detection
    • Intrusion Prevention

    Networking
    • Multi-WAN / Dual-WAN
    • DHCP Server
    • Caching DNS server

  7. Server Application

  8. File and Web Servers
    • Web Server
    • Web PHP and CGI Support
    • FTP Server
    • Windows File Server

    Backup
    • System Backup
    • LAN Backup

    E-mail
    • Antispam
    • Antivirus
    • POP nd IMAP servers
    • Webmail
    • SMTP Server
    • SMTP Authentication
    • SMTP Gateway

    Printing
    • Print Server Support

    Database
    • MySQL Database

Installazione di ClarkConnect 4.0 Community Edition

La versione CC 4.0 Community Edition e' di appena 446MByte ed e' facilmente scaricabile.
Per chi non e' molto pratico e non sa come masterizzare su CD il file iso scaricato, puo' seguire questa utile guida.

L'installazione di CC e' veramente semplice... altro che Windows! Ma prima di procedere e' importante sapere che CC Community Edition puo' essere installata come gateway, come server standalone con firewall, oppure come server standalone senza firewall.
Vi ricordo che a differenza della configurazione come semplice server standalone, in quella gateway e' necessario aggiungere un'ulteriore scheda ethernet: una per il collegamento verso l'esterno (internet o WAN privata) e l'altra verso l'interno (LAN).



Il sito di CC e' ben fornito di guide e howto anche per chi non ha mai installato linux, ma come punto di partenza vi consiglio di dare un'occhiata al pdf cc-quickstart, oppure prendete come esempio l'installazione effettuata sul mio PC. Inserite nel lettore DVD il CD/DVD appena masterizzato di CC Community Edition e procederete con l'installazione...


Questa guida in flash e' stata realizzata grazie all'uso di Wink e VMware.Versione grande!

In sintesi, segue un elenco delle possibili opzioni da scegliere e selezionare in fase di installazione:
  1. prima installazione di CC (linux), o recupero/manutenzione installazione (rescue)
  2. lingua da utilizzare durante l'installazione
  3. tipo di tastiera
  4. installazione da CD/DVD o tramite ftp
  5. installazione da zero (install), o upgrade installazione esistente (upgrade)
  6. installazione gateway o standalone
  7. tipo di connessione Ethernet, Cable - Standard, DSL - Standard, DSL - PPPoE, Telstra - Big Pond Australia
  8. username, password e DNS forniti dal provider
  9. IP e netmask
  10. hostname e dominio
  11. timezone
  12. root password
  13. partizionamento automatico o manuale tramite disk druid
  14. scelta dei moduli da installare
  15. installazione di Grub Boot Loader

Setup di ClarkConnect 4.0 Community Edition

Dopo aver installato CC e dopo aver effettuato il boot, a differenza delle altre distribuzioni di linux, apparira' un menu' testuale tramite il quale sara' possibile accedere localmente ad alcune schermate di configurazione.



F1 Launch Text-mode Console
per accedere al menu' di configurazione testuale, basta premere il tasto funzione F1 ed inserire la password del superutente root.


Ecco alcuni settaggi configurabili tramite questa interfaccia:

  • gateway/standalone mode (si/no firewall)
  • hostname, DNS servers
  • LAN/Hot LAN/External/DMZ interface
  • virtual IP addresses
  • DHCP static/dynamic, domain
  • security and privacy
  • editor mode
  • display and character set
  • document appearance
  • headers transferred to remote servers
  • listing and accessing files
  • special files and screens

Ovvero, tutto cio' che permette l'accesso e la configurazione remota tramite interfaccia web; infatti da questa interfaccia di configurazione non e' possibile settare gli altri servizi di rete tipo Samba, Postfix, Bind...
F2|F3 Launch Graphics-mode Console
Selezionando F2 (video auto) oppure F3 (video vesa), si accede allo stesso menu' di configurazione visto in precedenza (F1 Launch Text-mode Console), ma grafico e non testuale.


F4 Network Analyzer (IPTraf)
Selezionando F4 avremo accesso alla versione 2.7 della famosa utility per statistiche di rete IPTraf (IP Network Statistics Utility).

Alt-F2 to Alt-F6 CLI (shell) mode
Selezionando da Alt-F2 a Alt-F6 avremo diretto accesso alla classica shell di linux. Tramite shell e' possibile avere il controllo totale di tutti i servizi installati in questa distribuzione, ma con la possibilita' di aggiungere e ricompilare tutto cio' che esiste per linux, anche fuori dal controllo dell'interfaccia web che spesso limita le configurazioni piu' accurate e gradite dalle persone piu' esperte.

Questo filmato in flash riassume quanto detto in precedenza:


Questa guida in flash e' stata realizzata grazie all'uso di Wink e VMware.Versione grande!

Configurazione dei servizi tramite interfaccia web

Passiamo ora alla configurazione dei vari servizi presenti su CC, attraverso l'utilizzo dell'interfaccia web da un semplice PC collegato in remoto.
Quindi, per accedere ai menu' di configurazione, inseriamo sul browser l'indirizzo IP o l'hostname del server CC, su comunicazione criptata e porta 81 (nel mio caso https://10.0.0.100:81 dove 10.0.0.100 e' l'indirizzo IP del server dove e' installato CC).





Per darvi un'idea di quali sono le grandi potenzialita' offerte da webconfig, ho realizzato un piccolo filmato in flash catturando alcune schermate di configurazione dal mio browser.

Una volta collegati al server CC da Web, vi consiglio di effettuare la registrazione con Point Clark Network cosi' da poter scegliere e scaricare (tramite apt-get) tutti gli aggiornamenti e le patch disponibili per i vari servizi e per usufruire del servizio gratuito di dynamic domain name (vostronome.pointclark.net), in questo modo il server sara' accessibile da qualsiasi parte del modo, pur non avendo un indirizzo IP fisso (alla stessa maniera del servizio offerto da dyndns).

Alcune cose interessanti che ho notato:
  • Users and Groups permissions

  • Oltre alla creazione e alla gestione dei gruppi e degli utenti, e' possibile definire specifici livelli di accesso all'interfaccia di configurazione web (webconfig) e ai vari servizi tipo SSH, PPTP VPN, Mailbox, Proxy Server, File Server Folder, FTP

  • Services

  • CC realizza il sogno di tutte le persone poco esperte di informatica, raggruppando in un'unica pagina Web tutti i singoli servizi di rete, quest'ultimi attivabili cliccando su un semplice pulsante virtuale (di colore rosso o verde in base allo stato di attivazione del servizio)

  • Firewall

  • Gestione completa su incoming, outgoing e port forwarding. Creazione DMZ (zona demilitarizzata) e 1-to-1 NAT

  • Bandwidth Management

  • Con estrema semplicita' e' possibile regolare la quantita' e il limite di download in base all'IP, alla subnet, o allo username dell'utente che effettua il login sul dominio (PDC), cosi' da avere un maggior controllo sul traffico di rete e prevenendo eventuali saturazioni della banda passante

  • Antispam/Antivirus

  • La presenza di Spamassassin e di ClamAV oggi e' diventata indispensabile a causa degli innumerevoli spam e virus che transitano per i server di posta elettronica

  • Intrusion Detection/Prevention

  • I report e gli alert disponibili per Snort sono ben leggibili e graficamente avanzati

  • File Server

  • Non solo e' possibile attivare Samba come servizio di fileserver, ma non ho mai visto prima la disponibilita' di una configurazione del PDC (Primary Domain Controller) cosi' completa come quella presente sull'interfaccia Web di CC

  • Web Server

  • Il setup di host virtuali e la possibilita' di abilitare SSL rendono Apache pienamente configurabile anche tramite webconfig

  • Proxy Server

  • E' possibile configurare un pransparent proxy per incrementare la velocita' di apertura delle pagine Web. Spazio della cache e limite di download facilmente gestibili. Aggiunta del content filter (DansGuardian) per filtrare il contenuto delle pagine Web e aggiornamento automatico delle blacklist. Banner/Pop-up Blocker da proxy per evitare virus e spyware

  • Backup

  • Oltre alla possibilita' di trasformare CC come server di backup per salvare il contenuto di ipotetici dischi (condivisi in rete da altri server) tramite Bacula, come su tutti i router e' possibile esportare e importare la configurazione presente sul server, cosi' da poterla ripristinare in caso di problemi o riutilizzarla per la creazione veloce di altri server clonati (utile per small bussiness)

  • Reports

  • Impressionante e' la disponibilita' e la quantita' dei report grafici disponibili su questa distribuzione. Dai report sull'hardware a quelli sulle performance. E' persino possibile accedere con estrema semplicita' a tutti i log di sistema (tipo /var/log/messages)

Conclusioni personali

CC e' una delle migliori distribuzioni linux gateway/server attualmente in circolazione. Semplice, ma allo stesso tempo completa, CC riesce a soddisfare sia le esigenze delle persone meno esperte che quelle piu' pignole ed esigenti. Configurare CC e' quasi come configurare un routerino wireless casalingo da 80€. CC segue gli standard ed offre gli stessi servizi di un normale server configurato con RedHat o CentOS, ma con l'aggiunta di webconfig.
La versione Community Edition oltre ad essere totalmente gratuita e anche ben supportata da diverse comunita' di volontari su internet: esistono numerosi howto e i forum sono ben frequentati.
Per i piu' esperti e per chi non ama le configurazioni da interfaccia grafica, e' sempre possibile accedere alla shell (da Alt-F2 ad Alt-F6) e bypassare tutti i tools proprietari di Point Clark Network (come per esempio webconfig). CC e' anche utile a quegli studenti desiderosi di apprendere meglio alcuni misteriosi concetti di rete, o qualche strano acronimo tipo DMZ, 1-to-1 NAT, PDC, DNS, DHCP, NFS, SSH.

Esistono diverse soluzioni linux specifiche per gateway/firewall/server, tipo SmoothWall, IPCop, Astaro, eBox, m0n0wall, shorewall, devil-linux, Nettion ma spesso o non sono gratuite, o non sono ben aggiornate e supportate, oppure non seguono gli standard forzando il sistemista ad utilizzare soluzioni proprietarie.

CC e' ottimo anche per chi e' interressato allo small business: la maggior parte delle persone e' attratta da cio' che e' estetica e CC offre loro un buon prodotto dotato di un ottimo front-end per la configurazione e gestione dei servizi di rete... non tutte le piccole aziende sono disposte ad assumere un costoso guru sistemista e spesso si cerca di improvvisare facendo smanettare chiunque sul gateway linux (da "persone" che spesso si spacciano come consulenti a "dipendenti" tuttofare).

Mi e' capitato di vedere piccole ditte di consulenza informatica, che hanno venduto e spacciato a buon prezzo CC come appliance solution interamente realizzato da loro: il logo CC sulla pagina web era stato sostituito (e' possibile farlo) e il cliente ha abboccato come un pollo! Il cliente e' un ente pubblico! Incredibile!

Etichette: , ,

8 Comments:

Anonymous Anonimo said...

Complimenti, guida molto completa!ma è basata su redhat come centos vero?

02/01/07, 13:15  
Anonymous Anonimo said...

aggiungo il link del tuo blgo al mio,spero non ci siano problemi...

02/01/07, 13:16  
Anonymous Anonimo said...

La distribuzione ClarkConnect e' basata su CentOS (praticamente RedHat).
Grazie per il link emuboy! Ciao

02/01/07, 17:13  
Blogger mrpurple said...

dopo avere letto la tua recensione ho scaricato ed installato. tutto molto interessante. ma non sono riuscito a configurare il web e il photoserver. come posso arriavare ad avere un aiuto ?

31/01/07, 16:01  
Blogger mrpurple said...

dopo avere letto la tua recensione ho scaricato ed installato. tutto molto interessante. ma non sono riuscito a configurare il web e il photoserver. come posso arriavare ad avere un aiuto ?

31/01/07, 16:02  
Anonymous Anonimo said...

Ciao Vincenzo, per capire il problema dovrei avere maggiori dettagli, come per esempio i messaggi di errore dai files di log, comunque ti consiglio l'ottimo forum del sito di CC.

31/01/07, 17:46  
Anonymous Anonimo said...

E' possibile collegare ad un dc windows 2003 per l'autenticazione degli utenti?

E' possibile usarlo come antispam se si hanno mail appoggiate su un provider?

24/07/08, 18:21  
Blogger Vincenzo De Sanctis "GNUpinux" said...

si e' possibile collegarlo ad un domain controller gestito da win2003 ed e' anche possibile utilizzarlo come antispam (consiglio comunque l'installazione di Mailscanner www.mailscanner.info).

26/01/09, 11:00  

Posta un commento