martedì 30 giugno 2009

Personalizzare la Scrivania con Screenlet

Gli screenlet, penso quasi tutti li conoscano, sono mini applicazioni o gadget che possiamo utilizzare per personalizzare ed aggiungere utili funzioni alla Scrivania.

Per poterli utilizzare è necessario installare un programma di gestione (Screenlets Manager), cosa facilissima perché incluso nei repository ufficiali di Ubuntu. Il nome del pacchetto da cercare ed installare in Gestore di pacchetti Synaptic è 'screenlets'.

Terminata l'installazione il programma è disponibile in Applicazioni » Accessori » Screenlets. La prima volta che si lancia si riceve la richiesta di creare una directory di autostart per il proprio account: rispondere .

Per attivare uno screenlet basta selezionarlo nel manager e cliccare Launch/Add.

Una volta sulla Scrivania con un click del pulsante destro si configurano le proprietà dello screenlet.

Non è che sia proprio un fanatico di avere aggeggi vari che mi ingombrano la Scrivania, però alcuni sono utili. Il mio preferito al momento è quello che segnala i messaggi in arrivo in GMail. Altri ne proverò in seguito, anche perché se si considerano tutti quelli disponibili sul sito (raggiungibile direttamente da Screenlets Manager con il pulsante Get more screenlets) c'è da perderci un po' di tempo a provarli tutti.

giovedì 25 giugno 2009

Sxipper e Firefox, compilare moduli automaticamente

La compilazione di moduli di login per l'accesso a vari servizi online è una delle operazioni che compiamo più frequentemente quando navighiamo in Internet e ricordarsi tutti i nostri nomi utente e password non è una cosa facile. Appurato che usare sempre la stessa password o scriversele tutte su un post-it attaccato allo schermo del PC non è la soluzione giusta al problema, bisogna pensare a qualche alternativa.

Inoltre non esistono solo i moduli di login, spesso capita di compilare moduli per la registrazione ad un servizio o per la richiesta di informazioni e i dati che dobbiamo inserire sono sempre gli stessi: nome, cognome, indirizzo, e-mail e altre informazioni personali. La soluzione per automatizzare tutte queste operazioni ripetitive per quanto mi riguarda è stato Sxipper, un plugin che si integra con il gestore password standard di Firefox, migliorandone però le funzioni.

A differenza del gestore di password di Firefox, Sxipper

  • è in grado di gestire non solo moduli di login, ma anche altri moduli da riempire con informazioni personali;
  • consente di salvare la password anche su certi siti (ad esempio Yahoo Mail, HotMail) su cui questo non è possibile con Firefox;
  • gestisce in maniera più semplice e immediata situazioni in cui si hanno più account per lo stesso servizio: ad esempio più e-mail registrate a Google Mail. In questi casi con un click si sceglie l'account con il quale si vuole effettuare l'accesso;
  • tramite la creazione di più 'identità' o profili, consente di utilizzare insiemi di dati diversi per le registrazioni che si fanno per fini personali o professionali.

L'utilizzo è abbastanza intuitivo. Appena installato tutte le password memorizzate in precedenza in Firefox sono immediatamente disponibili ed utilizzabili; quando si fa il login ad un servizio mai usato prima viene chiesto se si vuole memorizzare la password esattamente come succede con il gestore di password standard e si hanno esattamente le stesse possibilità: salvare la password, non salvarla ed impedire ulteriori future richieste per lo stesso sito, non salvarla, ma consentire che una richiesta di salvataggio password avvenga di nuovo al successivo accesso.

Per quanto riguarda i moduli di registrazione, Sxipper è già "addestrato" a compilare quelli dei servizi più popolari, quindi, per dire, registrarsi a Facebook è un attimo: basta un click con il pulsante destro sul modulo di registrazione e selezionare Form fill; si sceglie poi quale delle proprie identità si vuole utilizzare per la registrazione e, se si sono inseriti correttamente i propri dati personali in Sxipper, il modulo sarà riempito automaticamente.

