OltreCaptain Blog

Giugno 30, 2008

Tips & Tricks “seconda parte”

Archiviato in: Informatica — Capt @ 4:43 pm

Tips & Tricks

Accesso remoto in totale sicurezza, si e come?
Con l’utility ssh, integrata nel pacchetto OpenSSH, è possibile effettuare l’accesso in altre macchine in remoto, e logicamente lavorarci come se fossero in locale.
L’uso del comando ssh è parecchio semplice e, grazie al supporto dei più potenti sistemi di cifratura, è anche parecchio sicuro.
Ma il punto di forza è che con un client e con il server SSH opportunamente configurati, è possibile amministrare computers connessi in Lan, Internet, senza spostarsi dalla propria poltrona.
Un esempio se vogliamo collegarci alla macchina 192.168.0.1 è sufficiente eseguire: ssh 192.168.0.1 e successivamente digitare la password relativa all’utente con cui si è eseguito l’accesso in locale.
Supponiamo di voler far un accesso con un utente diverso, è sufficiente eseguire lo stesso comando seguito dallo switch -l e dal nome utente: ssh -l nome_utente 192.168.0.1.

Configurazioni opzionali della shell Bash:
Sono parecchi i modi per personalizzare la potente shell Bash alle proprie esigenze.
Ma ce ne sta uno, non molto conosciuto, che ci permette di intervenire sui suoi comportamenti opzionali “optional shell behavior“, per agire su questa cosa bisogna agire con il comand shopt che ci consente di attivare o disattivare ogni singola caratteristica messa a disposizione dagli sviluppatori.
Bene, la prima cosa da fare è controllare l’elenco di tutte le singole opzioni disponibili e conoscere l’attuale stato di esse, On/Off.
Per fare questo, basta digitare nella shell il seguente comando: shopt oppure shopt -p.

utente@debian:~$ shopt
cdable_vars off
cdspell off
checkhash off
checkwinsize on
cmdhist on
compat31 off
dotglob off
execfail off
expand_aliases on
extdebug off
extglob on
extquote on
failglob off
force_fignore on
gnu_errfmt off
histappend off
histreedit off
histverify off
hostcomplete off
huponexit off
interactive_comments on
lithist off
login_shell off
mailwarn off
no_empty_cmd_completion off
nocaseglob off
nocasematch off
nullglob off
progcomp on
promptvars on
restricted_shell off
shift_verbose off
sourcepath on
xpg_echo off

che permette di correggere numerosi errori di battitura che si potrebbero commettere durante l’utilizzo del comando Ecco, dovrebbe uscire simile a questo di sopra, facciamo un esempio prendiamo per caso l’opzione cdspellcd, infatti basta attivarla: shopt -s cdspell, e la shell provvederà a correggere sia l’inversione dei caratteri, o la mancanza di uno di essi o la presenza di troppi caratteri, ora proviamo a scrivere volutamente cd /usr/local/shhare, la shell si accorgerà di questo errore e ci porterà direttamente in /usr/local/share.

Informasi sui i moduli:
I vari moduli del kernel Linux e i loro nomi. sono alquanto criptici, nel senso, che basta dare solamente un occhiata in /lib/modules/versione_kernel/kernel per capire subito che, se non sappiamo esattamente cosa cercare, e trovare quello che sta “meglio” nel nostro hardware è veramente dura.
Ma per nostra fortuna è possibile ottenere delle maggiori informazioni, tramite l’utilizzo del comand modinfo, ad esempio: modinfo modulo_kernel.
Con quest’ultimo comando, riusciamo ad ottenere le varie informazioni riguardo al modulo in questione, preso in esame.
Tra questi dati troviamo anche una attenta descrizione del modulo stesso, il tipo di licenza, gli autori, la versione e infine la cosa più importante, i parametri che possono essere passati al modulo cosi da essere in grado di agire direttamente sulla configurazione di una periferica.

Si parla già di Mozilla 3.1 alfa!

Archiviato in: Informatica — Capt @ 12:05 pm


