Archivi tag: eeepc

iCTF 2008

Venerdì si è tenuta l’annuale gara di hacking informatico organizzata dal Professor Vigna presso l’università di Santa Barbara, in California. Si tratta dell’iCTF, che si rifà al CTF (Capture The Flag) del più celebre DEFCON.

Noi del Politecnico abbiamo partecipato e ci siamo divertiti un mondo (flippare per credere) 😀

Ne parlo a qualche giorno di distanza perchè ho voglia di condividere con i miei lettori un pizzico di quella che è stata questa esperienza, sperando che magari qualche giovane possessore di Eee PC appena iniziato al mondo GNU/Linux possa trarne spunto.

Nello scorso mese mi sono dedicato alla preparazione della gara trascurando un po’ tutto il resto.. sulla base di quello che ho potuto apprendere in rete e dai veterani. Il mio compito, nel team Java, era di conoscere bene i web service e gli application server (Tomcat in particolare). Quest’anno Vigna e i suoi collaboratori hanno stupito tutti cambiando completamente il gioco, e di Tomcat nessuna traccia. Un mese buttato al vento? Non proprio..ma di certo non ho potuto aiutare molto la Tower Of Hanoi (ebbene sì, la squadra del Poli si chiama così!) nel raccimolare punti. In compenso lo smanettamento sulla decompilazione del bytecode Java con Jad è stata utile. Una delle sfide più semplici (l’unica che riguardasse Java, purtroppo) richiedeva di scoprire il tempo esatto di detonazione di una carica di dinamite (simulata da un eseguibile fornito come .jar). La soluzione è stata prontamente trovata scrivendo con una mano sulla tastiera ed usando l’altra per mangiare la mega pizza kebab arrivata proprio in quel momento.. 😀

Degne di nota alcune prove proposte da Santa Barbara:

Trovare un video nascosto (codificato in base64 dopo aver complementato (flippato :D) ogni bit) in un altro video di una puntata dei pokemon, nel video nascosto c’era poi un suono di tasti del cellulare con cui ricostruire la sequenza di tasti che corrispondeva al codice da scoprire..

Un programma in C che conteneva, steganografato in un alfabeto ternario composto da spazi, tabulazioni e invio, un secondo programma. Il secondo programma poteva essere estratto dal primo passando il sorgente come argomento al primo programma compilato. Col secondo programma si poteva poi agilmente ricavare la soluzione del quesito..

Avete capito il livello di pazzia, fantasia e passione che c’è in questa cosa?

Spero di avere presto il materiale fotografico della gara.. per adesso ho solo questa imperdibile foto di me vicino alla pozza di Padre Peppe che ha inaugurato il pavimento della sala seminari del Dipartimento di Elettronica e Informazione alle dieci del mattino…

pp2

Installazione di Arch Linux su Eee PC 701

Come promesso, libero da esami e rogne varie, torno a parlare dell’installazione di Arch Linux su Eee PC 701. Per i modelli 901 e 1000 ci sono alcune differenze – fuori dall’ambito di questo post – che sono trattate qui.

Per coloro che non avessero problemi con l’inglese, il mio consiglio è di tenere sempre presente e consultare questa guida. E’ la pagina del wiki ufficiale di Arch Linux che tratta l’installazione su Eee PC.

Come avevo anticipato qualche tempo fa, la creazione della chiavetta per l’installazione è diventata più semplice, per cui non seguite la guida che avevo iniziato a scrivere precedentemente. Si suppone che abbiate a disposizione una connessione internet decente con cavo ethernet. In caso abbiate solo il wifi, l’installazione è comunque possibile ma richiederebbe di premunirsi di tutti i pacchetti necessari e tenerli da parte, installarli manualmente in un secondo momento.. insomma se proprio siete degli irriducibili dello smanettamento scrivetemi nei commenti e vi darò qualche dritta 🙂

Ciò detto, possiamo incominciare.

Premessa

In rete si parla tanto della breve durata della vita degli SSD, l’hard disk a stato solido che monta l’Eee PC e che non è sostituibile in caso di rottura. Per questo proliferano consigli su come montare i file system in modo da massimizzare la vita del disco. Io mi permetto di dissociarmi parzialmente da queste voci, perchè da quanto ho potuto sperimentare l’usabilità di un pc sottoposto a tutte quelle “paranoie” viene davvero a decrescere sensibilmente.

Tanto per capirci, è paranoico tenere i log di sistema in ram e perderli ad ogni riavvio. Ed è pazzesco usare un file system senza journaling, perchè se il sistema crasha o si scarica mentre si è in batteria o necessita di un controllo del disco.. beh.. ce l’avete il rosario a portata di mano?

Io consiglio di accettare l’idea che l’Eee PC, o meglio il suo disco fisso, non debba sopravvivervi e quindi usatelo pure con un file system journaled e risparmierete sudori freddi!

Creazione della chiavetta di installazione

Assumo che chi legge non sia proprio un totale novellino, anche perchè altrimenti durante l’installazione di Arch mi maledirà annullando il tutto e installando ubuntu notebook remix 🙂

Scaricate l’ultima immagine della chiavetta di installazione da qui. Dovete prendere il file di installazione di Arch CORE con estensione .img. Ora inserite una chiavetta su cui non ci sia niente da salvare, almeno da 512 MB.

A chiavetta smontata, date questo comando:

dd if=/path/file/img/sul/pc of=/dev/della/chiavetta/senza/specificare/partizione

La chiavetta è pronta! Consiglio di creare e tenere da parte da subito un file che poi sarà quello di configurazione del server grafico, scorrendo questa guida lo trovate linkato più in basso.

Installazione di Arch Linux

Qui non ci sono scuse che tengano, una guida in italiano all’installazione esiste già e la trovate qui.

Nella scelta dei pacchetti da installare, abbiate cura di selezionare “atl2”: sono i driver della scheda ethernet dell’Eee PC. Se cannate questo passo, sarete offline a giocare con la shell di login..

Al momento di partizionare il disco, abbiate cura di non creare una partizione di swap sul disco SSD (piuttosto compratevi un giga di ram o due se siete dei pazzi maniaci che usano Eee PC per progetti su netbeans e glassfish come qualcuno che conosco ^_^). Usate l’opzione “noatime”! Questo è il dump del mio /etc/fstab:

#
# /etc/fstab: static file system information
#
# <file system> <dir> <type> <options> <dump> <pass>
none /dev/pts devpts defaults 0 0
none /dev/shm tmpfs defaults 0 0
UUID=1749e793-bbe1-44a1-840d-e91633994b28 / ext3 noatime 0 0

La stringa UUID è generata automaticamente per individuare la partizione cui fa riferimento. E’ un metodo relativamente nuovo per riferirsi alle partizioni che si rivela particolarmente utile nel momento in cui il vostro /dev/sdb al riavvio si chiami /dev/sdc perchè nel frattempo avete collegato un disco o una chiavetta su usb..

E’ quindi cosa buona e giusta che anche nel file del menu di GRUB si faccia riferimento alla partizione root in termini del suo UUID.

Altra nota. In /etc/rc.conf bisogna blacklistare un modulo che si chiama “ath5k” altrimenti il wireless non funzionerà correttamente. Questo è necessario da agosto circa, e si spera che con i prossimi rilasci del kernel non sia più necessario. Qui il dump della parte dei moduli del mio rc.conf

MOD_AUTOLOAD=”no”
#MOD_BLACKLIST=() #deprecated
MODULES=(ath_pci wlan_wep wlan_tkip wlan_ccmp !ath5k)

Non c’è altro da sapere di vitale per un’installazione felice (mi raccomando solo di usare un mirror per pacman geograficamente vicino.. è un dottore in ingegneria delle telecomunicazioni che ve lo chiede, fatelo per pietà :D)

Nel file /etc/pacman.conf potete aggiungere questo repository fatto apposta da Dan McGee, il celebre utente toofishes, oppure (consigliato) quello che trovate più sotto:

[eee]
Server = http://code.toofishes.net/packages/eee

A questo punto un bel “pacman -Suy” e poi “pacman -S eee” per  aggiornarsi ed installare il tutto.

Attualmente è disponibile un repository che include tra le altre cose un kernel derivato da quello di McGee che ha già il supporto per l’overclock! Lo trovate qui:

[edgy]

Server=http://www.ihku.biz/arch/edgy

Il kernel che trovate in [edgy] SOSTITUISCE e quindi va in conflitto con il kernel di [eee]. Se volete l’overclock senza sbattimenti, è la scelta migliore. Dopo aver aggiunto il repo edgy in /etc/pacman.conf, un bel pacman -Sy kernel-eee è quello che ci vuole 🙂

In /boot/grub/menu.lst si dovrà aggiungere questo:

title Arch Linux Eee
root (hd0,0)
kernel /boot/vmlinuzeee root=/dev/sda1 ro quiet

Consiglio anche di installare con pacman -U il pacchetto per acpi che trovate qui. E’ richiesto di aggiungere in rc.conf un demone “eee”.

Suppongo sappiate come funziona il file /boot/grub/menu.lst di GRUB, in ogni caso vi dumpo  la sezione da aggiungere per usare il kernel di toofishes:

title Arch Linux Eee
root (hd0,0)
kernel /boot/vmlinuzeee root=/dev/sda1 ro quiet

A questo punto il sistema necessita solo di installare il server grafico e altre cosuccie inutili 😉

pacman -S xorg xf86-video-intel synaptics

Il file di configurazione del server grafico è bello che pronto, potete incollarlo in /etc/X11/xorg.conf da qui. Abbiate cura di cambiare la parte sul layout di tastiera per averlo in italiano!

Io uso un file xorg.conf leggermente diverso, perchè come forse qualcuno ha notato ho un display esterno da 19 pollici collegato ad Eee PC. In caso abbiate esigenze simili (ve lo auguro) scrivete pure un commento.

Non starò qui ad annoiare nessuno con la creazione dell’utente normale ed altre minuzie (installate sudo!), mi limito a suggerire di installare qualche software che io ritengo indispensabile:

wicd – ottimo gestione della rete wireless

opera – browser che vanta molte qualità tra le quali uno zoom formidabile delle pagine.

dbus e hal – ormai servono quasi a tutti i programmi

Ultimissima cosa, l’elenco dei demoni del mio rc.conf, ad imperitura memoria:

DAEMONS=(syslog-ng hal netfs crond fam eee autofs cpufreqd wicd kdm3)

Grossomodo è tutto quello che volevo dirvi, per aggiornamenti, aggiunte, commenti, insulti, a presto 🙂

Sante