Quando si incontrano moduli sconosciuti al plugin si può addestrarlo personalmente: si tratta semplicemente di indicare a quale campo della propria identità corrisponde ogni campo del modulo. Comunque non capita molto frequentemente di dover compiere questa operazione; infatti, volendo, si possono condividere i risultati di ogni addestramento con gli altri utenti e in questo modo il plugin "apprende" direttamente dai propri utilizzatori a compilare sempre più moduli senza bisogno di aiuto.

Quello che mi piace particolarmente di Sxipper è la sua capacità di essere discreto quando serve. Ad esempio ci sono forum che voglio essere libero di consultare tranquillamente facendo il login solo se devo inserire un post. Quindi sarebbe fastidioso veder saltar fuori ogni volta la finestrella per inserire nome utente e password.

In questi casi basta un click su hide e il plugin non farà più comparire automaticamente la finestra su quel sito.

Quando si desidera fare il login si fa click con il pulsante destro sul modulo e si seleziona Login.

martedì 23 giugno 2009

'Ciao mondo!' in C e C++

Una delle cose che mi piacciono di più di Ubuntu è la facilità con cui si possono installare nuovi programmi dai repository. Avere così tanti strumenti a portata di mano ti fa sempre venire voglia di provare qualcosa. Così anche se è qualche anno che non utilizzo questo linguaggio di programmazione ho voluto vedere come si fa a compilare un sorgente in C in Ubuntu.

Anche se arrugginito il classico programmino "Ciao mondo!" di una riga dovrebbe essere ancora alla mia portata. Anzi voglio strafare: doppia versione C e C++.

Dopo una veloce ricerca è facile scoprire che tutto quello che serve per iniziare è installare il pacchetto 'build-essential': si può utilizzare Synaptic (Cerca, Marca per l'installazione e Applica) oppure da finestra terminale scrivere

sudo apt-get install build-essential

'Ciao mondo' in C

Creo un file di nome 'ciao.c' con un normale editor di testo, ad esempio gedit, con questo contenuto

#include <stdio.h>

int main(void){
printf("Ciao mondo!\n");
return 0;
}

Posizionato all'interno della stessa cartella dove ho salvato il file, da terminale scrivo

gcc -g ciao.c -o ciao

Per eseguire il programma generato dalla compilazione

./ciao

Risultato

'Ciao mondo' in C++

Creo un file di nome 'ciao.cpp' con questo contenuto

# include <iostream>

int main(void) {
std::cout << "Ciao mondo! " << std::endl;
return 0;
}

Anche in questo caso mi posiziono all'interno della stessa cartella dove ho salvato il file e scrivo

g++ -g ciao.cpp -o ciaopp

Per eseguire il programma

./ciaopp

Risultato

Fine. La prima volta che l'ho fatto si è aperto tutto un mondo, poi si è un po' richiuso :) chissà che Ubuntu non mi faccia venire voglia di riprendere il filo.

venerdì 19 giugno 2009

Geany, creare librerie di codice (snippets)

Tra le varie funzioni di Geany, l'editor / IDE di cui ho già avuto modo di scrivere, una interessante anche se un po' nascosta (nel senso che è sì documentata, ma non a portata di click per cui può sfuggire) è la possibilità di creare una libreria di snippets, blocchi di codice che si utilizzano di frequente e per l'inserimento dei quali è quindi comodo predisporsi delle scorciatoie o macro.

Un certo numero di queste macro è definito nel file snippets.conf che si trova in '/usr/share/geany'. La prima cosa da fare è copiare questo file in '/home/username/.config/geany/' (sostituire username con il proprio nome utente su Ubuntu) in modo da poterlo modificare senza perdere le modifiche a seguito di un aggiornamento di Geany.

Apriamo poi il file con un editor di testo o Geany stesso. Troviamo questa parte

[PHP]
for=for ($i = 0; $i < %cursor%; $i++)%brace_open%\n%brace_close%

Per vedere come funziona creiamo un nuovo file PHP in Geany (menù File » Nuovo da modello » Sorgente PHP). Posizionandoci sulla prima riga dopo <?php scriviamo for e premiamo poi il tasto [TAB]: nell'editor vedremo il blocco di codice