Ad una sola settimana dal rilascio di Firefox 3.0, il team di sviluppo, ha già resa nota la roadmap per la versione 3.1, “Shiretoko”.
Stando ad una bozza dei piani di rilascio della nuova release, sarà disponibile a Luglio del 2008!
Sarà disponibile per tutte e tre le piattaforme supportate: Mac, Windows e Linux, ricordiamo infine che si tratta del primo aggiornamento previsto per Firefox 3.0.
Tra le nuove funzioni principali ricordiamo la visione delle anteprime delle pagine web, l’auto-completamento per gli inserimenti dell’utente, una nuova interfaccia avanzata per la ricerca.

Download: http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-trunk/

Giugno 29, 2008

Rilascio di Ubuntu alpha1 8.10! “Intrepid Ibex”

Archiviato in: Informatica — Capt @ 10:45 pm

Steve Langasek ha annunciato la disponibilità della prima alpha release di Ubuntu 8.10, nome in codice “Intrepid Ibex“.
I principali cambiamenti riguardano l’adozione delle nuove migliorie applicate a Debian e l’utilizzo di una pre-release del kernel 2.6.26; un elenco completo può essere trovato a questo indirizzo: http://www.ubuntu.com/testing/intrepid/alpha1.
Il team di Ubuntu non incoraggia il passaggio alla pre-release a chi vuole una distro stabile, che ricordo che è la 8.04, invece chi vuole aggiornare e provare anche le nuove vesti di Ubuntu è possibile farlo con un semplice comando dalla propria shell: update-manager -d.
Invece se si è intenzionati di fare una nuova installazione, da zero, è possibile scaricare le immagini dai siti:

Ubuntu (Gnome):http://cdimage.ubuntu.com/releases/intrepid/alpha-1/
Xubuntu (Xfce): http://cdimage.ubuntu.com/xubuntu/releases/intrepid/alpha-1/
Kubuntu (Kde): http://cdimage.ubuntu.com/kubuntu/releases/intrepid/alpha-1/

Ecco a voi Wine 1.1.0!

Archiviato in: Informatica — Capt @ 8:33 pm

Wine 1.1.0!!

A pochi giorni del rilascio di Wine 1.0, il team di Wine ha rilasciato la versione 1.1.0!
Migliora il supporto per i tablet e presenta una serie di bugfixes, molte nuove funzioni MSHTML, supporto per HWND_MESSAGE Windows e così via.
Per maggiori dettagli vi invito di visitare il sito web del team Wine HQ: http://www.winehq.org/

Giugno 25, 2008

Upi-Src vede la luce!

Archiviato in: Informatica — Capt @ 5:54 pm

Upi-src, acronimo (Universal Package Installer) è un progetto OpenSource tutto italiano, nasce dall’idea di due giovani italiani, nel febbraio del 2008 e successivamente si sono uniti altri due italiani.
Dopo un periodo di sviluppo in perl e di testing, in data 22/06/2008 è stata rilasciata la prima release 0.1 alpha di Upi-src, che è disponibile al sito web: http://www.upi-src.org/
Esso consiste, in un programma multipiattaforma, di gestione programmi, attraverso una repository (che è in costruzione), utilizzando anche le repository Debian based, che gestisce l’installazione dei programmi via sorgente/source. Una volta che gli è stato digitato il programma che noi vogliamo installare nel nostro sistema operativo, upi-src si preoccupa di risolvere le dipendenze e di installarci il programma che noi abbiamo digitato tramite la compilazione del sorgente.
Approposito della repository, il team di sviluppatori di Upi-src sta cercando delle persone volenterose per andare avanti nella costruzione della repository. email: info@upi-src.org

Inoltre upi risolve il classico problema dell’ RPM HELL dove esistono ancora seri problemi sulla risoluzione delle dipendenze e il richiamo delle stesse per esempio:

“A” dipende da “B” e “B” dipende da “C” ma “C” richiede una versione di “B” che non e’ compatibile con la versione “A” ,in questo caso upi risolve automaticamente tutte le problematiche inerenti alla incompatibilita’ delle diverse versioni delle dipendenze. Inoltre, se “B”, richiede “C”, e “C” richiede “B”, upi, non cadrà in un loop. UPI funziona con il 99% con diversi sistemi operativi:

-*BSD

-MAC-OSX (Primo gestore di pacchetti che supporta tale sistema operativo)

-SOLARIS

-HP-UX

-AIX