Da questo esempio dovrebbe risultare abbastanza chiaro come è strutturata una macro: un nome o chiave seguito dal segno uguale seguito dal blocco di codice tutto sulla stessa riga. Quando nell'editor scriviamo la chiave (for nell'esempio) seguita dal tasto TAB, il blocco di codice corrispondente sarà inserito.

Per semplificare la scrittura di macro, delle sequenze di caratteri di uso frequente possono essere sostituite da variabili segnaposto. Nell'esempio ne troviamo due: %brace_open% e %brace_close%. Quando il blocco di codice viene inserito queste due variabili sono rimpiazzate dai caratteri definiti nella sezione [Special] di snippets.conf

[Special]
brace_open=\n{\n\t brace_close=}\n

Oltre a quelle già definite possiamo aggiungere altre variabili in [Special] da utilizzare nelle nostre macro.

Poiché la definizione di una macro deve stare tutta su una riga si utilizza \n per andare a capo, %cursor% invece indica la posizione dove sarà collocato il cursore una volta che il blocco di codice è stato inserito.

Per fare un altro esempio aggiungo una macro alla sezione [PHP]: la chiamo forar e serve ad impostare un ciclo for per percorrere tutti gli elementi di un array. La definizione è

forar=for ($i = 0, $l = count(%cursor%); $i <= $l; $i++)%brace_open%\n%brace_close%

Quando si modifica snippets.conf con Geany in esecuzione, bisogna ricordarsi di ricaricare la configurazione (menù Strumenti » Ricarica la configurazione) o le nuove macro inserite non saranno disponibili.

Scrivendo nell'editor forar e premendo [TAB] questo è il risultato

mercoledì 17 giugno 2009

Epiphany, evidenziare link con attributo nofollow

In Firefox ho installato un plugin chiamato Quirk Search Status che, oltre ad altre utili funzioni, permette di evidenziare con un bordo ed un colore di sfondo i link che hanno attributo rel nofollow.

Un plugin del genere non credo esista per Epiphany, ma almeno l'evidenziazione dei link con nofollow si può ottenere con uno script Greasemonkey. Ecco come fare.

In Epiphany selezionare la voce di menù Strumenti » Extensions ed abilitare l'estensione Greasemonkey

Andare alla pagina dello script:

userscripts.org/scripts/show/26418

Fare click con il pulsante destro del mouse sul pulsante Install a destra sul sito e selezionare Install User Script.

Si riceve un messaggio di conferma che lo script è stato installato e a questo punto i link con attributo nofollow dovrebbero apparire come nell'immagine qui sotto.

L'attributo è individuato dallo script anche quando è inserito nei Meta Tags della pagina come ad esempio in

<head>
<meta name="robots" content="noindex,nofollow" />
</head>

In questo caso tutti i link della pagina verranno evidenziati, giustamente perché il nofollow nei Meta Tags vale per tutti i link.

Gli script non possono essere disinstallati dall'interfaccia utente di Epiphany: per farlo bisogna aprire la cartella

.gnome2/epiphany/extensions/data/greasemonkey/

nella propria 'home' e cancellare il file.

Naturalmente questo script può essere usato anche in Firefox da chi preferisca questa strada all'installazione del plugin Search Status. Bisogna per prima cosa installare il plugin Greasemonkey; poi sul sito dello script fare click su Install per installare lo script.

A differenza di Epiphany, Firefox offre un'interfacca utente (menù Strumenti » Greasemonkey) per gestire e rimuovere gli script.

martedì 16 giugno 2009

Visualizzare file in formato CHM

Microsoft Compiled HTML Help è un formato proprietario di Microsoft utilizzato per documentazione di prodotti e manualistica. Ho un certo numero di file in questo formato (estensione .chm) che mi interessava poter consultare rimanendo in Ubuntu: la soluzione è facile e veloce perché basata sull'utilizzo di due programmi disponibili nel repository universe: xCHM (pacchetto 'xchm') e GnoCHM (pacchetto 'gnochm').

Sono entrambi prodotti facili da usare e che permettono di compiere tutte le operazioni necessarie alla consultazione di un file in formato CHM:

  • Visualizzazione dell'albero dei contenuti
  • Visualizzazione dell'indice per parola
  • Ricerca all'interno dell'intero documento o nella pagina corrente
  • Possibilità di impostare segnalibri
  • Stampa

GnoCHM è probabilmente il migliore dei due: è più accurato nella formattazione dei documenti, ha una funzione di ricerca più avanzata, consente l'apertura nel browser dei link incorporati nel documento ed ha una migliore gestione dei segnalibri: è possibile scegliere il titolo del segnalibro e la lista è più a portata di mano.

In xCHM alcuni stili sembrano ignorati, ma è più veloce nell'apertura di documenti di grandi dimensioni: ho fatto una prova con la documentazione completa del PHP in formato CHM e la differenza è stata significativa in favore di xCHM di cui inoltre mi piace la possibilità di personalizzare completamente il tipo di carattere e non solo la dimensione: questa funzione in molti casi può essere utile per facilitare la lettura.

Sono comunque entrambi talmente facili da provare che chiunque può farsi velocemente un'idea di quale sia il più adatto alle proprie esigenze.

sabato 13 giugno 2009

Epiphany, un browser leggero e veloce

Quando utilizzo Windows il mio browser preferito è senza dubbio Firefox, per cui mi è venuto naturale adottarlo anche in Ubuntu visto che oltre tutto è già disponibile preinstallato. Vero è che girovagando per forum si sentono spesso lamentele sulla progressiva perdita di prestazioni subita da questo browser nel corso del tempo, con il progredire dello sviluppo verso le versioni più recenti. In certa misura questo fatto è innegabile anche se personalmente continuo a ritenere Firefox un ottimo prodotto e alcuni suoi plugin sono divenuti per me quasi indispensabili.

Detto questo, anche guardarsi intorno alla ricerca di possibili alternative può essere una buona idea ed ho voluto provare Epiphany (pacchetto 'epiphany-browser' per chi voglia installarlo da Synaptic). La prima impressione è stata ottima: un browser leggero, ma con tutte le funzioni essenziali e decisamente veloce. Ecco alcune delle caratteristiche che mi sono piaciute di più.

Configurazione barre degli strumenti

Le barre degli strumenti si possono personalizzare aggiungendo, togliendo o spostando icone grosso modo con la stessa procedura che si usa in Firefox: selezionando la voce di menù Visualizza » Barre degli strumenti » Personalizza barre degli strumenti si apre un riquadro con le icone disponibili che possono essere trascinate con il mouse sulla (o fuori dalla) barra. Si può scegliere se visualizzare solo le icone, le icone con sotto (o a fianco) un testo descrittivo o solo il testo. Si possono aggiungere nuove barre degli strumenti.

Gestione segnalibri

I segnalibri possono essere suddivisi in argomenti. Oltre che selezionabile dalla voce di menù Segnalibri, un argomento può essere trascinato sulla barra degli strumenti con la stessa procedura vista per le icone: in questo modo si ottiene un risultato simile a quello della barra dei segnalibri di Firefox.

Nell'immagine la lista aperta con i segnalibri dei siti dei quotidiani è stata creata categorizzando i segnalibri sotto l'argomento Quotidiani e trascinando l'argomento sulla barra.

Segnalibri intelligenti

Un sistema che consente di passare un parametro nella URL di un segnalibro. Il valore del parametro viene inserito nella barra degli indirizzi. La documentazione contiene un esempio di segnalibro intelligente per effettuare ricerche veloci su Google: partendo da quello se ne possono creare di personalizzati.

Privacy e dati personali