-*NIX

viene richiesta la sola installazione di perl (versione minima consigliata perl 4.0 e successive).

L’uso di Upi-src è semplicissimo e i suoi comandi sono alla portata di tutti quanti, i comandi saranno elencati qui sotto:

UPI-SRC INSTALL: Per installare il pacchetto menzionato e le sue dipendenze scaricando il sorgente dalla repository e compilandolo.

UPI-SRC UPDATE: Per aggiornare la lista dei programmi disponibili e inoltre controllare se ci sono eventuali aggiornamenti basta digitare il comando upi-src update che leggerà dalle repository la lista delle applicazioni installabili sulla macchina.

UPI-SRC SEARCH: Per cercare un programma da installare basta digitare il comando upi-src search nomeprogramma, questo comando provvederà a elencarvi tutti i programmi riguardanti la parola chiave digitata.

UPI-SRC INFO: Per ricevere informazioni su un programma basta digitare upi-src info nomeprogramma e questo comando provvederà invece a darvi maggiori informazioni riguardanti il programma in questione

UPI-SRC GET-INSTALL: Per installare un programma basta semplicemente dare il comando upi-src get-install nomeprogramma che appunto scaricherà il source code e inoltre installerà il programma compilando il sorgente e risolvendo eventuali dipendenze del programma.

UPI-SRC LOCAL-INSTALL: Se avete gia scaricato il source code in una qualunque parte dell’hard disk basta dare il comando upi-src local-install /cartella/del/programma/nomeprogramma oppure ed upi-src installerà il programma che volete installare anche se esso non è presente nelle repository.

UPI-SRC REMOVE: Per rimuovere un programma basta semplicemente dare il comando upi-src remove nomeprogramma ed upi rimuoverà ogni componente del programma dal vostro sistema.
Sono stati rilevati problemi su sistemi debian, questo è dovuto non al programma ma al sistema operativo.

Website: http://www.upi-src.org/
Download: http://www.upi-src.org/index.php?n=Main.Download
Email: info@upi-src.org

E un progetto veramente interessante, aiutiamolo a crescere!!!

Giugno 21, 2008

Finalmente! Wine 1.0!

Archiviato in: Informatica — Capt @ 1:47 pm

Wine 1.0!

Dopo quindici anni di sviluppo, il progetto Wine ha raggiunto la released prima versione stabile che ambisce a fornire un’implementazione alternativa della API Windows, in modo da rendere possibile l’utilizzo dei software scritti per Windows anche su sistemi operativi diversi da quelli Microsoft.
E bene si dopo 15 anni di unstable, è arrivata la prima stable, lo sviluppo parti nel 1993 per portare su Gnu/Linux le allora applicazioni a 16 bit scritte per Windows 3.1.
Wine 1.0 rappresenta più una base di partenza che un punto di arrivo. Gli sviluppatori sono già al lavoro per le versioni successive con due obiettivi principali: l’introduzione del supporto alle applicazioni a 64 bit, e il supporto alle applicazioni .NET.
La versione 1.0 di Wine, è disponile per il download sia come sorgente e sia come pacchetti binari precompilati.

Sito web del progetto Wine è il seguente: Clicca qui
Il sito web per i download è il seguente: Clicca qui

La steganografia…

Archiviato in: Informatica — Capt @ 1:24 pm

Steghide