Dal menù Modifica » Preferenze (scheda Privacy) si può impostare l'opzione per il blocco dei pop-up, attivare e disattivare Java e Javascript, impostare le regole per l'accettazione dei cookies e scegliere se si vogliono memorizzare le password di accesso ai siti. Dal menù Modifica » Dati personali si possono visualizzare i cookie memorizzati e le password salvate che sono mostrate in chiaro; a differenza di Firefox non si può impostare una password principale (almeno questa possibilità non l'ho trovata), e questa è una cosa che non mi è piaciuta molto.

Nella stessa finestra con il pulsante Pulisci tutto si possono cancellare cookie, password salvate, cronologia e file temporanei (cache).

Estensioni

Tramite estensioni si possono aggiungere nuove funzioni ad Epiphany. Il numero delle estensioni non è neppure lontanamente paragonabile a quello dei plugin disponibili per Firefox, ma ce ne sono alcune piuttosto utili, attivabili dal menù Strumenti » Extensions.

  • AdBlock per stoppare pubblicità fastidiose. Configurabile con filtri su misura.
  • Auto-scorrimento per scorrere la pagina con il movimento del mouse.
  • Azioni per creare comandi personalizzati attivabili con il pulsante destro del mouse.
  • Informazioni pagina per visualizzare immagini, link, moduli e metadata della pagina corrente

Più diverse altre.

In conclusione, Epiphany almeno per me non può sostituire in tutto Firefox, ma credo che avrò comunque modo di utilizzarlo.

venerdì 12 giugno 2009

Estrarre file da archivio 7Zip (.7z)

In Windows gestisco archivi compressi quasi esclusivamente con 7-Zip, un ottimo software open source che oltre a supportare un gran numero di formati di compressione offre un proprio formato (7z) molto efficiente.

Ubuntu così come esce dalla 'scatola' non consente di aprire archivi in formato 7z. Avendo accumulato un bel po' di questi file e non avendo voglia di convertirli da Windows ho cercato una soluzione. Non è difficile da trovare, la riporto comunque qui nel caso serva ad altri e per non dimenticarmene (l'età avanza).

Da Gestore di pacchetti Synaptic accertarsi di avere abilitato il repository universe (controllare in Impostazioni » Archivi dei pacchetti ed eventualmente selezionare l'opzione relativa).

Cercare ed installare il pacchetto 'p2zip-full'. Al termine dell'installazione File Roller riconoscerà il nuovo formato di modo che basta il solito doppio click sull'icona per aprire un qualsiasi archivio con estensione .7z. Anche l'opzione Estrai qui che si ottiene facendo click con il tasto destro sull'icona dell'archivio funziona perfettamente.

Invece selezionando uno o più file e scegliendo Crea archivio dal menù attivato sempre dal testo destro, vedremo che il formato 7z è ora selezionabile dalla lista dei formati di compressione disponibili.

La versione per Linux di 7-Zip non dispone di un'interfaccia grafica, ma a parte l'utilizzo diretto da Nautilus come appena visto, è possibile utilizzarla da terminale. Digitando

7z

si ottiene la lista delle opzioni. Ad esempio per estrarre il contenuto di un archivio preservando la struttura delle cartelle dell'archivio si usa

7z x nome_file_archivio

martedì 9 giugno 2009

Abilitare modulo mod_rewrite su Apache

Ho installato il CMS Drupal per testarlo in locale ed ho avuto bisogno di attivare il modulo Apache mod_rewrite per poter usufruire delle URL semplificate generate dal modulo di Drupal Pathauto. La cosa sarà incomprensibile per chi non conosce questo cms, ma non è il momento per entrare nel dettaglio. In ogni modo la stessa necessità si presenta anche con altre applicazioni web (cms, gallerie, forum) che utilizzano mod_rewrite per gestire URL semplificate (dette a volte anche search engine friendly o SEF).

Il fatto è che mod_rewrite non è attivato al momento dell'installazione di Apache su Ubuntu; l'attivazione è comunque una procedura molto semplice che riporto di seguito.

1) Da terminale digito

sudo a2enmod rewrite

2) Modifico poi la configurazione del Virtual Host. Questo dipende dalla configurazione del mio ambiente di sviluppo locale dove ho creato un Virtual Host ('test') che utilizza come Document Root una cartella nella mia home (vedi questo post).

sudo gedit /etc/apache2/sites-available/test

Nella parte del file che segue sulle due righe che contengono AllowOverride None va modificato None in All

<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>
<Directory /home/nome_utente/public_html/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>

nome_utente è il mio nome utente su Ubuntu. Se avessi voluto modificare la configurazione del sito predefinito (quello con Document Root '/var/www') il comando avrebbe dovuto essere 'sudo gedit /etc/apache2/sites-available/default'.

3) Come ultimo passo riavvio Apache con

sudo /etc/init.d/apache2 restart

domenica 7 giugno 2009

Geany, editor HTML e IDE multilinguaggio

Dopo Bluefish ho voluto provare Geany, anche questo è un editor che supporta molti linguaggi di programmazione e di markup (C, C++, D, Java, Pascal, PHP, Python, Ruby, HTML, LaTex) offrendo funzioni di formattazione del codice ed evidenziazione della sintassi. Rispetto a Bluefish però mette a disposizione anche alcune funzioni di un ambiente di sviluppo integrato (IDE).

Il nome del pacchetto per l'installazione da Synaptic è 'geany'. Dopo l'installazione il programma può essere lanciato da Applicazioni » Programmazione.

Ecco alcune delle funzioni di Geany secondo me più interessanti:

  • autocompletamento del codice
  • chiusura automatica dei costrutti if, for, switch / case, while
  • espansione / contrazione delle funzioni, blocchi condizionali, cicli
  • chiusura automatica dei tag HTML e XML
  • chiusura automatica delle parentesi e degli apici singoli o doppi
  • 'albero' navigabile delle classi, funzioni e variabili contenute nel sorgente

Ovviamente tutte queste opzioni sono attivabili o disattivabili a piacere.

Possono essere creati progetti che includono più file e un proprio insieme di impostazioni. Esiste infine la possibilità di estendere le funzioni dell'applicazione tramite plugin: mi riprometto di provarne alcuni e segnalare i più interessanti.

giovedì 4 giugno 2009

RapidSVN, client grafico Subversion

Cosa sia Subversion non mi metto a spiegarlo qui nel dettaglio. Chi avesse bisogno di informazioni di base può leggere questo articolo di Wikipedia.

Mi limito a scrivere qualche riga sull'utilizzo basilare di RapidSVN, un client ad interfaccia grafica per accedere ai repository di codice di quelle applicazioni che utilizzano Subversion come strumento per il controllo di versione. Nel caso di applicazioni open source è frequente che l'accesso in lettura al repository sia consentito senza particolari formalità, mentre per avere la possibilità di salvare modifiche al codice è ovviamente necessario un account con gli appropriati privilegi e soggetto all'approvazione del team di sviluppo.

La prima cosa da fare è installare il pacchetto 'rapidsvn' con Synaptic. Al termine troviamo l'applicazione in Applicazioni » Programmazione » RapidSVN. Una volta avviato il programma, da Bookmarks » Add Existing Repository si imposta la URL del repository desiderato.

Come esempio scelgo quello di Wordpress:

http://svn.automattic.com/wordpress/trunk/

Una volta impostato il bookmark è possibile sfogliare il repository e vedere i nomi dei file e delle cartelle.

Per aprire i file e vederne il contenuto è necessario creare una copia di lavoro locale: per fare questo mi basta fare click con il pulsante destro sul bookmark e scegliere Checkout New Working Copy.

Nella finestra che si apre il campo URL dovrebbe essere già impostato come 'http://svn.automattic.com/wordpress/trunk/', quindi inserisco nel campo Destination Directory il percorso della cartella che conterrà la copia di lavoro, nel mio caso

/home/ubuntu-mania/public_html/wp

Al termine dell'operazione di checkout il contenuto del repository è disponibile localmente nella cartella sopra indicata. Mi fermo qui perché non voglio certo scrivere una guida completa del prodotto.

Quanto detto fino a questo punto è sufficiente a trasferire una copia del repository in locale, le cose si complicano se facciamo delle modifiche ai file localmente e dobbiamo quindi aggiornare il repository risolvendo eventuali conflitti con modifiche agli stessi file fatte da altri utenti. Chiaramente questo è possibile solo se facciamo parte del team di sviluppo dell'applicazione.