Il termine steganografia deriva dal greco e significa scrittura nascosta, essa ci può permettere di occultare messaggi segreti all’interno di immagini e file multimediali, o meglio con file audio, video e immagini, senza che il contenuto di questi venga alterato.
Come software per la steganografia, io direi, di utilizzare Steghide, l’installazione può essere fatta con un gestore di pacchetti tipo sudo “sudo apt-get install steghide” o anche tramite sorgente.
E seguiamo il tutorial con “Nascondiamo un testo in un’immagine“; in questo caso specifico, consegneremo a Steghide un file di testo da nascondere all’interno di un’immagine JPEG.
In pratica il lavoro sarà in sostenza, il file di testo sarà compresso, cifrato e, infine, inserito all’interno dell’immagine, dopo di che vedremo come il messaggio segreto verrà protetto da una passphase, in modo tale che se anche l’immagine venisse identificata come steganografia richiederebbe comunque la parola chiave per poter leggere il contenuto nascosto al suo interno.
E dopo le parole è arrivato il momento della pratica, in primo luogo apriamo una shell/console ed eseguiamo il comando: steghide embed -ef segreto.txt -cf paesaggio.jpg -f monte.jpg, sostituiamo a segreto.txt il file di testo da nascondere, a paesaggio.jpg che sarebbe l’immagine di copertura ed a monte.jpg l’immagine finale con dentro il testo nascosto.
Ecco, dopo aver inserito il testo nell’immagine ci manca solo di proteggerlo con una chiave di accesso, quindi una passphrase, quindi la inseriamo e poi la riscriviamo per la conferma. Possiamo ottenere delle informazioni sull’immagine appena creato, monte.jpg, in questo modo: steghide info monte.jpg; e per otterene anche informazioni sui i dati nascosti premiamo “y” e inseriamo la passphrase scelta precedentemente.
Ora direi come effetturare l’estrazione dei messaggi, come prima cosa abbiamo bisogno della passphrase con questi sono stati protetti, quindi in shell/console eseguiamo: steghide extract -sf monte.jpg, digitando la passphrase troveremo il testo nella directory corrente.

Sito web del progetto Steghide è il seguente: Clicca qui
Il sito web per i download è il seguente: Clicca qui

Giugno 20, 2008

Tips & Tricks

Archiviato in: Informatica — Capt @ 12:51 pm

Tips & Tricks

Limitiamo l’accesso come utente root:
Nella maggior parte delle distribuzioni Gnu/Linux, per diventare super-utente (root) è sufficiente eseguire il comando su (switch user) seguito poi dalla password di amministratore di sistema, scelta dall’installazione del sistema operativo. Ma supponiamo di voler limitare l’accesso degli utenti del sistema all’account root, come si potrebbe fare? Non è nulla di cosi complicato, basta soltanto modificare il file /etc/pam.d/su con un editor di testo (vi,nano,ecc) mettendo la riga di testo seguente:

auth required pam_
wheels.so group=admin

In questo determinato modo, solo gli utente admin potranno accedere ai previleggi di super-utente di sistema, ovviamente tramite il comando su.

Vari rimedi contro la saturazione dei dischi:
A volte può accadere che una delle partizioni si riempa vertiginosamente, chi gestisci servizi di posta in modo scoretto o utilizza un server aMule personale sicuramente avrà provato sulla proprio pelle l’effetto della saturazione del disco o di una parte di esso.
Purtroppo quando succedono queste cose, la prima cosa che ci viene in mente è eliminare i file che sospettiamo che siano la causa del problema, però questo non è sempre un sufficiente per risolvere questa problematica, anzi in alcuni casi cancellando questi file possiamo rischiare di generare degli errori del file system, ma perchè accade ciò? Spesso questi file, in particolar modo quelli presenti in /var/log/…, vengono scritti e aggiornati in continuazione su parti del disco solitamento riservate ai processi che li hanno creati.
Cosi facendo non risolviamo il problema, e non facciamo altro che aumentare il problema, per risolvere l’incoveniente senza causare altri danni al sistema è necessario terminare il processo che ha generato i file interessati e, se questi risiedono in /var/log è molto semplice scoprirlo, per esempio, com il comando lsof nomefile.
Scoperto il processo madre possiamo terminarlo e riusciremo anche ad eliminare definitivamente il file che ha causato il problema della saturazione del disco o di una parti di esso.

Come verificare il contenuto di un archivio RAR:
A volte, quando scarichiamo immagini in formato ISO, NRG, IMG, CCD o BIN compresse con il software di archivazione RAR, riscontriamo, durante la frase di decompressione, alcuni problemi come i “CRC errors”. Quando si verifica il più delle volte accade perchè l’archivio in se risulta corrotto, probabilmente a causa di qualche errore di ricostruzione da parte di programmi come aMule o da qualche download manager, utilizzati per scaricare il file, ma per fortuna non tutti gli archivi sono corotti e inutilizzabili e quindi alcuni risultano recuperabili.
Per verificare l’integrità dei file eseguiamo unrar nel modo seguente: unrar e -kb immagine.rar, con questo comando estrarrà il contenuto dell’archivio e verificherà il contenuto dei singoli file presenti in esso.

Vuoi avere un planetario nel tuo desktop?!

Archiviato in: Informatica — Capt @ 1:25 am

Se si, cosa stai aspettando ad installare Stellarium il planetario Open Source, che ti permette di vedere o meglio osservare le stelle, i pianeti in 3D proprio come le vedreste a occhio nudo con un binocolo o un telescopio, basta soltanto impostare le coordinate e il gioco è fatto!
L’astronomia non è più quella di una volta, quando l’unico e il solo modo per poter osservare più da vicino i corpi celesti che popolano il cielo notturno e seguono i movimenti erano i telescopi o i binocoli, e cercare in un luogo tranquillo e lontano dalle luci della città.
Ora invece è possibile fare tutto questo seduto nella propria poltrona del proprio personal computer: ormai si può dire, decisamente, che i pc entrano prepotentemente anche nell’astronomia con dei programmi in grado di simulare in tempo reale il movimento della volta celeste, con immagini fotorealistiche, che nemmeno un professionista riuscirebbe a distinguere da quelle reali.
Sono software molto semplici e intituivi da utilizzare, che consentono di ottenre rapidamente informazioni dettagliate nei pianeti, stelle, galassie, satelliti e nebulose, senza dover consultare una mappe cartacee.

L’installazione di Stellarium è sempre la solita, per la compilazione di un sorgente, quindi:

bash-3.1$ tar xvf stellarium.tar.bz2
bash-3.1$ cd stellarium
bash-3.1$ ./configure
bash-3.1$ make
bash-3.1$ su
Password:
bash-3.1# make install

Se l’installazione viene eseguita come amministratore di sistema (root) il programma è disponibile per tutti gli utenti, quindi per avviarlo basta scrivere in una shell: stellarium. Il software non neccessità di alcuna configurazione, e quindi si può immediatamente cominciarlo ad usarlo.

La prima visione presenta una vista in tempo reale del cielo visibile realmente in quel dato momento, ma è pur sempre possibile spostarsi avanti o indietro nel tempo, anche con diverse velocità, per avere informazioni fisiche e calcolare esattamente la posizione dei corpi celesti, è possibile accedere ad un database, è anche possibile ricreare e simulare eventi come eclissi solari e lunari, e tanto altro.
Infine è possibile visualizzare le immagini ingrandite di più di settanta nebulose e la via lattea è riprodotta con una qualità straordinaria, stellarium prevede e permette la proiezione a 180° della volta celeste per ricreare e realizzare un vero e proprio planetario.

Giugno 19, 2008

Pendrive Supercorazzate!

Archiviato in: Informatica — Capt @ 7:29 pm

Il procedimento più semplice per trasferire documenti importanti da una macchina ad un’altra è conservali in una chiavetta USB, e mettiamo caso se la perdessimo? Senza le opportune precauzioni chiunque riuscirebbe a impadronirsi dei nostri documenti. Ma esiste un modo per risolvere questa problematica, è possibile creare un intero file system cifrato, e renderlo solamente accessibile tramite una password. Per raggiungere tale scopo, bisognerà utilizzare tre particolari servizi che ci mettono a disposizione i kernel della serie 2.6.x: le librerie di cifratura (Cryptographic API, saranno inoltre necessari i seguenti pacchetti ( tra parentesi i relativi comandi): mount (losetup), cryptsetup (crypsetup), dmsetup (dmsetup), dosfstools (mkdosfs), ricordo che tutte le operazioni vanno eseguite come utente root). In primo luogo bisogna scegliere un algoritmo di cifratura simmetrico, nel senso che deve utilizzare la stessa chiave sia per proteggere sia per decodificare i dati, a questo proposito si utilizzerà l’AES.
AES opera ripetutamente su blocchi di dati a lunghezza fissa e per questo appartiene alla classe degli algoritmi block cypher. Per gli algoritmi simmetrici una chiave lunga 128 bit garantisce un buon livello di sicurezza, nella realtà il proprietario dei dati sceglie e conserva una frase abbastanza lunga e quindi facilmente memorizzabile, quest’ultima viene poi trasformata tramite un apposito algoritmo di hash nella chiave vera e propria, di lunghezza definita e casualità appropiata. Nel nostro caso, come generatore di hash key, utilizzeremo il RIPEMD-160, creato nell’ambiente accademico e per ora privo di collisioni, un alternativa potrebbe essere SHA-256, che verrà utilizzato succesivamente per un’altra operazione di hashing.
RIPEMD-160
e SHA-256 sono versioni molto rubuste di RIPEMD e SHA-1, due algortimi che in seguito ad attacchi complessi hanno rilevato delle collisioni.
Come accennato precedentemente, i kernel della serie 2.6.x contengono tutti i principali algoritmi di cifratura, per utilizzarli bisogna verificare se sono presenti i relativi moduli, se non lo sono è neccessario compilarli, il controllo può essere eseguito con modprobe –l | grep aes e modprobe –l | grep sha.
Nel kernel esistono già dei componenti che utilizzano le librerie Crypto API sopra mensionate, l’infrastuttura dm-crypt è uno di questi.