Tutti questi aspetti sono trattati esaurientemente nella documentazione disponibile sul wiki di RapidSVN.

martedì 2 giugno 2009

Bluefish Html/Xhtml, PHP editor

Bluefish è un editor che offre indentazione e formattazione del codice, evidenziazione della sintassi ed altre utili funzioni per la creazione di pagine HTML/XHTML e lo sviluppo di script in PHP e altri linguaggi di programmazione.

L'installazione avviene semplicemente da Sistema » Amministrazione » Gestore pacchetti Synaptic (pacchetto 'bluefish'). Al termine dell'installazione troviamo il programma disponibile in Applicazioni » Programmazione » Bluefish editor.

Si tratta di un prodotto dall'uso intuitivo, tutte le principali funzioni sono accessibili da barre degli strumenti, delle quali una (Quickbar) può essere personalizzata includendo ad esempio i pulsanti per l'inserimento dei tag HTML che utilizziamo più spesso.

Inoltre è disponibile un menù personalizzato: prendendo a modello le voci esistenti possiamo aggiungere opzioni per l'inserimento veloce di 'scheletri' di funzioni, cicli di controllo, blocchi di codice utilizzati di frequente.

Anche la funzione di evidenziazione della sintassi è personalizzabile: possiamo ad esempio modificare lo stile e il colore dei tag HTML, degli attributi e dei loro valori.

Oltre che editare file singolarmente si possono raggruppare più file da gestire come progetti.

In conclusione Bluefish mi sembra un ottimo prodotto, facile da usare e tra l'altro anche molto veloce.

lunedì 1 giugno 2009

Configurare firewall con Gufw

Come utente Windows di lunga data sono stato abituato a considerare il firewall come elemento essenziale per la sicurezza del PC. Mi capita spesso, anche con po' di paranoia, di tornare a verificare con il test Shields up che lo stato di tutte le porte sia stealth.

Quindi appena installato il nuovo sistema è stato naturale ricercare informazioni su come installare e configurare un firewall su Ubuntu. A seguito di queste ricerche ho trovato questa ottima guida sul Wiki di ubuntu-it.org che spiega ai paranoici (più o meno ex) utenti Windows come su Ubuntu Desktop un firewall sia spesso inutile e la cosa ovviamente mi ha fatto molto piacere.

Vero è che ho sucessivamente installato Apache e MySQL server e che intendo utilizzare questi server solo per sviluppo e test in locale senza renderli accessibili da Internet. Quindi la necessità di un firewall si è ripresentata. Dopo qualche ricerca mi è sembrato che una soluzione adeguata per gli utenti non troppo esperti possa essere Gufw: si tratta di un'interfaccia grafica che semplifica la configurazione del firewall nativo di Ubuntu.

L'installazione si fa facilmente con Synaptic (pacchetto 'gufw'). Al termine si può accedere alla configurazione da Sistema » Amministrazione » Configurazione firewall: non avendo bisogno di impostare regole particolari, mi sono limitato a spuntare Firewall abilitato e a lasciare selezionata l'opzione predefinita Nega il traffico in entrata.

Come verifica ho ripetuto il test 'Shields up' sulle porte 80 (Apache) e 3306 (MySQL): con l'opzione Firewall abilitato selezionata risultano entrambe stealth, mentre con l'opzione deselezionata risultano rispettivamente open e closed.

Arrivati a questo punto se si ha bisogno di impostare regole specifiche si possono utilizzare le tre schede sotto Aggiungi nuova regola:

  • Semplice: si indica un numero di porta e si sceglie se bloccare (o accettare) il traffico attraverso quella porta.
  • Preconfigurate: si seleziona un programma o servizio e si sceglie se bloccare (o accettare) il traffico attraverso la porta preconfigurata per quel programma o servizio. Ad esempio se la scelta è Permetti / Servizio / ftp, quando si preme Aggiungi vedremo una regola '21/tcp ALLOW Anywhere'.
  • Avanzate: possiamo scegliere se bloccare (o accettare) il traffico da (o verso) uno o più indirizzi IP attraverso una porta o un intervallo di porte.