Il suffisso dm sta per device mapper e rappresenta l’architettura base che consente la traduzione trasparente di un block device in un altro, tramite device-mapper vengono creati nella directory /dev/mapper dei device virtuali su cui si può leggere e scrivere analogamente a quanto avviene per quelli che rappresentano le periferiche reali. Per una completa e facile portabilità dei dati verrà utilizzata un’altra classe di pseudo device supportata dal kernel, che sono i loopback device o loop device, tramite questo procedimento è possibile trattare qualsiasi file regolare come un block device, come una partizione di un hd.

Grazie al programma losetup si associa un qualsiasi file a un device /dev/loopX sul quale in seguito si può creare un file system che può essere montato su una normale directory.

Adesso che abbiamo un pò analizzato i concetti di cifratura base e con il kernel configurato correttamente, possiamo occuparci degli script shell fsdown.sh e fsup.sh. Lo script fsup.sh serve a creare il file system, se sempre non esiste e a montarlo per renderlo accessibile sia in scrittura che in lettura.
Il FILESYSTEM_SIZE_MB è un parametro solamente valido nel caso di creazione ex novo del file system e contiene la grandezza desiderata del file in megabyte.
In CIPHER invece è contenuto il parametro passato al comando crysetup, che praticamente riassume l’algoritmo scelto per la cifratura del file system, la sottoscritta cbc sta per cipher block chaining e indica la modalità con cui verrà cifrato l’intero file.
Precedentemente abbiamo visto AES che opera sui dei blocchi di dati in chiaro di lunghezza fissa mentre i file possono avere una lunghezza qualunque, la modalità cbc prevede che ogni bloccho in chiaro venga preprocessato tramite l’operazione xor con il blocco cifrato precedentemente, prima di essere trattato da AES. Rimane il problema per il primo blocco, che non presenta un blocco precedente ma per in quale è previsto un initialization vector. Esso inizialmente era in chiaro ed ha inevitalbilmente esposto la procedura a nuovi watermark attack, a questa ulteriore problematica ha posto fine la modalità ESSIV, indicata nel nostro parametro e disponibile dalla versione del kernel 2.6.10
La varabiale HASH contiene invece la funzione crittografica scelta per l’hashing della frase segreta, invece il MOUNT_POINT indica la directory in cui si vuole montare il file system cifrato.
Lo script fsup.sh deve essere eseguito con un solo parametro che sarà il nome del file contenente il file system cifrato, e non solo, ma anche il nome del device mapper virtuale creato in /dev/mapper.

E’ quindi il momento di inserire i moduli del kernel di cui si è discusso prima, e che ci permettono il supporto a un loop device, delle Crypto API e dal device-mapper e dm-crypt. A questo punto il file viene associato a un loop device, dopo di che viene lanciato il programma di utilità cryptsetup che utilizzando i parametri illustrati sopra, crea un device virtuale sotto /dev/mapper con il nome scelto e lo associa al loop device.

In questo momento verrà chiesta la famosa password o meglio la frase di cifratura che rappresenterà la chiave di accesso al file system, una cosa abbastanza importante c’è la possibilità di creare un file system di qualsiasi tipo in vista di future esigenze di compatibilità con altri sistemi operativi, viene creato un file system di tipo FAT32.

Infine il file system cifrato deve essere montato sulla directory indicata all’inizio, come segue:

mount –t vfat /dev/mapper/${NAME} ${MOUNT_POINT}

Questo è un punto fondamentale in cui comprende la logica del comportamento dell’infrastuttura del device mapper; se l’operazione di mount non va a buon fine significa che la frase chiave che abbiamo scelto non era quella giusta. Infatti anche se abbiamo creato ugualmente il device sotto /dev/mapper tutte le operazioni su questo falliscono perché l’algoritmo, operando su quella frase chiave errata, non ci permette di riconoscere una struttura di dati validi:

if [ “$?” == “0” ]; then

echo “mounted under ${MOUNT_POINT}

elese

echo “bad passphrase”

cryptsetup remove ${NAME}

losetup -d /dev/loop0

modprobe –r dm-crypt

modprobe –r aes

fi

Per creare il file system cifrato, lo script va eseguito nel seguente modo: ./fsup.sh tempfile.

Il file cosi generato può essere trasferito sulla pendrive, sicuri che nessuno posso accedervi anche in caso di smarrimento della nostra chiavetta USB.
Per smontare il file system crifrato invece utilizzeremo lo script fsdown.sh, ed elimina le associazioni con i device virtuali e rimuove i moduli dal kernel rendendo impossibile un nuovo accesso ai dati senza la conoscenza della frase segreta, lo script va eseguito in questo modo: ./fsdown tempfile.

Come ultima cosa, è possibile una portabilità e una compatibilità con un sistema diverso da Gnu/Linux, per esempio, Windows.
In Windows possiamo utilizzare un software open source denominato FreeOTEE con il quale è possibile montare e usare il file system cifrato.

Questo è lo script fsup.sh:

#!/bin/bash

# Inserisce i moduli necessari
# crea, se non gia’ esistente, il file indicato come primo argomento,
# lo associa a un loop device, poi lo associa a un filesystem cifrato
# e lo monta sotto la directory MOUNT_POINT

# Parametri variabili

FILESYSTEM_SIZE_MB=64
CIPHER=aes-cbc-essiv:sha256
HASH=ripemd160
MOUNT_POINT=/mnt

if [ "$#" != "1" ]; then
echo “Usage: fsup.sh file_name”
exit
fi

NAME=${1}

test -f ${NAME}
if [ "$?" == "1" ]; then
IS_A_NEW_FILE=”TRUE”
fi

modprobe loop
modprobe aes
modprobe sha256
modprobe dm-crypt

if [ "${IS_A_NEW_FILE}" == "TRUE" ]; then
dd if=/dev/urandom of=${NAME} bs=1M count=${FILESYSTEM_SIZE_MB}
fi

losetup /dev/loop0 ${NAME}

if [ "${IS_A_NEW_FILE}" == "TRUE" ]; then
cryptsetup –cipher ${CIPHER} –hash ${HASH} –verify-passphrase create ${NAME} /dev/loop0
mkdosfs /dev/mapper/${1}
else
cryptsetup –cipher ${CIPHER} –hash ${HASH} create ${NAME} /dev/loop0
fi

cryptsetup status ${NAME}

mount -t vfat /dev/mapper/${NAME} ${MOUNT_POINT}

if [ "$?" == "0" ]; then
echo “mounted under ${MOUNT_POINT}”
else
echo “bad passphrase”
cryptsetup remove ${NAME}
losetup -d /dev/loop0
modprobe -r dm-crypt
modprobe -r aes
fi

Questo è lo script fsdown.sh:

#!/bin/bash

# Smonta il file cifrato montato sotto la directory MOUNT_POINT
# rimuove il device indicato nel primo argomento sotto /dev/mapper
# rimuove l’associazione con il loop device
# rimuove i moduli

# Parametri variabili
MOUNT_POINT=/mnt

if [ "$#" != "1" ]; then
echo “Usage: fsdown.sh file_name”
exit
fi

NAME=${1}
umount ${MOUNT_POINT}
cryptsetup remove ${NAME}
losetup -d /dev/loop0
modprobe -r dm-crypt
modprobe -r sha256
modprobe -r aes
modprobe -r loop

Articoli precedenti »

Blog su WordPress.com.