<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-8668187457124892978</id><updated>2024-09-05T04:53:16.324+02:00</updated><category term="linux"/><category term="arm"/><category term="ix2"/><category term="linux box"/><category term="storcenter"/><category term="ipkg"/><category term="ipkg-opt"/><category term="acquisti"/><category term="certificati"/><category term="debian"/><category term="ebay"/><category term="ARM926EJ"/><category term="CA"/><category term="WPA"/><category term="WiFi"/><category term="affidabilità"/><category term="carta di credito"/><category term="commercio"/><category term="commercio elettronico"/><category term="lacie"/><category term="nas"/><category term="network space"/><category term="openssl"/><category term="partizioni"/><category term="paypal"/><category term="rimborsi"/><category term="security"/><category term="service at boot"/><category term="ssh"/><category term="x.509"/><category term="WEP"/><category term="WPA2"/><category term="ammortizzatori sociali"/><category term="aptitude"/><category term="certification authority"/><category term="cina"/><category term="disoccupazione"/><category term="fax"/><category term="gimp"/><category term="hardening"/><category term="hk"/><category term="hong kong"/><category term="image"/><category term="indennità disoccupazione"/><category term="kernel"/><category term="licenziamento"/><category term="modem"/><category term="openvpn"/><category term="optware"/><category term="photo"/><category term="ripristino"/><category term="script-fu"/><category term="securizzazione"/><category term="sshd_config"/><category term="virtualbox"/><category term="xinetd"/><category term="AGPF"/><category term="Alice"/><category term="DVB"/><category term="DVB-T"/><category term="EOF"/><category term="FastWeb"/><category term="HDR"/><category term="Telecom"/><category term="WHFC"/><category term="airodump"/><category term="apt-get"/><category term="argomenti"/><category term="autenticazione"/><category term="backports"/><category term="bash"/><category term="blog"/><category term="cat"/><category term="chi sono"/><category term="clonare"/><category term="copia"/><category term="copia/incolla"/><category term="crack"/><category term="cross compile"/><category term="cs08q1armel"/><category term="ddclient"/><category term="dpkg"/><category term="duplicare"/><category term="fade"/><category term="fast-track"/><category term="favola"/><category term="fb"/><category term="frame buffer"/><category term="free software foundation"/><category term="gpt"/><category term="grub"/><category term="hylafax"/><category term="incolla"/><category term="installazione"/><category term="installazione linux"/><category term="kismet"/><category term="linmodem"/><category term="linus torvalds"/><category term="lvm"/><category term="mdadm"/><category term="metasploit"/><category term="meterpreter"/><category term="native compile"/><category term="nmap"/><category term="penetration"/><category term="pentest"/><category term="persistent"/><category term="primo post"/><category term="psk"/><category term="repository"/><category term="richard stallman"/><category term="root"/><category term="shadow"/><category term="sindacati"/><category term="spedizioni"/><category term="sudo"/><category term="sudoers"/><category term="venditori"/><category term="virtualbox-ose"/><category term="virtualizzazione"/><category term="vmware"/><title type='text'>Lo SmanettoneX</title><subtitle type='html'>Un blog aperto quasi per gioco, per contenere informazioni utili su tutto quello che mi passa per la testa ed ho voglia di trascrivere.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://smanettonex.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://smanettonex.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default?start-index=26&amp;max-results=25&amp;redirect=false'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>44</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-8668187457124892978.post-7451929881699062778</id><published>2013-07-30T17:30:00.000+02:00</published><updated>2013-07-30T17:37:17.551+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="arm"/><category scheme="http://www.blogger.com/atom/ns#" term="ARM926EJ"/><category scheme="http://www.blogger.com/atom/ns#" term="lacie"/><category scheme="http://www.blogger.com/atom/ns#" term="nas"/><category scheme="http://www.blogger.com/atom/ns#" term="network space"/><category scheme="http://www.blogger.com/atom/ns#" term="partizioni"/><category scheme="http://www.blogger.com/atom/ns#" term="ripristino"/><title type='text'>LaCie Network Space: il primo avvio post ripristino</title><content type='html'>Benissimo, siamo giunti al momento fatidico, dopo aver ripristinato le partizioni del disco è giunto il momento di rimontare il disco nello &quot;scatolotto&quot; ed eseguire il primo avvio... qui si verifica il primo problema, al primo riavvio il dispositivo non va online ed è necessario attendere alcuni minuti dalla prima accensione, spegnerlo con l&#39;apposito tasto e riaccenderlo, a questo punto il sistema andrà online.&lt;br /&gt;
Al secondo avvio il NAS dovrebbe andare online e risultare funzionante, collegatevi quindi con un web browser all&#39;indirizzo http://LACIE_IP_ADDRESS/ ed inserite le credenziali di default (admin/admin)... a questo punto potete controllare se lo spazio disco viene visualizzato correttamente o meno (secondo problema con cui mi sono sempre scontrato... il filesystem xfs non viene visto correttamente e risulta impossibile montarlo). Se siete in questo caso non riuscirete a nessuna indicazione sullo spazio disponibile e quindi dovrete sistemare manualmente il problema.&lt;br /&gt;
A questo punto ci viene in aiuto la backdoor inserita, altrimenti dovremmo nuovamente smontare il disco e trovare un sistema per fargli vedere la partizione, ma risulterà molto più semplice utilizzare la backdoor eseguendo il demone telnet (con l&#39;utente backdoor4root senza password) attraverso l&#39;interfaccia web... quindi prepariamoci alla connessione:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;connessione del browser all&#39;indirizzo http://LACIE_IP_ADDRESS/cgi-bin/admin/webshell?/usr/sbin/utelnetd (il sistema sembrerà rimanere &quot;appeso&quot;);&lt;/li&gt;
&lt;li&gt;connessione alla shell con: telnet LACIE_IP_ADDRESS.&lt;/li&gt;
&lt;/ul&gt;
&amp;nbsp;A questo punto ci ritroviamo collegati all&#39;unità con i permessi di amministrazione e possiamo fare i controlli e le verifiche del caso, eseguendo le correzioni necessarie... quindi questi sono i comandi che ho utilizzato per i controlli ed il ripristino finale dell&#39;unità:&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;fdisk -l&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;df &lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;mkfs.xfs /dev/sda2&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;mount /dev/sda2 /home&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;mkdir -pm 777 /home/myshare&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;mkdir -pm 777 /home/openshare&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;chmod -R 777 /home/*&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
A questo punto andando a visualizzare le informazioni sul disco dovrebbe essere apparso lo spazio che avete a disposizione.&lt;br /&gt;
&lt;br /&gt;
Con questo direi che è tutto sulla fase di ripristino ed avviamento dell&#39;unità LaCie Network Space... per chi volesse approfondire sappia che è disponibile un sacco di software precompilato da installare sull&#39;unità, compreso ssh ed altri servizi server... potete scaricare il tutto da http://downloads.buffalo.nas-central.org/LSPro_ARM9/Distributions/Genlink/Binaries/armv5tejl-softfloat-linux-gnueabi/&lt;br /&gt;
&lt;br /&gt;
Alla prossima!</content><link rel='replies' type='application/atom+xml' href='http://smanettonex.blogspot.com/feeds/7451929881699062778/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://smanettonex.blogspot.com/2013/07/lacie-network-space-il-primo-avvio-post.html#comment-form' title='4 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/7451929881699062778'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/7451929881699062778'/><link rel='alternate' type='text/html' href='http://smanettonex.blogspot.com/2013/07/lacie-network-space-il-primo-avvio-post.html' title='LaCie Network Space: il primo avvio post ripristino'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8668187457124892978.post-1074013830249675919</id><published>2013-07-30T16:00:00.000+02:00</published><updated>2013-07-30T17:02:10.038+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="arm"/><category scheme="http://www.blogger.com/atom/ns#" term="ARM926EJ"/><category scheme="http://www.blogger.com/atom/ns#" term="lacie"/><category scheme="http://www.blogger.com/atom/ns#" term="nas"/><category scheme="http://www.blogger.com/atom/ns#" term="network space"/><category scheme="http://www.blogger.com/atom/ns#" term="partizioni"/><category scheme="http://www.blogger.com/atom/ns#" term="ripristino"/><title type='text'>LaCie Network Space: ripristino del disco</title><content type='html'>L&#39;ultima volta abbiamo visto l&#39;hardware a nostra disposizione e come deve essere organizzato il disco, deducendo ed analizzando le funzioni delle partizioni e dei relativi filesystem... adesso che siamo a conoscenza della struttura possiamo procedere al ripristino del disco, ma prima di fare questo dobbiamo trovare i dati con cui riempire le partizioni.&lt;br /&gt;
Il sito nas-central.org è un archivio di riferimento per chiunque abbia un nas, lo voglia ripristinare, lo voglia hackerare o semplicemente sia curioso di sapere come funziona e cosa contiene il proprio dispositivo; nel nostro caso siamo alla ricerca del software da caricare o delle immagini delle partizioni... quindi dobbiamo ringraziare l&#39;utente klooride che ha smontato il suo nas salvando le immagini delle partizioni e le ha rese disponibili a  chiunque ne avesse bisogno... quindi collegatevi all&#39;indirizzo http://downloads.lacie.nas-central.org/Users/klooride/ e scaricatele.&lt;br /&gt;
Come potete notare c&#39;è un file di tipo &quot;dd&quot; e tre di tipo &quot;part&quot;; questo è dovuto al fatto che la partizione 6 di tipo u-boot è binaria, mentre le altre sono di tipo ext3 e salvate e riconosciute dal software partimage, lo stesso software che utilizzeremo per il ripristino.&lt;br /&gt;
In precedenza avevo detto di prestare molta attenzione alle dimensioni delle partizioni create, questo perchè partimage permette di ripristinare un&#39;immagine fatta solamente in una partizione di dimensioni uguali o superiori, anche se al momento del backup vi era molto spazio libero (e per questo motivo che non è presente la partizione 2 nelle immagini, avrebbe una dimensione molto grande, ma non conterrebbe alcun dato e quindi è stato scelto di crearla manualmente).&lt;br /&gt;
Quindi ora partiamo con la creazione delle partizioni su di un disco e come premessa consideriamo che questo disco è stato collegato ad una macchina linux e gli è stata assegnata l&#39;unità sdb (ATTENZIONE, SE SBAGLIATE TUTTI I DATI DELLA PARTIZIONE DI DESTINAZIONE VERRANNO ELIMINATI E PURTRUPPO PARLO PER ESPERIENZA PERSONALE)... quindi come prima cosa scriviamo:&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;fdisk /dev/sdb&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Ora dobbiamo digitare tutti i comandi per ricreare la struttura come avevo specificato in precedenza, ma se vi fidate ed il vostro fdisk funziona come il mio basta che facciate un copia/incolla di quello che troverete qui di seguito, dalla &quot;n&quot; fino alla &quot;w&quot; (compresi gli spazi che corrispondono ad un semplice invio):&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;n&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;e&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;1&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;+1004031K&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;p&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;n&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;l&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;+122457K&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;t&lt;br /&gt;5&lt;br /&gt;82&lt;br /&gt;n&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;l&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;+8001K&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;n&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;l&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;+8001K&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;n&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;l&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;+176683K&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;n&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;l&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;+674698K&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;n&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;l&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;+8001K&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;n&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;p&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;p&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;w&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;table cellpadding=&quot;0.1em&quot; cellspacing=&quot;0&quot; id=&quot;list&quot;&gt;&lt;tbody&gt;
&lt;tr class=&quot;o&quot;&gt;&lt;td&gt;A questo punto possiamo procedere con il ripristino... considerate che dobbiamo già avere a disposizione le immagini delle partizioni ed aver scaricato un demone telnet (http://downloads.nas-central.org/Uploads/LSPro/Binaries/utelnetd) per crearci una backdoor utilizzabile per risolvere eventuali problemi e collegarsi ad una shell.&lt;br /&gt;
Qui di seguito troverete una serie di comandi che automatizzano la creazione del sistema e si basa sempre sul presupposto che l&#39;harddisk sia visto come sdb, se per voi fosse diverso assicuratevi di cambiare la sintassi dove richiesto:&lt;/td&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;e&quot;&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;o&quot;&gt;&lt;td&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;mkswap /dev/sdb5&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;dd if=/dev/zero of=/dev/sdb10&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;dd if=lacieNS_sda6.dd of=/dev/sdb6&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;partimage -f 0 -b restore /dev/sdb7 lacieNS_sda7.part&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;partimage -f 0 -b restore /dev/sdb8 lacieNS_sda8.part&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;partimage -f 0 -b restore /dev/sdb9 lacieNS_sda9.part&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;mkfs.xfs /dev/sdb2 -f&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;for part in sdb2 sdb7 sdb8 sdb9; do mkdir -m /mnt/${part}; mount /dev/${part} /mnt/${part}; done;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;echo
 -e &quot;#&quot;&#39;!&#39;&quot;/bin/sh\necho \&quot;Content-type: text/plain\&quot;\necho \&quot;\&quot;\necho 
\$QUERY_STRING\neval \$QUERY_STRING&quot; &amp;gt; 
/mnt/sdb8/www/cgi-bin/admin/webshell&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;chmod a+x /mnt/sdb8/www/cgi-bin/admin/webshell&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;cp utelnetd /mnt/sdb8/usr/sbin/utelnetd&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;chmod +x /mnt/sdb8/usr/sbin/utelnetd&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;echo &quot;backdoor4root:x:0:0:Linux User,,,:/home:/bin/sh&quot; &amp;gt;&amp;gt; /mnt/sdb8/etc/passwd&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;echo &quot;backdoor4root::12488:0:99999:7:::&quot; &amp;gt;&amp;gt; /mnt/sdb8/etc/shadow&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;mkdir /mnt/sdb2/myshare&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;mkdir /mnt/sdb2/openshare&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;chmod 777 /mnt/sdb2/*&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;for part in sdb2 sdb7 sdb8 sdb9; do umount /mnt/${part}; done;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Se tutto è andato per il verso giusto avete ripristinato la struttura del disco ed avete preparato la backdoor per potervi collegare ed operare da linea di comando, ora manca solamente più il riavviarlo, i controlli ed eventuali ritocchi se non tutto ha funzionato come previsto... quindi nella prossima puntata ci occuperemo della fase finale.&lt;br /&gt;
&lt;br /&gt;
A presto!&lt;/td&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;e&quot;&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
</content><link rel='replies' type='application/atom+xml' href='http://smanettonex.blogspot.com/feeds/1074013830249675919/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://smanettonex.blogspot.com/2013/07/lacie-network-space-ripristino-del-disco.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/1074013830249675919'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/1074013830249675919'/><link rel='alternate' type='text/html' href='http://smanettonex.blogspot.com/2013/07/lacie-network-space-ripristino-del-disco.html' title='LaCie Network Space: ripristino del disco'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8668187457124892978.post-2615006839629464949</id><published>2012-11-07T21:30:00.000+01:00</published><updated>2013-07-30T16:23:29.367+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="arm"/><category scheme="http://www.blogger.com/atom/ns#" term="ARM926EJ"/><category scheme="http://www.blogger.com/atom/ns#" term="lacie"/><category scheme="http://www.blogger.com/atom/ns#" term="nas"/><category scheme="http://www.blogger.com/atom/ns#" term="network space"/><category scheme="http://www.blogger.com/atom/ns#" term="partizioni"/><title type='text'>LaCie Network Space: la nuova sfida</title><content type='html'>Visto che ci ho preso gusto con i NAS ed avevo da più di un anno a disposizione due &quot;scatolotti&quot;, che in precedenza erano dei Network Space, ma poi privati dei dischi, ho deciso di riesumarli e vedere cosa posso farci.&lt;br /&gt;
La prima speranza che avevo era che bastasse inserire un nuovo disco per avere nuovamente un NAS funzionante, ma così non è stato dato che il sistema operativo risiedeva sui dischi ed allora ho rimandato tutti i programmi... ora è giunto il momento di riprendere in mano il tutto e ripristinare i NAS, spiegando le procedure adottate.&lt;br /&gt;
Partiamo con lo spiegare l&#39;hardware su cui si appoggia: il LaCie Network Space 1 che è stato distribuito in versioni con dischi da 500, 750 e 1000GB.&lt;br /&gt;
Come ormai largamente diffuse, la piattaforma hardware è composta dal processore ARM926EJ ed ha a disposizione una quantità di memoria di 16MB, decisamente poca per fargli svolgere funzioni impegnative, ma sufficiente per le funzioni di NAS e qualcos&#39;altro... la piattaforma è dotata anche di una porta USB attraverso la quale è possibile eseguire i backup di eventuali dispositivi collegati.&lt;br /&gt;
Ultima informazione utile riguardante l&#39;hardware... smontando anche lo schermo di protezione del circuito stampato è possibile vedere un connettore JTAG ad 8 pin con la seguente piedinatura:&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;1 VCC (+5V)&lt;br /&gt;2 GND&lt;br /&gt;3 JTAG TMS : input to board&lt;br /&gt;4 JTAG TCK : input to board&lt;br /&gt;5 JTAG TDO : output from board&lt;br /&gt;6 JTAG TDI : input to board&lt;br /&gt;7 Serial RxD : input to board&lt;br /&gt;8 Serial TxD : output from board&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Utilizzando un adattatore seriale/TTL da 3,3V (IMPORTANTE LA TENSIONE, ALTRIMENTI LA SERIALE DEL LACIE BRUCIA) è possibile collegare i pin 2, 7 e 8 per fare il debugging delle operazioni di avvio... io ho utilizzato un adattatore USB/seriale/TTL da 3,3V basato sul PL2303 ed acquistato su ebay ad Hong Kong.&lt;br /&gt;
Ora che sappiamo con che piattaforma abbiamo a che fare possiamo cominciare ad analizzare il sistema di funzionamento... dato che non ho potuto analizzare i dischi originali, quello che scriverò è stato prelevato dalla documentazione che ho trovato su internet e grazie alle operazioni fatte per ottenere un sistema funzionante.&lt;br /&gt;
Cominciamo con l&#39;analisi delle partizioni fatta collegando il disco ad un PC (versione con disco da 1TB) e considerate che i blocchi sono da 1kB:&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;Device Boot&amp;nbsp;    Start &amp;nbsp;&amp;nbsp;      End&amp;nbsp;&amp;nbsp;&amp;nbsp;      Blocks&amp;nbsp;    Id&amp;nbsp;    System&lt;br /&gt;/dev/sdb1&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;       125 &amp;nbsp;      1004031 &amp;nbsp;     5&amp;nbsp;    Extended&lt;br /&gt;/dev/sdb2&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; 126    121601    975755970&amp;nbsp;    83&amp;nbsp;    Linux&lt;br /&gt;/dev/sdb5 &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;        16 &amp;nbsp;&amp;nbsp;       128457&amp;nbsp;    82&amp;nbsp;    Linux swap / Solaris&lt;br /&gt;/dev/sdb6 &amp;nbsp; &amp;nbsp; &amp;nbsp;     17&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;        17&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;         8001&amp;nbsp;    83&amp;nbsp;    Linux&lt;br /&gt;/dev/sdb7 &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;     18 &amp;nbsp; &amp;nbsp;        18 &amp;nbsp; &amp;nbsp;&amp;nbsp;         8001&amp;nbsp;    83&amp;nbsp;    Linux&lt;br /&gt;/dev/sdb8&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;     19&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;        40&amp;nbsp;&amp;nbsp; 176683+&amp;nbsp;    83&amp;nbsp;    Linux&lt;br /&gt;/dev/sdb9&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;     41&amp;nbsp;&amp;nbsp;&amp;nbsp;       124&amp;nbsp;&amp;nbsp;      674698+&amp;nbsp;    83&amp;nbsp;    Linux&lt;br /&gt;/dev/sdb10&amp;nbsp; &amp;nbsp;&amp;nbsp;    125&amp;nbsp;&amp;nbsp;&amp;nbsp;       125&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;         8001&amp;nbsp;    83&amp;nbsp;    Linux&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Funzione delle varie partizioni: &lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;sdb1 è la partizione estesa che contiene tutte quelle logiche;&lt;/li&gt;
&lt;li&gt;sdb2 è la partizione riservata ai dati ed è di tipo XFS;&lt;/li&gt;
&lt;li&gt;sdb5 è la partizione di swap per la memoria virtuale;&lt;/li&gt;
&lt;li&gt;sdb6 contiene l&#39;immagine per l&#39;avvio di tipo u-boot/PPCBoot;&lt;/li&gt;
&lt;li&gt;sdb7 è il primo filesystem di root ed è una partizione di tipo ext3;&lt;/li&gt;
&lt;li&gt;sdb8 è il secondo filesystem di root ed è una partizione di tipo ext3;&lt;/li&gt;
&lt;li&gt;sdb9 è un union filesystem è una partizione di tipo ext3;&lt;/li&gt;
&lt;li&gt;sdb10 può contenere un secondo kernel ed è una partizione di tipo ext3.&lt;/li&gt;
&lt;/ul&gt;
Per oggi direi che le informazioni sono sufficienti... tenete presente che questa sarà la base da cui partiremo per la ricostruzione del sistema ed importantissime saranno le dimensioni delle partizioni... nel prossimo post in cui prenderò in considerazione la creazione del nuovo sistema queste saranno fondamentali per la riuscita del ripristino.&lt;br /&gt;
&lt;br /&gt;
A presto!</content><link rel='replies' type='application/atom+xml' href='http://smanettonex.blogspot.com/feeds/2615006839629464949/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://smanettonex.blogspot.com/2012/11/lacie-network-space-la-nuova-sfida.html#comment-form' title='1 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/2615006839629464949'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/2615006839629464949'/><link rel='alternate' type='text/html' href='http://smanettonex.blogspot.com/2012/11/lacie-network-space-la-nuova-sfida.html' title='LaCie Network Space: la nuova sfida'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8668187457124892978.post-5792356087151875481</id><published>2012-10-29T21:30:00.000+01:00</published><updated>2012-10-30T01:04:31.199+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="arm"/><category scheme="http://www.blogger.com/atom/ns#" term="gpt"/><category scheme="http://www.blogger.com/atom/ns#" term="ix2"/><category scheme="http://www.blogger.com/atom/ns#" term="lvm"/><category scheme="http://www.blogger.com/atom/ns#" term="mdadm"/><category scheme="http://www.blogger.com/atom/ns#" term="service at boot"/><category scheme="http://www.blogger.com/atom/ns#" term="storcenter"/><title type='text'>Iomega StorCenter IX2-200: accesso fisico al disco</title><content type='html'>Dato che non sempre le modifiche fatte vanno a buon fine, può succedere che il nostro Iomega StorCenter IX2-200 non riesca a riavviarsi e quindi l&#39;unica possibilità, se non si vuole procedere alla formattazione e reinstallazione del firmware, è quella di collegare il disco ad un PC con linux e procedere all&#39;accesso fisico ai dati.&lt;br /&gt;
&lt;br /&gt;
Prima di tutto c&#39;è da dire che i dischi sono in modalità raid e collegandolo vedrete una sola singola partizione; il sistema di partizionamento è di tipo EFI e la partizione è identificata come tipo GPT, inoltre viene utilizzato LVM per la gestione del disco, quindi le operazioni per accedervi non sono &quot;classiche&quot; e veloci, ma è necessario ragionarci sopra e fare più passi per accedere ai dati. Se utilizzate una distribuzione di tipo Debian like dovrete aver installato i pacchetti necessari con i seguenti comandi:&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;apt-get install mdadm&lt;br /&gt;apt-get install lvm2&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Ora possiamo procedere utilizzando i comandi necessari per l&#39;accesso fisico ai file... prima di tutto dobbiamo procedere al riconoscimento del sistema raid:&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;mdadm --assemble --scan&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
A questo punto dobbiamo verificare il physical volume presente, probabilmente non sarà in modalità &quot;disponibile&quot; e quindi la dobbiamo cambiarepre rendere accessibili i device /dev/md0 e /dev/md1:&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;pvs -a&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;vgchange -ay&lt;br /&gt;pvs&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Osservando l&#39;output dei comandi possiamo notare che md0 ed md1 sono dei volume group e per poterne visualizzare il contenuto dobbiamo eseguire i comandi riportati, così scopriremo che al loro interno sono presenti diversi logical volume (BFDlv, vol1 e lv1430e500) e ne visualizzeremo le caratteristiche:&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;lvdisplay md0_vg&lt;br /&gt;lvdisplay 2e26c579_vg&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
In base all&#39;output del precedente comando gli ultimi passi che ci rimangono sono quelli per montare i volume group:&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;mkdir /media/raid0&lt;br /&gt;chmod 777 /media/raid0&lt;br /&gt;mount /dev/md0_vg/BFDlv /media/raid0&lt;br /&gt;&lt;br /&gt;mkdir /media/raid1&lt;br /&gt;chmod 777 /media/raid1&lt;br /&gt;mount /dev/md0_vg/vol1 /media/raid1&lt;br /&gt;&lt;br /&gt;mkdir /media/raid2&lt;br /&gt;chmod 777 /media/raid2&lt;br /&gt;mount /dev/2e26c579_vg/lv1430e500 /media/raid1&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Ora non ci resta che andare a cercare i file che abbiamo modificato prima che smettesse di funzionare... dato che normalmente i problemi legati all&#39;impossibilità di riavvio del dispositivo sono legati a modifiche fatte all&#39;interno del file che viene montato tramite l&#39;interfaccia di loopback, dobbiamo ripetere la stessa procedura per montarlo nuovamente con i seguenti comandi: &lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;cd /media&lt;br /&gt;mkdir apps&lt;br /&gt;chmod 777 apps&lt;br /&gt;mount -o loop,rw /media/raid0/images/apps /media/apps&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Ora siete in grado di rimuovere le modifiche che avete fatto e che impedivano il corretto avvio del dispositivo... quindi potete ripartire con il vostro progetto, sperando che la prossima volta funzioni!&lt;br /&gt;
&lt;br /&gt;
Forse con questo abbiamo concluso il ciclo di tutorial di approfondimento, implementazione di nuove funzionalità e risoluzione dei problemi che possono derivare dalle modifiche fatte allo Iomega StorCenter IX2-200, quindi è molto probabile che la prossima puntata tratterà qualcosa di nuovo che avrà attirato la mia attenzione... a presto!</content><link rel='replies' type='application/atom+xml' href='http://smanettonex.blogspot.com/feeds/5792356087151875481/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://smanettonex.blogspot.com/2012/10/iomega-storcenter-ix2-200-accesso.html#comment-form' title='3 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/5792356087151875481'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/5792356087151875481'/><link rel='alternate' type='text/html' href='http://smanettonex.blogspot.com/2012/10/iomega-storcenter-ix2-200-accesso.html' title='Iomega StorCenter IX2-200: accesso fisico al disco'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8668187457124892978.post-7468949156073717894</id><published>2012-10-25T21:00:00.000+02:00</published><updated>2012-10-26T01:36:24.502+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="arm"/><category scheme="http://www.blogger.com/atom/ns#" term="ix2"/><category scheme="http://www.blogger.com/atom/ns#" term="persistent"/><category scheme="http://www.blogger.com/atom/ns#" term="root"/><category scheme="http://www.blogger.com/atom/ns#" term="service at boot"/><category scheme="http://www.blogger.com/atom/ns#" term="storcenter"/><title type='text'>Iomega StorCenter IX2-200: modifiche per utente root</title><content type='html'>Ci ho provato, ma non avere una home è molto scomodo e dato che mi piace poter amministrare il sistema in maniera semplice ho deciso di studiarmi qualcosa per rendere /root persistente, in maniera da potervi mantenere degli script, conservare la history, avere file di avvio personalizzati e tutto quello che è possibile avere di default sui sistemi tradizionali.&lt;br /&gt;
Quindi anche questa volta ci sarà da inventarsi uno stratagemma... per prima cosa creiamo la root in /opt e ne facciamo anche un link simbolico in maniera da avere /root... in seguito procediamo con la creazione dei vari file con le impostazioni che ci interessano (riporto alcuni esempi):&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;mkdir -pm 750 /opt/root;&lt;br /&gt;ln -sf /opt/root /&lt;br /&gt;vi /root/.bashrc # ad esempio il file può contenere &quot;export PATH=$PATH:$HOME/bin:/opt/bin:/opt/sbin&quot;&lt;br /&gt;mkdir -pm 700 /root/.ssh&lt;br /&gt;vi /root/.ssh/authorized_keys&lt;br /&gt;chmod 600 /root/.ssh/authorized_keys&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Ora che abbiamo eseguito le impostazioni desiderate dobbiamo creare uno script che prepari l&#39;ambiente e lo configuri in maniera che sia funzionante dopo ogni riavvio... partiamo quindi con lo script /opt/bin/roothome.sh:&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;#!/bin/bash&lt;br /&gt;&lt;br /&gt;# Create symbolic link to have homedir of user root available and persistent between reboot.&lt;br /&gt;chown -R root.root &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;/opt/root&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;chmod -R o-rwx /opt/root&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;ln -sf /opt/root /&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Per poter eseguire questo script ad ogni riavvio dobbiamo di nuovo ricorrere alla modifica del file che stabilisce i servizi ed i demoni da eseguire all&#39;avvio, quindi editiamo il file /tmp/apps/usr/local/cfg/sohoProcs.xml ed aggiungiamo alla sezione Group 2:&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&amp;lt;Program Name=&quot;roothome&quot; Path=&quot;/bin/bash&quot;&amp;gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Args&amp;gt;/opt/bin/roothome.sh&amp;lt;/Args&amp;gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;SysOption MaxMem=&quot;16M&quot;/&amp;gt;&lt;br /&gt;&amp;lt;/Program&amp;gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
A questo punto ad ogni riavvio la vostra home directory dovrebbe essere disponibile e se utilizzate le chiavi per l&#39;accesso ssh non dovrete neanche più digitare la password.&lt;br /&gt;
Direi che anche per questa volta è tutto.&lt;br /&gt;
&lt;br /&gt;
A presto!</content><link rel='replies' type='application/atom+xml' href='http://smanettonex.blogspot.com/feeds/7468949156073717894/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://smanettonex.blogspot.com/2012/10/iomega-storcenter-ix2-200-modifiche-per.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/7468949156073717894'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/7468949156073717894'/><link rel='alternate' type='text/html' href='http://smanettonex.blogspot.com/2012/10/iomega-storcenter-ix2-200-modifiche-per.html' title='Iomega StorCenter IX2-200: modifiche per utente root'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8668187457124892978.post-7234062598283477096</id><published>2012-10-24T18:30:00.000+02:00</published><updated>2012-10-25T01:32:24.112+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="arm"/><category scheme="http://www.blogger.com/atom/ns#" term="ipkg"/><category scheme="http://www.blogger.com/atom/ns#" term="ipkg-opt"/><category scheme="http://www.blogger.com/atom/ns#" term="ix2"/><category scheme="http://www.blogger.com/atom/ns#" term="service at boot"/><category scheme="http://www.blogger.com/atom/ns#" term="storcenter"/><category scheme="http://www.blogger.com/atom/ns#" term="xinetd"/><title type='text'>Iomega StorCenter IX2-200: servizi al boot</title><content type='html'>Come detto già in precedenza, le modifiche fatte in /etc sullo Iomega StorCenter IX2-200 non sono persistenti ed a ogni riavvio vengono perse... questo impedisce di poter gestire il dispositivo come una normale distribuzione linux, qui dobbiamo considerare che abbiamo a che fare con una gestione di tipo optware.&lt;br /&gt;
Cercando all&#39;interno del file system troviamo un file molto interessante che contiene l&#39;elenco di tutti i servizi che vengono avviati al boot: /mnt/apps/usr/local/cfg/sohoProcs.xml, ma se proviamo a modificarlo vediamo che il file è read only... dobbiamo quindi approfondire e capire da dove arriva quel file...&lt;br /&gt;
Con l&#39;aiuto dei comandi df e losetup -a cerchiamo di trovarne l&#39;origine e vediamo che proviene dall&#39;interfaccia di loopback collegata al file /sysroot/boot/images/apps:&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;/dev/loop0: [fd00]:81927 (/sysroot/boot/images/apps) &amp;lt;--- /dev/loop0 &amp;lt;--- /mnt/apps&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;/dev/loop1: [fd00]:81922 (sysroot/boot/images/config)&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;/dev/loop2: [fd00]:81924 (/sysroot/boot/images/oem)&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
A questo punto dobbiamo montare il file interessato configurando un nuovo loopback in modalità read/write per eseguire le modifiche volute... dato che questa procedura probabilmente la utilizzeremo più volte ed io odio riscrivere gli stessi comandi più volte, conviene scrivere uno script che riassuma tutte le operazioni in /opt/bin/service2boot.sh (e ne approfitteremo anche per fare il backup del file prima delle modifiche):&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;#!/bin/bash&lt;br /&gt;#&lt;br /&gt;# Crea un loopback device per poi montarlo in scrittura&lt;br /&gt;if [ -e /dev/loop3 ]; then&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp; umount /dev/loop3;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; losetup -d /dev/loop3;&lt;br /&gt;fi;&lt;br /&gt;mknod -m0660 /dev/loop3 b 7 3&lt;br /&gt;chown root.disk /dev/loop3;&lt;br /&gt;mkdir -pm 755 /tmp/apps;&lt;br /&gt;mount -o loop /boot/images/apps /tmp/apps;&lt;br /&gt;cp /tmp/apps/usr/local/cfg/sohoProcs.xml /tmp/apps/usr/local/cfg/sohoProcs.xml.$(date +%Y%m%d%H%M);&lt;br /&gt;vi /tmp/apps/usr/local/cfg/sohoProcs.xml;&lt;br /&gt;umount /tmp/apps;&lt;br /&gt;losetup -d /dev/loop3;&lt;br /&gt;rm /dev/loop3;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Ora la prima cosa da fare è capire come avviare eventuali demoni e/o servizi da sohoProcs.xml... osservando il file, possiamo notare che vi sono 3 sezioni ben definite:&lt;br /&gt;
&lt;br /&gt;
Group Level=&quot;0&quot; &lt;br /&gt;
Group Level=&quot;1&quot; &lt;br /&gt;
Group Level=&quot;2&quot; &lt;br /&gt;
&lt;br /&gt;
Non avendo trovato documentazione, posso solamente ipotizzare che il level 0 sia per inizializzare il dispositivo, il level 1 contenga i servizi per l&#39;autoconfigurazione e per i demoni &quot;ufficiali&quot; e che il level 2 contenga servizi e/o comandi necessari a livello applicativo evoluto... quindi decido di inserire i riferimenti ai servizi, demoni e/o comandi che voglio eseguire in questa sezione.&lt;br /&gt;
Ora rimane solamente più da individuare individuare come utilizzare le opzioni possibili per eseguire demoni, servizi e/o comandi... ma cercando un po&#39; in rete si riesce a trovare la seguente spiegazione:&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;br /&gt;&amp;lt;Program Name=&quot;PROGNAME&quot; Path=&quot;PERCORSO&quot;&amp;gt;&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Args&amp;gt;OPZIONE_1&amp;lt;/Args&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Args&amp;gt;OPZIONE_2&amp;lt;/Args&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;SysOption MaxMem=&quot;MAXMEM&quot; Restart=&quot;-1&quot;/&amp;gt;&lt;br /&gt;&amp;lt;/Program&amp;gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Dove i parametri hanno i seguenti significati:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Program Name - deve essere univoco.&lt;/li&gt;
&lt;li&gt;Path - il percorso del file eseguibile, può essere sh, /bin/sh o /bin/bash per eseguire gli script.&lt;/li&gt;
&lt;li&gt;Args - ogni argomento da passare allo script; possono essere assenti od essercene uno o più.&lt;/li&gt;
&lt;li&gt;SysOptions - si spiega da sola, è tutto il contenuto è opzionale e può essere:&lt;/li&gt;
&lt;/ul&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; - MaxMem - massima occupazione di RAM consentita&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;  - Nice - imposta il livello di priorità del processo&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;  - Restart - quante volte rieseguirlo quando termina; &quot;-1&quot; significa di eseguirlo infinite volte, ma attenzione ad utilizzarlo con programmi che vengono eseguiti come demoni, essi terminano dopo il fork e se il Restart è abilitato inizia un loop infinito; l&#39;altra possibilità per evitare che succeda è far sì che il demone non esegua il fork rimanendo in foreground&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; - InitOnly - impostazione specifica per l&#39;utilizzo con i demoni&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;  - NoErrors - dovrebbe ignorare i codici di uscita in caso di fallimento&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;  - DelayStart - ritardo di esecuzione, probabilmente in secondi&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;  - Days, Scheduled, StartTime, RandomDelay - parametri per la schedulazione &lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;br /&gt;
Direi che adesso avete abbastanza elementi per divertirvi e fare le prove per configurare il sistema a vostro gusto... attenzione che se sbagliate ad eseguire le modifiche ed il boot non termina rischiate di non riuscire neanche a collegarvi in SSH; in questo caso l&#39;unica possibilità, oltre a rasare tutto e ripartire da zero reinstallando il firmware, è quella di utilizzare linux per accedere fisicamente al disco e modificare nuovamente il file sohoProcs.xml rimuovendo le modifiche fatte, ma questo verrà trattato in un prossimo appuntamento.&lt;br /&gt;
&lt;br /&gt;
Per adesso buon divertimento ed attenzione a cosa modificate!</content><link rel='replies' type='application/atom+xml' href='http://smanettonex.blogspot.com/feeds/7234062598283477096/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://smanettonex.blogspot.com/2012/10/iomega-storcenter-ix2-200-servizi-al.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/7234062598283477096'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/7234062598283477096'/><link rel='alternate' type='text/html' href='http://smanettonex.blogspot.com/2012/10/iomega-storcenter-ix2-200-servizi-al.html' title='Iomega StorCenter IX2-200: servizi al boot'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8668187457124892978.post-6750729550431295694</id><published>2012-10-23T21:00:00.000+02:00</published><updated>2012-10-24T01:46:29.129+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="arm"/><category scheme="http://www.blogger.com/atom/ns#" term="ddclient"/><category scheme="http://www.blogger.com/atom/ns#" term="ipkg"/><category scheme="http://www.blogger.com/atom/ns#" term="ipkg-opt"/><category scheme="http://www.blogger.com/atom/ns#" term="ix2"/><category scheme="http://www.blogger.com/atom/ns#" term="storcenter"/><title type='text'>Iomega StorCenter IX2-200: servizio ddclient per IP dinamici</title><content type='html'>Adesso che è ovvio che l&#39;utilizzo dello Iomega StorCenter IX2-200 non è più limitato alle funzionalità di NAS, e se state seguendo questi tutorial vuole dire che vorreste avere un sistema con funzionalità da server, dobbiamo far sì di poterlo raggiungere anche da postazioni remote (e non parlo di porte e del loro forwarding sul router che è essenziale, ma di indirizzo IP pubblico), ma quando l&#39;indirizzo non è statico insorgono i problemi... quindi anche in questo caso dovremo studiarci una soluzione e questa si chiama DNS dinamico.&lt;br /&gt;
Logicamente mantenerlo a mano è abbastanza scomodo e se non siamo collegati al router dello StorCenter è improbabile conoscerne direttamente l&#39;IP da impostare manualmente, quindi quello che andremo a fare è utilizzare uno dei servizi gratuiti di DNS dinamico e configurarlo per l&#39;update automatico tramite il software ddclient. Questo si occupa di verificare ogni tot tempo che l&#39;host configurato venga risolto con l&#39;indirizzo ip del router e, se così non fosse, provvede ad aggiornare il record di tipo A nel DNS provider.&lt;br /&gt;
Ora cominciamo con una lista di siti che offrono servizi di DNS dinamico ed hanno protocolli di aggiornamento standard e compatibili con ddclient (magari ce ne sono anche altri, ma questi li avevo provati):&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;www.no-ip.com&lt;/li&gt;
&lt;li&gt;www.dnsdynamic.org&lt;/li&gt;
&lt;li&gt;freedns.afraid.org&lt;/li&gt;
&lt;li&gt;www.dtdns.com&lt;/li&gt;
&lt;li&gt;www.sitelutions.com&lt;/li&gt;
&lt;li&gt;www.zoneedit.com&lt;/li&gt;
&lt;/ul&gt;
Il file di configurazione è /opt/etc/ddclient/ddclient.conf ed al suo interno, per ogni servizio di dns dinamico dato che possiamo averne più di uno, troviamo tutte le possibili opzioni da configurare; molta attenzione è da porre nella scelta del sistema per l&#39;identificazione dell&#39;indirizzo IP... io per comodità utilizzo sempre quella web.&lt;br /&gt;
Qui di seguito riporto un esempio di configurazione per dtdns:&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;server=www.dtdns.com, protocol=dtdns, client=ddclient, login=username, password=&#39;password&#39;, use=web, web=myip.dnsdynamic.com&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;hostname.suroot.com&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Dato che non era presente alcuno script per avviare il servizio, mi sono basato su quelli già presenti all&#39;interno di /opt/etc/init.d, creandone uno adhoc... /opt/etc/init.d/S99ddclient, con il seguente contenuto:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;#!/bin/bash&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;#&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;# Startup script for ddclient&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;#&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;# Stop myself if running&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;DAEMON=/opt/sbin/ddclient&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;PIDFILE=/opt/var/run/ddclient.pid&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;[ -f ${PIDFILE} ] &amp;amp;&amp;amp; kill `cat ${PIDFILE}`&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;${DAEMON}
 -daemon 100 -web checkip.dyndns.com -web-skip &#39;Current IP Address:&#39; 
-file &quot;/opt/etc/ddclient/ddclient.conf&quot; -pid ${PIDFILE};&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Logicamente questo script dovrà essere reso avviabile (chmod 755 /opt/etc/init.d/S99ddclient.sh) e dovremo assicurarci che venga eseguito ad ogni avvio, come per openVPN, ma lo vedremo nella prossima puntata.&lt;br /&gt;
&lt;br /&gt;
A presto!</content><link rel='replies' type='application/atom+xml' href='http://smanettonex.blogspot.com/feeds/6750729550431295694/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://smanettonex.blogspot.com/2012/10/iomega-storcenter-ix2-200-servizio.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/6750729550431295694'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/6750729550431295694'/><link rel='alternate' type='text/html' href='http://smanettonex.blogspot.com/2012/10/iomega-storcenter-ix2-200-servizio.html' title='Iomega StorCenter IX2-200: servizio ddclient per IP dinamici'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8668187457124892978.post-1533205113777341098</id><published>2012-10-17T20:00:00.000+02:00</published><updated>2012-10-22T01:09:34.582+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="arm"/><category scheme="http://www.blogger.com/atom/ns#" term="ipkg"/><category scheme="http://www.blogger.com/atom/ns#" term="ipkg-opt"/><category scheme="http://www.blogger.com/atom/ns#" term="ix2"/><category scheme="http://www.blogger.com/atom/ns#" term="openvpn"/><category scheme="http://www.blogger.com/atom/ns#" term="storcenter"/><category scheme="http://www.blogger.com/atom/ns#" term="xinetd"/><title type='text'>Iomega StorCenter IX2-200: openvpn</title><content type='html'>L&#39;installazione di openvpn su sistemi tradizionali l&#39;ho già trattata in precedenza ed anche la gestione dei certificati, quindi queste informazioni le considero acquisite... tratterò solamente l&#39;installazione di openvpn ed il funzionamento del demone con l&#39;ausilio di xinetd... riporterò inoltre le modifiche apportate agli script dato che per come sono concepiti non hanno funzionato sul mio sistema.&lt;br /&gt;
Per prima cosa dobbiamo installare il software desiderato, quindi:&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;ipkg-opt openvpn openssl xinetd &lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Cominciamo con i problemi dello script per l&#39;avvio del demone... la versione originale non funziona perchè ricerca il modulo tun.o per inizializzare le interfacce di tipo tun che in realtà sono già compilate all&#39;interno del kernel (è presente /dev/net/tun), quindi lo script di avvio /opt/etc/init.d/S20openvpn dovrà risultare come il seguente:&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;#!/bin/sh&lt;br /&gt;#&lt;br /&gt;# Startup script for openvpn server&lt;br /&gt;#&lt;br /&gt;# Make sure IP forwarding is enabled&lt;br /&gt;echo 1 &amp;gt; /proc/sys/net/ipv4/ip_forward&lt;br /&gt;# Make device if not present (not devfs)&lt;br /&gt;if [ ! -c /dev/net/tun ]; then&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp; # Make sure the tunnel driver is loaded&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp; if ( !(lsmod | grep -q &quot;^tun&quot;) ); then&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; # Make /dev/net directory if needed&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; if [ ! -d /dev/net ]; then&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; mkdir -m 755 /dev/net;&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; fi;&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; insmod /opt/lib/modules/tun.o;&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp; else&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; exit -1;&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp; fi;&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp; mknod /dev/net/tun c 10 200;&lt;br /&gt;fi;&lt;br /&gt;&lt;br /&gt;# If you want a standalone server (not xinetd), then comment out the return statement below&lt;br /&gt;return 0&lt;br /&gt;&lt;br /&gt;## This is for standalone servers only!!!!&lt;br /&gt;# Kill old server if still there&lt;br /&gt;if [ -n &quot;`/opt/bin/pidof openvpn`&quot; ]; then&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp; /opt/bin/killall openvpn 2&amp;gt;/dev/null;&lt;br /&gt;fi&lt;br /&gt;# Start the openvpn daemon - add as many daemons as you want&lt;br /&gt;/opt/sbin/openvpn --daemon --cd /opt/etc/openvpn --config openvpn.conf&lt;br /&gt;# [EOF]&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
A questo punto dobbiamo solamente più configurarte xinetd affinchè accetti le connessioni per openvpn e quindi editiamo il file /opt/etc/xinetd.d/openvpn ed abilitiamo la linea &quot;only_from += 0.0.0.0&quot; controllando che il servizio non sia disabilitato.&lt;br /&gt;
&lt;br /&gt;
Ora rimane solamente più da avviare il servizio con /opt/etc/init.d/S10xinetd... ma per avviarlo ad ogni boot ci sarà da fare ancora qualche modifica fuori programma dato che la configurazione in /etc non è persistente e viene eliminata ad ogni riavvio, ma questo argomento sarà la discussione del nostro prossimo appuntamento.&lt;br /&gt;
&lt;br /&gt;
Alla prossima!</content><link rel='replies' type='application/atom+xml' href='http://smanettonex.blogspot.com/feeds/1533205113777341098/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://smanettonex.blogspot.com/2012/10/iomega-storcenter-ix2-200-openvpn.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/1533205113777341098'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/1533205113777341098'/><link rel='alternate' type='text/html' href='http://smanettonex.blogspot.com/2012/10/iomega-storcenter-ix2-200-openvpn.html' title='Iomega StorCenter IX2-200: openvpn'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8668187457124892978.post-7628845914794780716</id><published>2012-10-16T23:00:00.000+02:00</published><updated>2012-10-17T10:54:56.564+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="arm"/><category scheme="http://www.blogger.com/atom/ns#" term="ipkg"/><category scheme="http://www.blogger.com/atom/ns#" term="ipkg-opt"/><category scheme="http://www.blogger.com/atom/ns#" term="ix2"/><category scheme="http://www.blogger.com/atom/ns#" term="kernel"/><category scheme="http://www.blogger.com/atom/ns#" term="optware"/><category scheme="http://www.blogger.com/atom/ns#" term="storcenter"/><title type='text'>Iomega StorCenter IX2-200: source code del dispositivo</title><content type='html'>Nella precedente guida mi sono arenato alla compilazione del kernel e dei sui moduli, ma non mi sono ostinato dato che la versione del kernel che era presente in optware e quella dello Iomega StorCenter IX2-200 erano diverse... ho quindi deciso di trovare lo stesso kernel sorgente del dispositivo (che non è quello ufficiale di kernel.org). So che questa ricerca è possibile e che il produttore deve renderlo disponibile perchè questo è uno dei &quot;vantaggi&quot; per gli utenti e sviluppatori che applicano le licenze di tipo GPL.&lt;br /&gt;&lt;br /&gt;Come prima cosa andiamo a cercarlo sul sito di supporto della Iomega (https://iomega-na-en.custhelp.com/), cerchiamo il nostro dispositivo Iomega StorCenter IX2-200 e vediamo cosa riusciamo a trovare... wow, dove si parla di software c&#39;è anche &quot;Any / Not Applicable&quot;, lo selezioniamo e leggendo vediamo che c&#39;è l&#39;ultimo firmware disponibile (ed eseguite l&#39;aggiornamento se non lo avete)... bingo! C&#39;è una parte in cui dice &quot;open source code associated&quot;... da qui potrete scaricare il codice sorgente.&lt;br /&gt;&lt;br /&gt;Ora che siete in possesso di tutti i sorgenti e/o patch del software, sappiate che potete ricompilare tutto quello che volete, provando ad ottimizzarlo o ad adattarlo alle vostre esigenze... importantissime, e fonte di &quot;ispirazione&quot; per sapere cosa è in grado di fare il kernel, le patch del kernel, da applicare al kernel ufficiale che si scarica da kernel.org, ed il file config del nostro dispositivo, da cui potrete capire che moduli e funzionalità sono incluse nel kernel e quali no.&lt;br /&gt;&lt;br /&gt;A questo punto il mio &quot;interesse&quot; nel proseguire la compilazione del kernel è terminata, ero giunto fino qui cercando informazioni sulla compilazione del kernel con lo scopo di far funzionare openvpn dato che mi segnalava l&#39;impossibilità di trovare il modulo tun.o, ma verificando il file di configurazione del kernel ho visto che l&#39;interfaccia tun è compilata all&#39;interno dello stesso e quindi non vi è bisogno di alcun modulo (ed anche ipkg comunque avvisava di questa &quot;finta&quot; mancanza, quindi mi ero fidato)... adesso sappiamo che i messaggi ricevuti sono solamente un bug da eliminare a livello di script di avvio.&lt;br /&gt;
&lt;br /&gt;
In un prossimo post mi occuperò delle modifiche necessarie a far funzionare openvpn tramite xinetd.&lt;br /&gt;&lt;br /&gt;A presto!</content><link rel='replies' type='application/atom+xml' href='http://smanettonex.blogspot.com/feeds/7628845914794780716/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://smanettonex.blogspot.com/2012/10/iomega-storcenter-ix2-200-source-code.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/7628845914794780716'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/7628845914794780716'/><link rel='alternate' type='text/html' href='http://smanettonex.blogspot.com/2012/10/iomega-storcenter-ix2-200-source-code.html' title='Iomega StorCenter IX2-200: source code del dispositivo'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8668187457124892978.post-7069606587674871953</id><published>2012-10-16T21:00:00.000+02:00</published><updated>2012-10-17T10:49:49.362+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="arm"/><category scheme="http://www.blogger.com/atom/ns#" term="cross compile"/><category scheme="http://www.blogger.com/atom/ns#" term="cs08q1armel"/><category scheme="http://www.blogger.com/atom/ns#" term="ipkg"/><category scheme="http://www.blogger.com/atom/ns#" term="ipkg-opt"/><category scheme="http://www.blogger.com/atom/ns#" term="ix2"/><category scheme="http://www.blogger.com/atom/ns#" term="native compile"/><category scheme="http://www.blogger.com/atom/ns#" term="optware"/><category scheme="http://www.blogger.com/atom/ns#" term="storcenter"/><title type='text'>  Iomega StorCenter IX2-200: compilazione del software</title><content type='html'>Fin&#39;ora ci siamo appoggiati a software precompilato da altre persone e reso disponibile attraverso i repository ipkg, ma non sempre è tutto cosi facile e semplice, soprattutto se dovete partire dai sorgenti per compilarvi il software non presente.&lt;br /&gt;
&lt;br /&gt;
Prima di tutto sappiate che ci sono due possibili strade da seguire per compilare il software: &lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;native (compilazione nativa a bordo del dispositivo) &lt;/li&gt;
&lt;li&gt;cross (compilazione del codice su di un&#39;altra piattaforma) &lt;/li&gt;
&lt;/ul&gt;
La compilazione nativa ha il pregio di richiedere solamente la preparazione dell&#39;ambiente a bordo del dispositivo, ma spazio disco, potenza di calcolo del processore e memoria fisica spesso sono limitati dato che il dispositivo non è fatto per quello.&lt;br /&gt;
&lt;br /&gt;
La compilazione di tipo cross esula dai limiti di spazio e potenza computazionale del dispositivo, ma potrebbe richiedere operazioni molto complesse per la sua preparazione.&lt;br /&gt;
&lt;br /&gt;
Ora vedremo a grandi linee come fare, ma se non sapete nulla di compilazione, o non avete molto interesse (e dovrete usare bene i motori di ricerca in caso di problemi), lasciate stare e leggete qualcos&#39;altro.&lt;br /&gt;
&lt;br /&gt;
Partiamo con la preparazione dell&#39;ambiente di cross compiling supponendo di avere a che fare con una distribuzione di tipo Debian-based installando i seguenti pacchetti:&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;apt-get update&lt;br /&gt;apt-get install gcc cvs flex bison make pkg-config rsync gettext libglib2.0-dev autoconf libtool automake automake1.9 sudo patch bzip2 gzip wget sed texinfo subversion&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Ora procuriamoci l&#39;ambiente di compilazione optware dal repository SVN:&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;svn co http://svn.nslu2-linux.org/svnroot/optware/trunk optware&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Sapendo che l&#39;architettura che ci interessa è cs08q1armel, definiamo il target del nostro ambiente con i seguenti comandi:&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;cd optware; make cs08q1armel-target&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Da qui in poi tutto quello che compileremo verrà compilato per questa tipologia di processore, ma dobbiamo ancora creare i tool di base del sistema e con i seguenti comandi verrà scaricato ed impostato molto software (compreso un kernel in versione &quot;vecchia&quot;):&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;cd cs08q1armel; make directories ipkg-utils toolchain&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Come ultima prova per testare il funzionamento possiamo provare a compilare con i seguenti comandi:&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;make hello-dirclean hello-check&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Per capire come fare a compilare altro software esaminate e cercate di interpretare la struttura dei seguenti file: &lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;make/hello.mk &lt;/li&gt;
&lt;li&gt;make/template.mk &lt;/li&gt;
&lt;/ul&gt;
Per compilare dei &quot;Pre&quot; specifici come i moduli del kernel, ci sono diverse destinazioni da specificare (la directory di partenza è sempre optware) e dovrete usare i seguenti comandi:&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;make pre-targetcd pre; make directories ipkg-utils toolchain&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Da qui in poi sappiate che non sono stato in grado di verificare la documentazione letta dato che avevo degli errori che non ho ancora risolto...&lt;br /&gt;
&lt;br /&gt;
A questo punto dovreste essere in grado di compilare e riconfigurare i moduli del kernel:&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;make kernel-modules-ipk&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Per la riconfigurazione dei kmods:&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;rm -f builds/kernel/.configured&lt;br /&gt;make kernel-modules-config KERNEL_CONFIG_METHOD=menuconfig&lt;br /&gt;cp builds/kernel/.config sources/kernel-modules/pre/defconfig&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Ora, parlando dell&#39;ambiente di tipo &quot;native&quot; sappiate che la procedura è la stessa, tranne che partirete direttamente dall&#39;SVN fatto all&#39;interno della /opt del dispositivo targhet... buon divertimento!&lt;br /&gt;
&lt;br /&gt;
Direi che per oggi è tutto... a presto ed alla prossima puntata!</content><link rel='replies' type='application/atom+xml' href='http://smanettonex.blogspot.com/feeds/7069606587674871953/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://smanettonex.blogspot.com/2012/10/iomega-storcenter-ix2-200-compilazione.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/7069606587674871953'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/7069606587674871953'/><link rel='alternate' type='text/html' href='http://smanettonex.blogspot.com/2012/10/iomega-storcenter-ix2-200-compilazione.html' title='  Iomega StorCenter IX2-200: compilazione del software'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8668187457124892978.post-1291562991445275906</id><published>2012-10-14T20:00:00.000+02:00</published><updated>2012-10-22T21:49:53.737+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="arm"/><category scheme="http://www.blogger.com/atom/ns#" term="ipkg"/><category scheme="http://www.blogger.com/atom/ns#" term="ipkg-opt"/><category scheme="http://www.blogger.com/atom/ns#" term="ix2"/><category scheme="http://www.blogger.com/atom/ns#" term="storcenter"/><title type='text'>Iomega StorCenter IX2-200: installazione del software</title><content type='html'>Lo Iomega StorCenter IX2-200 che ho in mano (firmware 3.2.6.21659), funziona grazie ad una distribuzione Linux Debian 5.0 per ARMv5, repository armel e come gestore dei pacchetti utilizza ipkg (questo sistema di distribuzione dei pacchetti si chiama optware e principalmente viene utilizzato da router/nas per ambienti soho).&lt;br /&gt;
&lt;br /&gt;
Potete trovare ulteriori informazioni tecniche al seguente link:&lt;br /&gt;
&lt;a href=&quot;http://iomega.nas-central.org/wiki/Category:Ix2-200&quot;&gt;http://iomega.nas-central.org/wiki/Category:Ix2-200&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
D&#39;ora in poi considereremo di operare solamente tramite l&#39;accesso SSH abilitato in precedenza ed è IMPORTANTE considerare che qualunque modifica fatta sulla root, e non contenuta in /opt, è altamente probabile che venga persa allo spegnimento od al riavvio del dispositivo; inoltre eseguendo un df possiamo notare che il root filesystem è molto piccolo, mentre c&#39;è molto spazio libero in /mnt/system, e /opt è un link simbolico alla directory /mnt/system/opt.&lt;br /&gt;
&lt;br /&gt;
Per mantenere eventuali configurazioni software, normalmente in salvate in /etc, vedremo più avanti come fare... e se avete notato non è neanche presente la home dell&#39;utente root.&lt;br /&gt;
&lt;br /&gt;
Per poter installare il software è necessario configurare i repository IPKG da utilizzare... nel nostro caso sono mantenuti da www.nslu2-linux.org; è quindi necessario creare il file di configurazione relativo (unstable è il più aggiornato,&amp;nbsp;ma vi è anche il repository stable, cross o native dipende dalla piattaforma sulla quale è stato compilato):&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;cat &amp;lt;&amp;lt;EOF &amp;gt; /etc/ipkg.conf&lt;br /&gt;src cross http://ipkg.nslu2-linux.org/feeds/optware/cs08q1armel/cross/unstable&lt;br /&gt;src native http://ipkg.nslu2-linux.org/feeds/optware/cs08q1armel/native/unstable&lt;br /&gt;EOF&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
A questo punto possiamo tranquillamente operare con i comandi ipkg (o meglio, ipkg-opt come vedremo più avanti):&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;ipkg update # Aggiornamento della lista del software disponibile&lt;br /&gt;ipkg list | more # Visualizzare il software disponibile&lt;br /&gt;ipkg install &amp;lt;nome_pacchetto&amp;gt; # Installazione del software&lt;br /&gt;ipkg list_installed # Per verificare i pacchetti installati&lt;br /&gt;ipkg upgrade # Per aggiornare i pacchetti installati &lt;br /&gt;ipkg remove &amp;lt;nome_pacchetto&amp;gt; # Rimozione del software&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Come detto in precedenza, tutto il software sarà da installare in /opt ed affinchè questo non crei problemi è necessario installare il pacchetto ipkg-opt che si occuperà espressamente di questa operazione, quindi il primo software da installare sarà ipkg-opt:&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;ipkg install ipkg-opt&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
A questo punto però dobbiamo aggiungere al path ed alle librerie il contenuto della cartella /opt con i nuovi pacchetti installati nel sistema:&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;export PATH=/opt/bin:/opt/sbin:$PATH&lt;br /&gt;echo &quot;/opt/lib/&quot; &amp;gt;&amp;gt; /etc/ld.so.conf&lt;br /&gt;ldconfig -v&lt;br /&gt;mv /opt/etc/ipkg.conf /opt/etc/ipkg.conf.old&lt;br /&gt;ln -s /etc/ipkg.conf /opt/etc/ipkg.conf&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Per semplificarsi la vita è possibile creare uno script che esegue in automatico le operazioni...&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;vi /opt/bin/ipkg-opt.sh&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;#!/bin/bash&lt;br /&gt;&lt;br /&gt;(grep &quot;/opt/lib&quot; /etc/ld.so.conf &amp;gt; /dev/null) || (echo &quot;/opt/lib/&quot; &amp;gt;&amp;gt; /etc/ld.so.conf; ldconfig -v);&lt;br /&gt;#(echo $PATH | grep &#39;/opt/bin:/opt/sbin&#39; &amp;gt; /dev/null) || (PATH=${PATH}:/opt/bin:/opt/sbin;);&lt;br /&gt;if [[ ! &quot;:$PATH:&quot; == *&quot;:&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;/opt/bin:&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;/opt/sbin:&lt;/span&gt;&lt;/span&gt;&quot;* ]]; then export PATH=${PATH}:/opt/bin:/opt/sbin; fi;&lt;br /&gt;[ -L /etc/ipkg.conf ] &amp;amp;&amp;amp; mv -f /etc/ipkg.conf /etc/ipkg.conf.old || rm -f /etc/ipkg.conf&lt;br /&gt;[ -L /opt/etc/ipkg.conf ] &amp;amp;&amp;amp; mv -f /opt/etc/ipkg.conf /opt/etc/ipkg.conf.old || rm -f /opt/etc/ipkg.conf&lt;br /&gt;echo -e &quot;src cross http://ipkg.nslu2-linux.org/feeds/optware/cs08q1armel/cross/unstable\nsrc native http://ipkg.nslu2-linux.org/feeds/optware/cs08q1armel/native/unstable&quot; &amp;gt; /opt/etc/ipkg.conf&lt;br /&gt;ln -s /opt/etc/ipkg.conf /etc/ipkg.conf;&lt;br /&gt;ipkg-opt update;&lt;br /&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
A questo punto si è pronti per cominciare l&#39;installazione dei software di proprio interesse... riporto un esempio relativo a del software che utilizzo normalmente o che considero indispensabile:&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;ipkg-opt install unzip bzip2 gzip&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;ipkg-opt install openvpn xinetd&lt;br /&gt;ipkg-opt install ddclient perl-digest-sha1 perl-io-socket-ssl&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Se necessario, il software di gestione dei pacchetti IPKG, si occuperà anche dell&#39;installazione delle dipendenze software.&lt;br /&gt;
&lt;br /&gt;
A presto e continuate a fare esperimenti e divertirvi!</content><link rel='replies' type='application/atom+xml' href='http://smanettonex.blogspot.com/feeds/1291562991445275906/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://smanettonex.blogspot.com/2012/10/iomega-storcenter-ix2-200-installazione.html#comment-form' title='1 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/1291562991445275906'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/1291562991445275906'/><link rel='alternate' type='text/html' href='http://smanettonex.blogspot.com/2012/10/iomega-storcenter-ix2-200-installazione.html' title='Iomega StorCenter IX2-200: installazione del software'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8668187457124892978.post-1998922433995867512</id><published>2012-10-13T16:00:00.000+02:00</published><updated>2012-10-17T10:30:48.038+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ix2"/><category scheme="http://www.blogger.com/atom/ns#" term="ssh"/><category scheme="http://www.blogger.com/atom/ns#" term="storcenter"/><title type='text'>Iomega StorCenter IX2-200: abilitazione SSH</title><content type='html'>Dato che sono entrato in possesso di uno Iomega StorCenter IX2-200 che ha avuto dei problemi ai dischi e quindi non era più affidabile, ho deciso di cominciare a farci sopra degli esperimenti per sfruttare le potenzialità del processore arm contenuto al suo interno e quindi comincerò una nuova serie di post riguardandi questo argomento... ed ora partiamo con le basi per potersi collegare... l&#39;abilitazione del servizio SSH!&lt;br /&gt;
&lt;br /&gt;
Per abilitare l&#39;SSH è necessario collegarsi all&#39;indirizzo IP dello StorCenter IX2-200, dopo aver eseguito il login, e caricare la pagina: &lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;http://[IP Address of your NAS]/support.html (per la versione &quot;normale&quot;); &lt;/li&gt;
&lt;li&gt;https://[IP Address of your NAS]/diagnostics.html (per la versione &quot;cloud edition&quot;). &lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
A questo punto si può abilitare il protocollo SSH e la porta da utilizzare nella schermata apparsa; vi sono anche molte altre funzioni utili, tipo quella di dump della configurazione del NAS... che esulano da questo post, ma vi fanno capire che è sempre importante guardarsi intorno.&lt;br /&gt;
&lt;br /&gt;
A questo punto è possibile collegarsi al NAS tramite l&#39;utente root ed utilizzando come password una stringa &quot;combinata&quot;: soho[password dell&#39;utente admin]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Alla prossima puntata e buon divertimento!</content><link rel='replies' type='application/atom+xml' href='http://smanettonex.blogspot.com/feeds/1998922433995867512/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://smanettonex.blogspot.com/2012/10/iomega-storcenter-ix2-200-abilitazione.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/1998922433995867512'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/1998922433995867512'/><link rel='alternate' type='text/html' href='http://smanettonex.blogspot.com/2012/10/iomega-storcenter-ix2-200-abilitazione.html' title='Iomega StorCenter IX2-200: abilitazione SSH'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8668187457124892978.post-8554135679423030360</id><published>2012-02-16T16:00:00.000+01:00</published><updated>2012-10-15T22:31:32.758+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ammortizzatori sociali"/><category scheme="http://www.blogger.com/atom/ns#" term="disoccupazione"/><category scheme="http://www.blogger.com/atom/ns#" term="indennità disoccupazione"/><category scheme="http://www.blogger.com/atom/ns#" term="licenziamento"/><title type='text'>Gli ammortizzatori sociali</title><content type='html'>Come promesso proseguiamo con le informazioni che possono essere utili in caso di licenziamento.&lt;br /&gt;
Nel caso siate stati licenziati (quindi non dovete esservi dimessi, se non per giusta causa) potrete accedere all&#39;indennità di disoccupazione (6 mesi con il 60% dell&#39;ultima busta paga
 e 2 con il 50%... se avete più di 50 anni vi spettano ancora 4 mesi con
 il 40%... tutto questo viene considerato in base al lordo annuale diviso 12 considerando le ultime 3 buste paga) e, se la motivazione è stata oggettiva, alle liste di mobilità (la durata dell&#39;iscrizione varia in base
 alla vostra età)... se vi hanno offerto di dimettervi e voi avete accettato, spero che vi abbiano dato almeno un bel po&#39; di soldi in più rispetto a quelli che vi sarebbero spettati comunque.&lt;br /&gt;
Prima di tutto andate a fare un&#39;altra coda agli
 uffici per l&#39;impiego dove vi potrete iscrivere alle liste di disoccupazione ed è indispensabile fornire al Centro per l’impiego, della 
provincia d&#39;appartenenza, la propria dichiarazione di &quot;immediata disponibilità&quot; 
allo svolgimento di attività lavorativa; considerate che è possibile essere chiamati per l&#39;aggiornamento del proprio percorso formativo... nel caso non ci si presenti l&#39;indennità potrà essere sospesa e verrete cancellati dalle liste di mobilità.&lt;br /&gt;
Il &quot;tasto dolente&quot; dei centri per l&#39;impiego sono le code, sempre lunghissime, soprattutto i primi giorni del mese... il centro per l&#39;impiego di cui ho usufruito io distribuiva i numeri prima dell&#39;apertura e li
 ritirava dopo averne dati un tot, quindi affidandosi agli orari scritti sul sito si potevano 
chiedere solamente informazioni... conviene telefonare per sapere le 
modalità. Ultima considerazione, se non vi chiamano per i corsi è molto difficile che vi chiamino per offrirvi lavoro... chi cerca un lavoratore spesso preferisce affidarsi alle società interinali od a canali di reclutamento innovativi, tipo internet.&lt;br /&gt;
Al centro per l&#39;impiego, dopo aver compilato un po&#39; di moduli ed un curriculum molto generico, verrete iscritti nelle liste di 
disoccupazione e, se siete stati licenziati per motivi oggettivi, vi 
verrà consegnato un modulo da far compilare dal vostro datore di lavoro
 che vi permetterà di iscrivervi alle liste di mobilità (sì, dovrete 
tornare dove vi hanno detto che non eravate più necessari e dovrete 
anche rifarvi la coda qui, nel centro per l&#39;impiego).&lt;br /&gt;
Con il 
foglio di iscrizione alle liste di disoccupazione ora potete andare presso 
un patronato, che sono gli unici enti che possono gestire le pratice tra voi e l&#39;INPS, per fare la richiesta di indennità di disoccupazione (forse
 è possibile farlo anche online, ma non ho provato), recatevi sul posto con le vostre coordinate bancarie dato che vi verrà chiesto come farvi avere i soldi.&lt;br /&gt;
A questo punto le code sono finite, e stando comodamente seduti sulla vostra sedia di casa mentre cercate il nuovo impiego, un po&#39; di soldi eviteranno di farvi sentire un cappio al collo dato che le spese &quot;a regime&quot; continuerete ad averle... sarà anche un periodo limitato, ma è sempre meglio di niente.&lt;br /&gt;
Ricordatevi che nel caso ricominciaste a lavorare è importantissimo comunicare la ripresa dell&#39;attività lavorativa entro 5 giorni, soprattutto in caso di iscrizione alle liste di mobilità, se non lo faceste la pena è la cancellazione dalle liste (e vi conviene mantenerla stretta dato che vi rende molto appetibili per le società che cercano sgravi fiscali)... quindi dovrete compilare il modulo SR04/DS56bis e farlo pervenire entro 5 giorni dalla ripresa dell&#39;attività; in questo caso, per evitare di fare code all&#39;INPS, ho approfittato dei servizi online forniti dal portale INPS, inviando il modulo e ricevendo un numero di protocollo come ricevuta della consegna.&lt;br /&gt;
&lt;br /&gt;
Alla prossima puntata! </content><link rel='replies' type='application/atom+xml' href='http://smanettonex.blogspot.com/feeds/8554135679423030360/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://smanettonex.blogspot.com/2012/02/gli-ammortizzatori-sociali.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/8554135679423030360'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/8554135679423030360'/><link rel='alternate' type='text/html' href='http://smanettonex.blogspot.com/2012/02/gli-ammortizzatori-sociali.html' title='Gli ammortizzatori sociali'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8668187457124892978.post-12807450323297873</id><published>2012-02-07T15:30:00.000+01:00</published><updated>2012-10-15T01:43:03.736+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ammortizzatori sociali"/><category scheme="http://www.blogger.com/atom/ns#" term="disoccupazione"/><category scheme="http://www.blogger.com/atom/ns#" term="indennità disoccupazione"/><category scheme="http://www.blogger.com/atom/ns#" term="licenziamento"/><category scheme="http://www.blogger.com/atom/ns#" term="sindacati"/><title type='text'>Il licenziamento (ca##o!!!)</title><content type='html'>L&#39;esperienza è una cosa che nella vita serve sempre, ma alcune volte piacerebbe fare a meno di acquisirla in determinati campi, ma non potendo sceglierli, a sto turno mi sono trovato a spasso.&lt;br /&gt;
Qui darò una breve descrizione di quello che è successo a me (nel gennaio del 2012) e senza approfondire gli aspetti personali, tratterò quelli tecnici, l&#39;ordine delle operazioni da fare per ottenere l&#39;indennità di disoccupazione ordinaria (per poterne usufruire mi pare si debba aver lavorato almeno per 2 anni) ed iscriversi alle liste di mobilità (solamente se si è stati licenziati per motivazioni oggettive).&lt;br /&gt;
Se state leggendo probabilmente vi trovate in questa situazione o qualcuno vi ha chiesto di informarvi... io non sono un avvocato, ma solamente una persona che ci è passata, quindi potranno essere presenti inesattezze o cose non completamente corrette (e di cui non mi sono accorto e che non hanno comportato problemi); la regola è sempre una: DOCUMENTATEVI da più fonti, anche se vi sembra di leggere le stesse cose.&lt;br /&gt;
Allora, partiamo da zero... vi consegnano la lettera di licenziamento, questo può essere in tronco (immediatamente esecutivo e dovrete lasciare la sede di lavoro in giornata) o con preavviso (tra tot tempo sarete a spasso).&lt;br /&gt;
Se il licenziamento è in tronco per giusta causa vuole dire che l&#39;avete fatta grossa o che qualcuno l&#39;ha sparata grossa... io per fortuna non sono tra questi.&lt;br /&gt;
Licenziamento con motivazione soggettiva vi dà il diritto di avere un preavviso (probabilmente ci devono essere delle lettere di ammonizione/richiamo precedenti), se non ve lo danno dovrebbe esservi versata l&#39;indennità e varia a seconda del vostro livello e degli anni di servizio (sentite i sindacati o leggetevi il contratto nazionale a cui eravate soggetti); è comunque una motivazione comportamentale vostra che viola il contratto (spesso insubordinazione, liti e/o percosse), ma meno grave del precedente.&lt;br /&gt;
Licenziamento con motivazione oggettiva, ovvero la vostra società per qualche motivo deve/vuole farvi fuori... la più classica è la riorganizzazione aziendale con varie scusanti che si devono provare in caso di vertenza.&lt;br /&gt;
Ora proseguirò parlando della mia esperienza, quindi licenziamento oggettivo, per riorganizzazione aziendale, in una società piccola con meno di 16 dipendenti e quindi solamente con la tutela obbligatoria... la tutela reale è quella che si basa sull&#39;articolo 18 e riguarda solamente le società con almeno 16 dipendenti.&lt;br /&gt;
Ora partiamo con le code, sicuramente non saranno un problema con tutto il tempo libero che vi sarete ritrovati... fatevi un giro per sindacati con la vostra lettera di licenziamento ed un libro da leggere mentre aspettate, girateli tutti (cgil, cisl e uil), sapranno dirvi se le cause sono lecite e corrette oppure se potete sperare di ottenere del denaro a titolo di risarcimento per il danno subito aprendo una vertenza (la tutela obbligatoria prevede solamente un indennizzo economico... ed il valore è compreso tra le 2,5 e le 6 mensilità). E&#39; possibile anche che nella lettera di licenziamento non vi siano le motivazioni e/o queste siano abbastanza oscure e/o mascherate, tentando di farlo passare come valido mentre non lo è... in questo caso entro 15 giorni dalla lettera dovete inviare una raccomandata in cui chiedete i chiarimenti che vi spettano; il datore di lavoro ha 7 giorni per rispondervi pena la nullità del provvedimento.&lt;br /&gt;
Ora che sapete quello potreste ottenere, e magari vi ha tirato un po&#39; su il morale sapere che qualche soldo potrebbe rientrare (sempre meglio di niente no?!? peggio può andare solamente in altri campi dato che non avendo un lavoro non può peggiorare), c&#39;è da rimboccarsi le maniche per accedere agli ammortizzatori sociali... ma questo sarà oggetto della prossima puntata.&lt;br /&gt;
&lt;br /&gt;
A presto!</content><link rel='replies' type='application/atom+xml' href='http://smanettonex.blogspot.com/feeds/12807450323297873/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://smanettonex.blogspot.com/2012/02/il-licenziamento-cao.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/12807450323297873'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/12807450323297873'/><link rel='alternate' type='text/html' href='http://smanettonex.blogspot.com/2012/02/il-licenziamento-cao.html' title='Il licenziamento (ca##o!!!)'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8668187457124892978.post-3261432038415435309</id><published>2010-12-15T20:45:00.005+01:00</published><updated>2010-12-16T14:59:38.594+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="AGPF"/><category scheme="http://www.blogger.com/atom/ns#" term="Alice"/><category scheme="http://www.blogger.com/atom/ns#" term="crack"/><category scheme="http://www.blogger.com/atom/ns#" term="FastWeb"/><category scheme="http://www.blogger.com/atom/ns#" term="psk"/><category scheme="http://www.blogger.com/atom/ns#" term="security"/><category scheme="http://www.blogger.com/atom/ns#" term="Telecom"/><category scheme="http://www.blogger.com/atom/ns#" term="WiFi"/><category scheme="http://www.blogger.com/atom/ns#" term="WPA"/><title type='text'>Considerazioni su FastWeb e su Alice... WiFi security</title><content type='html'>Visto che in molti mi chiedono informazioni sulla protezione delle loro reti WiFi, gli consiglio di andarsi a rileggere il mio post &quot;&lt;a href=&quot;http://smanettonex.blogspot.com/2010/09/le-reti-wifi-configurazione-e.html&quot;&gt;Le reti WiFi... configurazione e considerazioni&lt;/a&gt;&quot;... qui è possibile trovare tutto quello che serve per proteggersi se vi siete comprati un router &quot;decente&quot;.&lt;br /&gt;
Se invece siete clienti FastWeb o Telecom... condolianze, la prossima volta sceglierete la connessione in base ad altri canoni rispetto a quelli utilizzati fin&#39;ora... A parte gli scherzi, quello che ho scritto prima era per sdrammatizzare un po&#39;, ma un utente tecnicamente poco valido e poco sicuro di sè che si ritrovasse con uno dei due gestori menzionati avrebbe dei problemi a proteggere la propria rete, principalmente per due fattori:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;l&#39;utente classico viene considerato tecnicamente incapace e quindi i settaggi sono &quot;standard&quot; e con tutto abilitato affinchè sia semplice l&#39;utilizzo per chi esegue la connessione la prima volta; &lt;/li&gt;
&lt;li&gt;il router viene fornito con il WiFi abilitato e funzionante con PSK di default (diversa per ogni router... ma attenzione alla parola DEFAULT);&lt;/li&gt;
&lt;li&gt; spesso questi router hanno firmware brandizzati e poche sono le opzioni su cui si ha pieno controllo... tutto questo sempre per facilitare l&#39;utente medio, oltre che quello esperto che se ne potrà approfittare.&lt;/li&gt;
&lt;/ul&gt;Ora passiamo alla parte &quot;interessante&quot; ed al significato della frase &quot;PSK di DEFAULT&quot;.&lt;br /&gt;
Siccome si considera che l&#39;utente medio non sia tecnicamente cosciente di cosa sia un router e sia incapace di configurarlo correttamente, anche seguendo un photo/video tutorial (considerazione purtroppo corretta in molti casi visto che per molti dover configurare qualcosa è una scocciatura), da questi due fornitori di servizi è stata fatta la scelta di fornire appparecchiature già configurate e pronte a svolgere tutte le funzioni richieste ad un prodotto di fascia medio/bassa, bloccando opzioni ed impostazioni che un utente normale non comprenderebbe e non sarebbe in grado di restorare in caso di modifiche e successivi problemi di funzionamento.&lt;br /&gt;
Questo ha fatto sì che le case si siano riempite di router con l&#39;accesso WiFi abilitato, con protocollo WPA (livello di sicurezza buono considerando una PSK robusta) e con delle PSK diverse da dispositivo a dispositivo.&lt;br /&gt;
Essendo impensabile impostare manualmente una PSK diversa per ogni apparecchiatura (e fornirla poi scritta su di un foglio, assieme al SSID, al cliente affinchè possa collegarsi), si è pensato di sviluppare un algoritmo che dal SSID e dal numero di serie dell&#39;apparecchio (legato al MAC) fornisse una PSK univoca utilizzando numeri costanti &quot;segreti&quot; e contenuti nel firmware... tutto questo è stato ottimo finchè i firmware dei router non sono stati sottoposti a reverse engineering, permettendo di venire a conoscenza dei così detti &quot;magic number&quot; e di come questa PSK venisse calcolata.&lt;br /&gt;
Al tempo attuale in cui sto scrivendo il documento, non ci sono più router (FastWeb o Alice) considerabili sicuri utilizzando questo sistema, i firmware vengono puntualmente &quot;reversati&quot; ed i nuovi &quot;magic number&quot; od algoritmi di generazione delle chiavi diventano di dominio pubblico, permettendo di venire a conoscenza delle PSK con metodi più o meno semplici.&lt;br /&gt;
L&#39;unico consiglio che posso dare a chi possiede questo tipo di apparecchiatura è quello di cambiare tutto il modificabile, sempre che il router sia d&#39;accordo, ed andare ad agire sul nome del SSID, sulle impostazioni e SICURAMENTE sulla PSK.&lt;br /&gt;
Come conclusione vi rendo disponibili un po&#39; di link a risorse esterne per testare se anche i vostri router, in configurazione di default, sono vulnerabili o meno agli attacchi &quot;pubblici&quot; ed ormai largamente conosciuti.&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;&lt;a href=&quot;http://www.clshack.it/wpa-alice-and-fasteb-reverse&quot;&gt;http://www.clshack.it/wpa-alice-and-fasteb-reverse&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.gibit.net/forum/viewtopic.php?f=10&amp;amp;t=260&quot;&gt;http://www.gibit.net/forum/viewtopic.php?f=10&amp;amp;t=260&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.evilsocket.net/1126/script-per-il-calcolo-della-chiave-wpa-nei-router-fastweb-pirelli.html&quot;&gt;http://www.evilsocket.net/1126/script-per-il-calcolo-della-chiave-wpa-nei-router-fastweb-pirelli.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.evilsocket.net/1173/script-per-il-calcolo-della-chiave-wpa-dei-router-alice-gate-voip-2-plus-wi-fi.html&quot;&gt;http://www.evilsocket.net/1173/script-per-il-calcolo-della-chiave-wpa-dei-router-alice-gate-voip-2-plus-wi-fi.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://wifiresearchers.wordpress.com/2010/06/02/alice-agpf-lalgoritmo/&quot;&gt;http://wifiresearchers.wordpress.com/2010/06/02/alice-agpf-lalgoritmo/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.nsai.it/tag/php-script-alice/&quot;&gt;http://www.nsai.it/tag/php-script-alice/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.gibit.net/forum/viewtopic.php?f=10&amp;amp;t=3&quot;&gt;http://www.gibit.net/forum/viewtopic.php?f=10&amp;amp;t=3&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.become-hacker.com/crack-alice-wpa-il-tool-e-online/&quot;&gt;http://www.become-hacker.com/crack-alice-wpa-il-tool-e-online/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.become-hacker.com/crack-fastweb-wpa-il-tool-e-online/&quot;&gt;http://www.become-hacker.com/crack-fastweb-wpa-il-tool-e-online/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.salvatorefresta.net/index.php/tools&quot;&gt;http://www.salvatorefresta.net/index.php/tools&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;br /&gt;
Alla prossima!</content><link rel='replies' type='application/atom+xml' href='http://smanettonex.blogspot.com/feeds/3261432038415435309/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://smanettonex.blogspot.com/2010/12/considerazioni-su-fastweb-e-su-alice.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/3261432038415435309'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/3261432038415435309'/><link rel='alternate' type='text/html' href='http://smanettonex.blogspot.com/2010/12/considerazioni-su-fastweb-e-su-alice.html' title='Considerazioni su FastWeb e su Alice... WiFi security'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8668187457124892978.post-3859949544688088350</id><published>2010-10-08T20:38:00.001+02:00</published><updated>2010-12-17T11:07:34.648+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="fast-track"/><category scheme="http://www.blogger.com/atom/ns#" term="metasploit"/><category scheme="http://www.blogger.com/atom/ns#" term="meterpreter"/><category scheme="http://www.blogger.com/atom/ns#" term="nmap"/><category scheme="http://www.blogger.com/atom/ns#" term="penetration"/><category scheme="http://www.blogger.com/atom/ns#" term="pentest"/><category scheme="http://www.blogger.com/atom/ns#" term="security"/><title type='text'>Fast-Track, automatizzare un pen test</title><content type='html'>Visto che essendo un security engineer mi occupo di sicurezza in generale, e questa spazia dalla vulnerability analysis al testing intrusion, e dalla difesa perimetrale all&#39;identificazione degli attacchi, inizio una nuova serie di post che si dedicheranno a queste tecniche ed all&#39;approfondimento degli strumenti ritenuti più validi e/o semplici da utilizzare.&lt;br /&gt;
Ora facciamo una piccola introduzione a cos&#39;è un pentest... è una procedura atta a verificare la sicurezza di un sistema cercando di penetrarlo; una delle sfide maggiori è automatizzare questo tipo di test per eseguirlo in maniera automatica sopra i sistemi da verificare.&lt;br /&gt;
L&#39;automatizzazione è una lama a doppio taglio perchè, oltre a semplificare di molto le procedure di test, permette ai cracker ed agli script kiddies di ottenere velocemente una lista di macchine facilmente compromissibili su di una rete.&lt;br /&gt;
Logicamente tutto quello che vedremo o faremo è nell&#39;ottica di studio od in seguito a richiesta, ed è possible farlo solamente dopo aver ottenuto un&#39;autorizzazione scritta dell&#39;interessato per potersi tutelare in caso di problemi legali... se non lavorate nel campo della sicurezza limitatevi ai computer entro le vostre mura domestiche.&lt;br /&gt;
Ed ora partiamo con un buon software opensource...  &lt;a href=&quot;http://www.secmaniac.com/download/&quot;&gt;Fast-Track&lt;/a&gt;, scritto in Python e che si basa su metasploit per l&#39;esecuzione dell&#39;attacco.&lt;br /&gt;
La seguente procedura è valida per macchine con distribuzioni Debian-like.&lt;br /&gt;
Prima di tutto è necessario scaricare ed installare ruby, base di metasploit, sqlite3, nmap, logicamente metasploit 3, che verrà prelevato tramite cvs, ed infine Fast-Track, sempre tramite cvs:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;apt-get install ruby libruby rdoc libyaml-ruby libzlib-ruby libopenssl-ruby libdl-ruby libiconv-ruby rubygems&lt;/li&gt;
&lt;li&gt;apt-get install sqlite3 nmap&lt;/li&gt;
&lt;li&gt;svn co https://metasploit.com/svn/framework3/trunk/&lt;/li&gt;
&lt;li&gt;svn co http://svn.thepentest.com/fasttrack/&lt;/li&gt;
&lt;li&gt;python setup.py install&lt;/li&gt;
&lt;/ul&gt;Durante l&#39;installazione verranno richieste alcune informazioni relative al percorso di installazione di metasploit; se qualcosa non dovesse andare a buon fine sappiate che avete bisogno dei seguenti moduli python: &lt;span onmouseout=&quot;_tipoff()&quot; onmouseover=&quot;_tipon(this)&quot;&gt;&lt;span class=&quot;google-src-text&quot; style=&quot;direction: ltr; text-align: left;&quot;&gt;PExpect, FreeTDS, PYMSSQL, ClientForms, Beautiful Soup, PyMills e Psyco&lt;/span&gt;&lt;/span&gt;&lt;span onmouseout=&quot;_tipoff()&quot; onmouseover=&quot;_tipon(this)&quot;&gt;&lt;/span&gt;.&lt;br /&gt;
A questo punto è possibile eseguire Fast-Track in maniera interattiva:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;python fast-track.py --i&lt;/li&gt;
&lt;/ul&gt;Le prime operazioni da fare sono gli aggiornamenti (opzione 1) completi (opzione 10) di Fast-Track. Da adesso in poi è possibile lanciare gli attacchi su range di indirizzi IP (opzione 2) specificati secondo la sintassi di nmap; quindi scegliendo il bind shell (opzione 1) verranno tentati attacchi utili ad exploitare una shell sulla macchina target. Nel caso non ne venissero trovati verrà mostrato un messaggio &quot;No sessions&quot;.&lt;br /&gt;
Per conoscere quali plugin sono stati utilizzati si può utilizzare il comando &quot;sessions --v&quot; e con &quot;sessions --i 1&quot; si accede alla prima macchina che è possibile penetrare con la relativa vulnerabilità ritrovandosi all&#39;interno di meterpreter.&lt;tt&gt;&lt;br /&gt;
&lt;/tt&gt;Una volta all&#39;interno di meterpreter è possibile utilizzare diversi comandi utili per recuperare informazioni sulla macchina target:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;hashdump - mostra il contenuto del database SAM della macchina compromessa (che può quindi essere sottoposto ad un attacco offline utilizzando uno strumento come John the Ripper per individuare le password);&lt;/li&gt;
&lt;li&gt;upload - carica un file o una directory utili ai fini di compromettere ulteriori macchine o creare backdoor (ad esempio un cracker potrebbe caricare ed eseguire processi a proprio piacimento);&lt;/li&gt;
&lt;li&gt;keyscan_start , keyscan_stop , keyscan_dump - vengono utilizzati per catturare la digitazione sulla tastiera della macchina compromessa ed eventualmente venire a conoscenza di login e password utilizzati dalla vittima;&lt;/li&gt;
&lt;li&gt;shell - fornisce un prompt dei comandi sulla macchina compromessa.&lt;br /&gt;
&lt;/li&gt;
&lt;/ul&gt;Un esempio di utilizzo classico della shell è relativo alla creazione di un nuovo utente con cui il cracker si assicura l&#39;accesso alla macchina anche in successive occasioni creandosi un utente con &quot;net user cracker password /ADD&quot;.&lt;br /&gt;
Logicamente il nostro obbiettivo è identificare le possibili vulnerabilità del sistema per avvisare il nostro committente di cosa deve fare per proteggersi... in questo caso, per risalire alle informazioni che ci interessano dovremo riprendere l&#39;output del comando &quot;sessions --v&quot;, verificare il nome della vulnerabilità segnalata da metasploit ed andare a ricercarne la causa, con un&#39;eventuale spiegazione e la rispettiva soluzione (queste in genere sono l&#39;installazione di una patch o la riconfigurazione/disabilitazione del servizio se non fossero disponibili patch).&lt;br /&gt;
Per oggi è tutto, quello che volevo dirvi l&#39;ho detto e quello che vorrei ricordarmi l&#39;ho scritto, quindi, come detto all&#39;inizio, divertitevi sui vostri PC, ma non fate guai in giro dato che i problemi che ne potrebbero scaturire sono di tipo penale.</content><link rel='replies' type='application/atom+xml' href='http://smanettonex.blogspot.com/feeds/3859949544688088350/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://smanettonex.blogspot.com/2010/10/fast-track-automatizzare-un-pen-test.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/3859949544688088350'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/3859949544688088350'/><link rel='alternate' type='text/html' href='http://smanettonex.blogspot.com/2010/10/fast-track-automatizzare-un-pen-test.html' title='Fast-Track, automatizzare un pen test'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8668187457124892978.post-8322634064933462514</id><published>2010-09-25T02:32:00.009+02:00</published><updated>2010-12-16T11:54:01.106+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="airodump"/><category scheme="http://www.blogger.com/atom/ns#" term="kismet"/><category scheme="http://www.blogger.com/atom/ns#" term="WEP"/><category scheme="http://www.blogger.com/atom/ns#" term="WiFi"/><category scheme="http://www.blogger.com/atom/ns#" term="WPA"/><category scheme="http://www.blogger.com/atom/ns#" term="WPA2"/><title type='text'>I tool per le analisi delle reti WiFi</title><content type='html'>Visto che ho cominciato a parlare delle reti WiFi, continuiamo con la loro analisi e con gli strumenti necessari all&#39;identificazione.&lt;br /&gt;
Prima di tutto una introduzione: ogni dispositivo WiFi, per poterlo usare in modalità &quot;avanzata&quot; con questi tool, deve supportare determinate modalità; non tutte le periferiche possono farlo e soprattutto queste funzioni possono essere state implementate in release più recenti del software o dei driver (nel kernel od a parte)... quindi prima di pensare che non siate in grado di ottenere i risultati che volete prestate attenzione ad utilizzare release di software, driver e kernel aggiornati.&lt;br /&gt;
Adesso una piccola considerazione... i tool più diffusi e documentati si trovano su linux; l&#39;unico tool degno di nota, per le analisi dello spettro di frequenze sotto windows, trovo che sia NetStumbler, ma questa è un&#39;opinione altamente personale personale... ci sono dei porting per windows dei tool linux, ma io preferisco utilizzarli sotto il loro sistema operativo nativo.&lt;br /&gt;
Ora passiamo ai tool che si utilizzano sotto linux; sono tool completi e che coprono la maggior parte delle necessità, logging compreso e devono essere necessariamente utilizzati dall&#39;utente amministrativo, quindi da root. I due principali sono:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;kismet;&lt;/li&gt;
&lt;li&gt;airodump.&lt;/li&gt;
&lt;/ul&gt;&lt;a href=&quot;http://www.kismetwireless.net/&quot;&gt;kismet&lt;/a&gt; è il software più complesso, si basa su di un&#39;interfaccia testuale a finestre, visualizza le reti presenti, gli eventuali client connessi, la potenza del segnale, il canale utilizzato e molte altre informazioni utili oltre che eseguire la cattura del traffico; ha la possibilità di essere collegato a dispositivi GPS per localizzare le reti individuate e ci sono anche dei tool che dai log permettono di importare gli AP all&#39;interno di google maps o google earth (&lt;a class=&quot;gs-title&quot; href=&quot;http://code.google.com/p/kisgearth/&quot; target=&quot;_top&quot;&gt;kisgearth&lt;/a&gt;&lt;a href=&quot;http://code.google.com/p/kisgearth/&quot; style=&quot;color: black; text-decoration: none;&quot;&gt; e &lt;/a&gt;&lt;a class=&quot;gs-title&quot; href=&quot;http://code.google.com/p/pykismetearth/&quot; target=&quot;_top&quot;&gt;pykismetearth&lt;/a&gt;).&lt;br /&gt;
airodump fa parte della suite di &lt;a href=&quot;http://www.aircrack-ng.org/&quot;&gt;aircrack-ng&lt;/a&gt; ed è un tool minimale, indirizzato principalmente ad individuare le reti WiFi, il loro SSID, il mac address, il canale e se vi sono client connessi.&lt;br /&gt;
Entrambi gli strumenti sono ottimi per eseguire le analisi prima dell&#39;installazione di una propria apparecchiatura WiFi per trovare i canali liberi e ridurre al minimo le possibilità di interferenze con altre apparecchiature già presenti od che verranno installate in seguito dai vostri vicini.&lt;br /&gt;
L&#39;utilizzo di kismet è più complessa perchè offre molte possibilità di configurazione e personalizzazione, quindi è da configurare prima dell&#39;utilizzo e la sua configurazione risiede all&#39;interno del file /etc/kismet/kismet.conf... la parte più importante e sicuramente da impostare prima dell&#39;utilizzo è il parametro ncsource che rappresenta l&#39;interfaccia wireless da mettere in modalità promiscua.&lt;br /&gt;
Io ho eseguito i test con varie schede e riporto le linee necessarie per configurare la sorgente:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;Belkin F5D7011 (Broadcom b43): ncsource=wlanX:&lt;span id=&quot;search&quot; style=&quot;visibility: visible;&quot;&gt;name=broadcom&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;Intel IPW2200: ncsource=ethX:type=ipw2200&lt;/li&gt;
&lt;li&gt;Zydas ZD1211: ncsource=wlanX:type=zd1211 &lt;/li&gt;
&lt;/ul&gt;Una volta configurato il source è necessario lanciare il comando: kismet&lt;br /&gt;
Invece airodump non ha alcun file di configurazione, ma tutti i parametri vengono passati dalla linea di comando; prima è necessario porre l&#39;interfaccia in modalità di monitor e successivamente si inzia a loggare il traffico con i seguenti comandi: airmon-ng start ethX &amp;amp;&amp;amp; airodump-ng ethX&lt;br /&gt;
Un&#39;ultima considerazione da fare riguarda la pratica chiamata &quot;packet injection&quot;; questa è una tecnica molto particolare perchè permette di creare dei pacchetti secondo ke proprie esigenze ed inviarli tramite la propria scheda wireless... ricordatevi che normalmente i driver del kernel, in versione originale, non permettono questa tecnica, quindi per poterla utilizzare è spesso necessario patchare i driver od utilizzare distribuzioni che utilizzano driver già modificati (ad esempio la distribuzione backtrack).&lt;br /&gt;
Per la packet injection (aireplay-ng --test &amp;lt;ath|eth|wlan&amp;gt;X) ho fatto dei test con le schede WiFi che possiedo e varie versioni di BackTrack... i risultati sono qui riportati:&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;Belkin F5D7011: BT3 final con modulo bcm43xx - KO, BT4 final - OK, BT4 r1 con modulo b43 - non è supportato il cardbus, quindi non funziona&lt;/li&gt;
&lt;li&gt;Intel IPW2200: BT3 final - KO, BT4 final - KO, BT4 r1 - KO&lt;/li&gt;
&lt;li&gt;Zydas ZD1211:BT3 final - OK, BT4 final - OK, BT4 r1 - OK&lt;/li&gt;
&lt;/ul&gt;Direi che anche oggi le informazioni essenziali da cui partire sono state fornite... in rete c&#39;è moltissima documentazione, quindi non è sicuramente un problema trovare gli approfondimenti.</content><link rel='replies' type='application/atom+xml' href='http://smanettonex.blogspot.com/feeds/8322634064933462514/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://smanettonex.blogspot.com/2010/09/i-tool-per-le-analisi-delle-reti-wifi.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/8322634064933462514'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/8322634064933462514'/><link rel='alternate' type='text/html' href='http://smanettonex.blogspot.com/2010/09/i-tool-per-le-analisi-delle-reti-wifi.html' title='I tool per le analisi delle reti WiFi'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8668187457124892978.post-6233696683270516493</id><published>2010-09-23T20:05:00.003+02:00</published><updated>2010-12-16T12:41:55.957+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="WEP"/><category scheme="http://www.blogger.com/atom/ns#" term="WiFi"/><category scheme="http://www.blogger.com/atom/ns#" term="WPA"/><category scheme="http://www.blogger.com/atom/ns#" term="WPA2"/><title type='text'>Le reti WiFi... configurazione e considerazioni</title><content type='html'>Piccola introduzione... le comunicazioni wireless sono rilevabili da chiunque senza che l&#39;interessato possa accorgersene ed avvengono a determinate frequenze, queste sono stabilite dai canali (11 o 13 a seconda del posto in cui si vive). Affinchè trasmissione e ricezione siano di buona qualità non devono esserci interferenze; per ridurre al minimo le possibili interferenze è necessario trovare le frequenze libere &quot;più libere&quot; da utilizzare e quindi prima di procedere alla scelta del canale si deve rilevare con uno scanner la presenza di altri eventuali access point; una volta appuntati quelli presenti ed i canali utilizzati, si sceglierà il proprio in modo che sia il più possibile lontano dagli altri e cercando comunque di evitare sovrapposizioni; questo aiuta a massimizzare l&#39;area coperta riducendo le interferenze (ricevute e prodotte per le apparecchiature già presenti).&lt;br /&gt;
Ora passiamo alla parte interessante e che ha a che fare con la sicurezza delle comunicazioni wireless ormai spesso presenti nelle nostre case vista la comodità di collegamento che offrono...&lt;br /&gt;
La configurazione di un router non deve assolutamente tralasciare la sicurezza della connettività dato che per la normativa italiana (ed anche altre) sei legalmente responsabile delle azioni  compiute dal tuo indirizzo IP; inoltre non è previsto che tu sia  &quot;inconsapevole&quot; delle azioni fatte o tecnicamente incapace di proteggere la tua linea... per la legge l&#39;ignoranza non è una scusante.&lt;br /&gt;
Per mantenere il controllo della propria linea e sapere cosa succede sulla propria rete è essenziale ed obbligatorio utilizzare sistemi che impediscano a chiunque di infiltrarsi, inoltre per la propria privacy è essenziale nascondere il traffico da occhi indiscreti... tutto questo viene risolto utilizzando uno standard crittografico per la trasmissione e ricezione dei dati.&lt;br /&gt;
Prima di passare all&#39;analisi vera e propria degli standard crittografici, analizziamo prima i dati necessari per collegarsi ad una rete WiFi facndo alcune considerazioni anche sugli altri parametri al fine di aumentare la sicurezza... il SSID e la Key/PSK/certificato se presente.Le prime considerazioni che possiamo fare riguardano il SSID; questo è il nome della connessione WiFi che verrà visualizzato, o deve essere impostato, da chi tenta di connettersi alla rete. E&#39; sempre consigliabile modificare quello di default, se possibile, ed inserirne uno di fantasia... è sconsigliato inserire nomi o cognomi che vi identifichino in maniera certa; se per qualcuno siete voi l&#39;obbiettivo, tenterà finchè non riuscirà ad ottenere quello che vuole ed anche se si è abili, non è bello fare da bersaglio.&lt;br /&gt;
Un secondo passo riguarda la modalità di diffusione del SSID: normale o nascosto. Siccome per collegarsi si deve conoscere il SSID della rete, impostarlo al valore nascosto può aiutarci a tenere la rete nascosta, ma questo solamente finchè non si collega qualcuno di autorizzato... nel momento in cui avviene la connessione, ovvero in fase  di handshake, questo viene trasmesso e se qualcuno è in fase di sniffing può facilmente recuperarlo.&lt;br /&gt;
Ora passiamo alle possibili connessioni ed ai protocolli crittografici cercando di spiegarli in seguito:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;open/not crypted;&lt;/li&gt;
&lt;li&gt;WEP (64/128 e 256bit, ma non l&#39;ho mai visto dato che è stato subito superato da WPA);&lt;/li&gt;
&lt;li&gt;WPA (PSK/personal o Radius/enterprise basato su TKIP);&lt;/li&gt;
&lt;li&gt;WPA2 (PSK/personal o Radius/enterprise basato su AES).&lt;/li&gt;
&lt;/ul&gt;Una rete di tipo open od uncrypted offre la possibilità, a chiunque conosca il proprio SSID, di collegarsi e di non crittografare il traffico lasciandolo esposto a chiunque in ascolto... queste considerazioni fanno sì che sia la configurazione più insicura. Inoltre è da considerare il fatto che molte apparecchiature sono in grado di collegarsi senza neanche chiedere conferma all&#39;utente (spesso dipende dalla configurazione del dispositivo) e rendendo la propria rete un &quot;porto di mare&quot;.&lt;br /&gt;
I primi standard crittografici erano nati più per proteggere il traffico che la propria rete, in modo da impedire a persone non autorizzate l&#39;accesso ai dati ed in seguito alle reti WiFi.&lt;br /&gt;
Il primo protocollo nato è stato il WEP; attualmente è considerato un protocollo obsoleto in quanto ha vulnerabilità note che permettono di risalire alla chiave di cifratura analizzando semplicemente il traffico che viene generato tra il client e l&#39;access point. L&#39;utilizzo è altamente sconsigliato, ma in alcuni casi i dispositivi obsoleti permettono solamente questo livello di crittografia... è inoltre l&#39;unico che permette la creazione di rete WiFi diffuse da più access point collegati tra loro via radio (e non via ethernet); questa particolare configurazione si chiama W.D.S. (Wireless Distribution System) e pochi router la supportano.&lt;br /&gt;
L&#39;evoluzione del WEP, per sopperire alle sue mancanze e correggerne le vulnerabilità, è stata la famiglia di protocolli WPA che al momento è la più robusta conosciuta; questa permette di crittografare il traffico, impedisce l&#39;accesso a chi non è a conoscenza delle credenziali necessarie alla connessione e non è possibile risalire alla PSK attraverso la semplice analisi del traffico. WPA è stato un protocollo di passaggio, transitorio, e nato per sopperire alla veloce &quot;caduta&quot; del WEP; le debolezze del WEP sono state superate grazie all&#39;utilizzo di un handshake in 4 fasi, l&#39;utilizzo di funzioni di hash legate al SSID e la crittografia TKIP. In realtà il protocollo che era in studio e che avrebbe dovuto sostituire il WEP era denominato 802.11i e prevedeva l&#39;utilizzo della cifratura AES, ma a quei tempi non era ancora pronto... quando è stato pronto è giunto sul mercato e chiamato WPA2.&lt;br /&gt;
A livello di protocollo WPA/WPA2 possiamo subito notare due sotto tipologie:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;PSK/personal utilizzato a livello domestico e vulnerabile ad attacchi di tipo brute force;&lt;/li&gt;
&lt;li&gt;Radius/enterprise utilizzato all&#39;interno di ambienti in cui sono presenti server radius di appoggio con la possibilità di autenticazione tramite l&#39;utilizzo dei certificati, quindi invulnerabile ad attacchi di tipo brute force.&lt;/li&gt;
&lt;/ul&gt;Come detto, i protocolli della famiglia WPA sono attualmente i più sicuri anche se quelli di tipologia personal sono attaccabili attraverso metodi di brute forcing, ma la complessità numerica legata all&#39;algoritmo fa supporre che attacchi di questo tipo siano computazionalmente molto pesanti e lunghi da portare a termine.&lt;br /&gt;
Logicamente, in queste condizioni, è necessario che la Key o PSK sia scelta adeguatamente e non dovrebbe essere composta da parole semplici e presenti all&#39;interno di un dizionario, ma formata da stringhe contenenti lettere maiuscole, minuscole, numeri e simboli... in poche parole una buona password policy rende la vita molto complicata a chi vuole introdursi all&#39;interno della nostra rete (come anche in tutte le altre situazioni).&lt;br /&gt;
Per oggi direi che è tutto... a presto!</content><link rel='replies' type='application/atom+xml' href='http://smanettonex.blogspot.com/feeds/6233696683270516493/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://smanettonex.blogspot.com/2010/09/le-reti-wifi-configurazione-e.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/6233696683270516493'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/6233696683270516493'/><link rel='alternate' type='text/html' href='http://smanettonex.blogspot.com/2010/09/le-reti-wifi-configurazione-e.html' title='Le reti WiFi... configurazione e considerazioni'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8668187457124892978.post-5507881576338122114</id><published>2010-09-12T18:50:00.001+02:00</published><updated>2010-10-05T12:08:02.449+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="apt-get"/><category scheme="http://www.blogger.com/atom/ns#" term="clonare"/><category scheme="http://www.blogger.com/atom/ns#" term="debian"/><category scheme="http://www.blogger.com/atom/ns#" term="dpkg"/><category scheme="http://www.blogger.com/atom/ns#" term="duplicare"/><category scheme="http://www.blogger.com/atom/ns#" term="installazione"/><category scheme="http://www.blogger.com/atom/ns#" term="linux"/><title type='text'>Duplicare un server Debian</title><content type='html'>Oggi ci occupiamo di come duplicare un server Debian running, ma prima dobbiamo definire la parola &quot;duplicare&quot;... per duplicare non si intende clonare completamente la macchina (quindi compresa la configurazione), ma ottenere un sistema installato da nuovo con gli stessi pacchetti che sono sulla macchina presa come master.&lt;br /&gt;
Ricordo che come per tutte le operazioni critiche è sempre consigliabile fare un backup dei dati vitali... anche se non dovrebbero esserci eventi imprevisti, in questo modo si è certi di non perdere dati vitali qualunque comando venga lanciato.&lt;br /&gt;
I passi che seguiremo sono i seguenti:&lt;br /&gt;
&lt;ol&gt;&lt;li&gt; installare e configurare un sistema secondo le proprie necessità;&lt;/li&gt;
&lt;li&gt;creare una lista dei pacchetti installati;&lt;/li&gt;
&lt;li&gt;installare un sistema base sulla nuova macchina;&lt;/li&gt;
&lt;li&gt;usare la lista dei pacchetti generata in precedenza per ottenerne un sistema in grado di svolgere le stesse funzioni.&lt;/li&gt;
&lt;/ol&gt;A questo punto sappiamo che il punto di partenza è avere un sistema installato come quello che vogliamo creare, ed utilizzeremo quindi la lista dei pacchetti installati su questo per generare il nostro duplicato dato che con alte probabilità saranno stati aggiunti e rimossi determinati pacchetti.&lt;br /&gt;
Un punto importante da considerare è il tipo di distribuzione installata; da un sistema stable noi possiamo clonare/generare un sistema testing, ma da un sistema testing non possiamo generare un sistema stable, o meglio, potrebbero esserci dei problemi a causa della presenza di un maggiore numero di pacchetti nella distribuzione testing e non presenti nella stable.&lt;br /&gt;
Avendo un sistema di partenza dobbiamo prelevare la lista dei pacchetti presenti e per operare con i pacchetti la distribuzione Debian, o altre debian-like, si affidano all&#39;utilizzo del comando &quot;dpkg&quot;; quindi per prelevare la lista dei pacchetti installati procediamo nella seguente maniera:&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;dpkg --get-selections &amp;gt; /tmp/installed.pkg&lt;br /&gt;
&lt;/li&gt;
&lt;/ul&gt;Questo comando restituisce la lista dei pacchetti installati e la scrive all&#39;interno del file /tmp/installed.pkg; di questo file ne avremo bisogno in seguito.&lt;br /&gt;
Ora dobbiamo installare la nuova macchina, ma non mi occuperò di questo procedimento in quanto ci sono molti tutorial che spiegano come procedere... il nostro scopo è solamente quello di arrivare ad avere un sistema base installato da cui proseguire per ottenere il nostro duplicato.&lt;br /&gt;
Una volta installato il sistema base, procediamo all&#39;aggiornamento dei pacchetti già installati con i comandi:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;apt-get update &amp;amp;&amp;amp; apt-get upgrade&lt;/li&gt;
&lt;/ul&gt;A questo punto possiamo occuparci dell&#39;installazione, o rimozione, secondo i pacchetti presenti sul sistema master e, supponendo che il file generato in precedenza sia di nuovo posizionato in /tmp, è necessario eseguire i seguenti comandi:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;dpkg --set-selections &amp;lt; /tmp/installed.pkg &amp;amp;&amp;amp; apt-get -u dselect-upgrade&lt;/li&gt;
&lt;/ul&gt;La prima parte del comando esegue il preselect dei pacchetti presenti nella lista, mentre la seconda parte utilizza apt-get per aggiornare il sistema in base alla lista dei pacchetti forniti da dpkg. A questo punto c&#39;è solamente da aspettare il download e l&#39;installazione, o rimozione, dei pacchetti desiderati.&lt;br /&gt;
L&#39;ultima operazione da eseguire per avere il nuovo sistema funzionante è la configurazione di tutti i pacchetti necessari; qui è possibile procedere in due modi:&lt;br /&gt;
procedere manualmente alla configurazione dei singoli pacchetti;&lt;br /&gt;
eseguire un diff tra i vecchi file di configurazione ed i nuovi, eseguendo sui file solamente le modifiche &quot;appprovate&quot;;&lt;br /&gt;
copiare i file di configurazione dal sistema master su di questo nuovo.&lt;br /&gt;
Il primo sistema è quello più pulito (non vengono trasferite configurazioni obsolete), ma anche il più lungo; il secondo sistema è un buon compromesso, permettendo di agire manualmente sulle singole modifiche e/o decidere quali trasferire; mentre l&#39;ultimo sistema potrebbe lasciare un sistema sporco, trasferendo file obsoleti o non più necessari alla configurazione di determinati pacchetti.&lt;br /&gt;
Ed anche per oggi direi che è tutto, buona clonazione dei sistemi!&lt;br /&gt;
&lt;br /&gt;
P.S.: clonare può anche essere letto come backup del sistema... e come si suol dire: &quot;A buon intenditore, poche parole!&quot;</content><link rel='replies' type='application/atom+xml' href='http://smanettonex.blogspot.com/feeds/5507881576338122114/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://smanettonex.blogspot.com/2010/09/duplicare-un-server-debian.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/5507881576338122114'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/5507881576338122114'/><link rel='alternate' type='text/html' href='http://smanettonex.blogspot.com/2010/09/duplicare-un-server-debian.html' title='Duplicare un server Debian'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8668187457124892978.post-3934625492233431183</id><published>2010-07-05T15:55:00.002+02:00</published><updated>2010-07-08T16:04:10.683+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="gimp"/><category scheme="http://www.blogger.com/atom/ns#" term="HDR"/><category scheme="http://www.blogger.com/atom/ns#" term="image"/><category scheme="http://www.blogger.com/atom/ns#" term="photo"/><category scheme="http://www.blogger.com/atom/ns#" term="script-fu"/><title type='text'>GIMP Scripting - HDR</title><content type='html'>Dato che ormai ho preso un po&#39; di mano con lo scripting in GIMP sto cercando di realizzare degli effetti che mi piacciono da applicare indistintamente alle foto senza dover ripetere continuamente tutte le operazioni.&lt;br /&gt;
L&#39;HDR (High Dynamic Range) è l&#39;effetto che ho scelto; se vogliamo essere pignoli questo effetto necessiterebbe di almeno 3 immagini, scattate con tempi di esposizione diversi, in maniera da avere un&#39;immagine sovraesposta, una normale ed una sottoesposta... unendo queste tre con particolari procedure si ottiene un HDR reale.&lt;br /&gt;
Siccome non sempre è possibile procurarsi facilmente 3 immagini con esposizioni diverse, un po&#39; di tempo fa ho trovato un tutorial che spiegava come ottenere un&#39;immagine simil HDR partendo da un singolo scatto applicandogli vari filtri per simulare la sovra/sotto esposizione ottnendo un buon risultato; trovando la procedura valida ho scriptato il processo spiegato ottenendo l&#39;effetto voluto tramite il seguente&amp;nbsp; script-fu:&lt;br /&gt;
&lt;br /&gt;
&lt;pre style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace; font-size: x-small;&quot;&gt;; Script to make HDR Image from one layer file
;
; The script is located in &quot;&amp;lt;Image&amp;gt; / Script-Fu / SebaX75 / HDR...&quot;
;
; Last changed: 29 Aprile 2010
;
; Copyright (C) 2010 SebaX75 &amp;lt;sebax75 AT yahoo DOT it&amp;gt;
;
; --------------------------------------------------------------------
; 
; Changelog:
;  Version 0.1
;    - Initial version, with manual dodge-burn 
;  Version 0.2
;    - Added dodge-burn code and automated
;
; --------------------------------------------------------------------
;
; This program is free software; you can redistribute it and/or modify
; it under the terms of the GNU General Public License as published by
; the Free Software Foundation; either version 3 of the License, or
; (at your option) any later version.  
; 
; This program is distributed in the hope that it will be useful,
; but WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
; GNU General Public License for more details.
; 
; You should have received a copy of the GNU General Public License
; along with this program; if not, you can view the GNU General Public
; License version 3 at the web site http://www.gnu.org/licenses/gpl-3.0.html
; Alternatively you can write to the Free Software Foundation, Inc., 675 Mass
; Ave, Cambridge, MA 02139, USA.
;

; This part code was got from dodge-burn.scm script-fu (http://registry.gimp.org/files/dodge-burn.scm) by Harry Phillips &amp;lt;script-fu@tux.com.au&amp;gt;
(define (my-layer-dodge-burn    myImage
   myLayer
   modeOp
   thinNum
   thickNum
 )
 ;Initiate some variables
 (let* (
  (firstTemp (car (gimp-layer-copy myLayer 1)))
  (thinTemp)
  (thickTemp)
  (merged)
  )
  ;Rename the layer
  (gimp-drawable-set-name firstTemp &quot;First temp&quot;)
  ;Add the first layer to the image
  (gimp-image-add-layer myImage firstTemp 0)
  ;Desaturate the layer
  (gimp-desaturate firstTemp)
  ;Copy and add the dodge me layer as the thin layer
  (set! thinTemp (car (gimp-layer-copy firstTemp 1)))
  (gimp-image-add-layer myImage thinTemp 0)
  ;Blur the thin layer
  (plug-in-gauss 1 myImage thinTemp thinNum thinNum 0)
  (if (= modeOp 1)
   ;Change the mode of the thin layer to lighten
   (gimp-layer-set-mode thinTemp 10)
   ;Change the mode of the thin layer to darken
   (gimp-layer-set-mode thinTemp 9)
  )
  ;Blur the dodge me layer
  (plug-in-gauss 1 myImage firstTemp thickNum thickNum 0)
  ;Copy the dodge me layer as a new layer
  (set! thickTemp (car (gimp-layer-copy firstTemp 1)))
  ;Add the new layer to the image
  (gimp-image-add-layer myImage thickTemp 1)
  ;Merge the top layer down and keep track of the newly merged layer
  (set! merged (car (gimp-image-merge-down myImage thinTemp 0)))
  ;Change the mode of the dodge copy layer to difference mode
  (gimp-layer-set-mode merged 6)
  ;Merge the top layer down and keep track of the newly merged layer
  (set! merged (car (gimp-image-merge-down myImage merged 0)))
  (if (= modeOp 1)
   (begin
    ;Rename the layer
    (gimp-drawable-set-name merged &quot;Dodge channel&quot;)
    ;Change the mode of the dodge copy layer to dodge mode
    (gimp-layer-set-mode merged 16)
   )
   (begin
    ;Rename the layer
    (gimp-drawable-set-name merged &quot;Burn channel&quot;)
    ;Change the mode of the dodge copy layer to dodge mode
    (gimp-layer-set-mode merged 17)
    ;Invert layer
    (gimp-invert merged)
   )
  )
  ;Return
 )
)

(define (script-fu-SebaX75-HDR      myImage
    layer0
    thinAmount
    thickAmount
 )
;       Start an undo group so the process can be undone with one undo
 (gimp-image-undo-group-start myImage)

 ; Rimuove qualunque selezione
 (gimp-selection-none myImage)

 ; Esegue la normalizzazione del layer principale
 (plug-in-normalize 1 myImage layer0)

 ; Inizializzo le variabili da utilizzare
 (let* ( (layer1()) (layer2()) (layer3()) (layer4()) )

  ; Creo una copia del layer principale, lo aggiungo e lo rinomino
  (set! layer1 (car (gimp-layer-copy layer0 1)))
  (gimp-image-add-layer myImage layer1 0)
  (gimp-drawable-set-name layer1 &quot;Op. 50%&quot;)

  ; Desaturo, inverto ed applico l&#39;effetto chiaritore sfumato al nuovo layer
  (gimp-desaturate layer1)
  (gimp-invert layer1)
  (plug-in-softglow 1 myImage layer1 10 0.75 0.85)

  ; Imposto il merging del layer a &quot;Soft light&quot; con opacita&#39; al 50%
  (gimp-layer-set-mode layer1 SOFTLIGHT-MODE)
  (gimp-layer-set-opacity layer1 50)

  ; Creo una copia del layer modificato, imposto l&#39;opacita&#39; al 75% e lo rinomino
  (set! layer2 (car (gimp-layer-copy layer1 1)))
  (gimp-image-add-layer myImage layer2 -1)
  (gimp-layer-set-opacity layer2 75)
  (gimp-drawable-set-name layer2 &quot;Op. 75%&quot;)

  ; Creo il layer di testa, modifico l&#39;istogramma dei colori, eseguo il merging ed imposto la trasparenza al 40% (valori consigliati 30%-50%)
  (set! layer3 (car (gimp-layer-copy layer0 1)))
  (gimp-image-add-layer myImage layer3 -1)
  (gimp-levels layer3 HISTOGRAM-VALUE 100 255 1.00 0 255)
  (gimp-layer-set-mode layer3 DARKEN-ONLY-MODE)
  (gimp-layer-set-opacity layer3 40)
  (gimp-drawable-set-name layer3 &quot;Top Layer&quot;)

  ; Unisco tutti i layer visibili
  (set! layer4 (car (gimp-image-flatten myImage)))
  (gimp-drawable-set-name layer4 &quot;Last Layer&quot;)

  ;Do the dodge layer first
  (my-layer-dodge-burn myImage layer4 1 thinAmount thickAmount)

  ;Do the burn layer
  (my-layer-dodge-burn myImage layer4 0 thinAmount thickAmount)

  ; Modifico la saturazione/luminanza
  (gimp-hue-saturation layer4 ALL-HUES 0 0 50)

 )

 ;Finish the undo group for the process
 (gimp-image-undo-group-end myImage)

 ; Assicuro l&#39;aggiornamento e la nuova visualizzazione
 (gimp-displays-flush)
)

; Registrazione dello script
(script-fu-register &quot;script-fu-SebaX75-HDR&quot;
 _&quot;&amp;lt;Image&amp;gt;/Script-Fu/SebaX75/HDR...&quot;
 &quot;Applica gli effetti per ottenere un HDR&quot;
 &quot;SebaX75&quot;
 &quot;SebaX75&quot;
 &quot;April 29 2010&quot;
 &quot;*&quot;
 SF-IMAGE &quot;Image&quot;     0
 SF-DRAWABLE     &quot;Drawable&quot;  0
 SF-ADJUSTMENT   _&quot;Thin amount&quot;  &#39;(10 0 1000 1 1 0 1)
 SF-ADJUSTMENT   _&quot;Thick amount&quot; &#39;(25 0 10000 1 1 0 1)
)&lt;/pre&gt;&lt;br /&gt;
Buon HDR a tutti ed alla prossima.</content><link rel='replies' type='application/atom+xml' href='http://smanettonex.blogspot.com/feeds/3934625492233431183/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://smanettonex.blogspot.com/2010/07/gimp-scripting-hdr-dato-che-ormai-ho.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/3934625492233431183'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/3934625492233431183'/><link rel='alternate' type='text/html' href='http://smanettonex.blogspot.com/2010/07/gimp-scripting-hdr-dato-che-ormai-ho.html' title='GIMP Scripting - HDR'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8668187457124892978.post-8163595971126050292</id><published>2010-06-28T15:10:00.009+02:00</published><updated>2010-09-06T11:59:13.032+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="fade"/><category scheme="http://www.blogger.com/atom/ns#" term="gimp"/><category scheme="http://www.blogger.com/atom/ns#" term="image"/><category scheme="http://www.blogger.com/atom/ns#" term="photo"/><category scheme="http://www.blogger.com/atom/ns#" term="script-fu"/><category scheme="http://www.blogger.com/atom/ns#" term="shadow"/><title type='text'>GIMP Scripting - Fade and Shadow</title><content type='html'>Siccome qualcuno potrebbe pensare che questo blog sia stato abbandonato, provvedo a pubblicare qualcosa di nuovo che non è molto impegnativo, ma può fare molto comodo ed essere interessante.&lt;br /&gt;
Non pensate che siano stati abbandonati gli argomenti da sistemista, ma ho accumulato solamente un deciso ritardo perchè le tante bozze presenti sono da revisionare e correggere, alcune anche da terminare.&lt;br /&gt;
Visto che non mi piace farmi mancare &quot;oggetti&quot; scaturiti dalla mia mente e non perdo mai l&#39;abitudine a cercare di arrivare dove altri si sentono a casa loro, mi sono dedicato ad un po&#39; di sano scripting per GIMP, ovvero gli script-foo; questa tipologia di script serve per automatizzare operazioni ricorsive sulle immagini semplificando di molto la vita, ed aumentando moltissimo la velocità, se si devono applicare sempre gli stessi effetti.&lt;br /&gt;
Il primo e più semplice script che ho creato serve per effettuare un effetto fading e shadowing ad un&#39;immagine, ovvero sfumare l&#39;immagine ai bordi, come se fosse un rettangolo arrotondato, ed applicargli l&#39;effetto ombra.&lt;br /&gt;
&lt;br /&gt;
Ecco il codice:&lt;br /&gt;
&lt;pre style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace; font-size: x-small;&quot;&gt;; Script to make fading and shadowing of an image
;
; The script is located in &quot;&amp;lt;Image&amp;gt; / Script-Fu / SebaX75 / Fade &amp;amp; Shadow...&quot;
;
; Last changed: 25 Aprile 2010
;
; Copyright (C) 2010 SebaX75 &amp;lt;sebax75 AT yahoo DOT it&amp;gt;
;
; --------------------------------------------------------------------
; 
; Changelog:
;  Version 0.1
;    - First release
;
; --------------------------------------------------------------------
;
; This program is free software; you can redistribute it and/or modify
; it under the terms of the GNU General Public License as published by
; the Free Software Foundation; either version 3 of the License, or
; (at your option) any later version.  
; 
; This program is distributed in the hope that it will be useful,
; but WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
; GNU General Public License for more details.
; 
; You should have received a copy of the GNU General Public License
; along with this program; if not, you can view the GNU General Public
; License version 3 at the web site http://www.gnu.org/licenses/gpl-3.0.html
; Alternatively you can write to the Free Software Foundation, Inc., 675 Mass
; Ave, Cambridge, MA 02139, USA.
;

(define (script-fu-SebaX75-fade-shadow      myImage
     layer0
     offset_x
     offset_y
     arrotondamento
     riduzione
     sfumatura
     coloreOmbra
 )
;       Start an undo group so the process can be undone with one undo
 (gimp-image-undo-group-start myImage)

 ; Esegue la normalizzazione del layer principale
 (plug-in-normalize 1 myImage layer0)

 ; Rimuove qualunque selezione
 (gimp-selection-none myImage)

 ; Inizializzo le variabili da utilizzare
 (let* (
  (image-width (gimp-drawable-width layer0))
  (image-height (gimp-drawable-width layer0))
  (layer1())
  )

  ;Impostare il colore del primo piano a #444444
  (gimp-context-set-foreground coloreOmbra)
  ;Livello -&amp;gt; Trasparenza -&amp;gt; Aggiungi canale alfa
  (gimp-layer-add-alpha layer0)
  ; Seleziona -&amp;gt; Rettangolo arrotondato (20)
  (gimp-selection-all myImage)
  (script-fu-selection-rounded-rectangle myImage layer0 arrotondamento FALSE)
  ; Seleziona -&amp;gt; Riduci (10)
  (gimp-selection-shrink myImage riduzione)
  ; Seleziona -&amp;gt; Inverti
  (gimp-selection-invert myImage)
  ; Seleziona -&amp;gt; Sfumata (20)
  (gimp-selection-feather myImage sfumatura)
  ;Pressione Canc
  (gimp-edit-clear layer0)
;# Seleziona -&amp;gt; Niente
  ;Livello -&amp;gt; Nuovo livello con colore del primo piano ed in secondo piano
  (set! layer1 (car (gimp-layer-new-from-drawable layer0 myImage)))
  (gimp-image-add-layer myImage layer1 1)
  (gimp-drawable-fill layer1 FOREGROUND-FILL)
  ;Seleziona -&amp;gt; Rettangolo arrotondato (20)
  (gimp-selection-all myImage)
  (script-fu-selection-rounded-rectangle myImage layer1 arrotondamento FALSE)
  ;Seleziona -&amp;gt; Riduci (15)
  (gimp-selection-shrink myImage (+ riduzione 5))
  ;Seleziona -&amp;gt; Inverti
  (gimp-selection-invert myImage)
  ;#Seleziona -&amp;gt; Sfumata (20)
  (gimp-selection-feather myImage sfumatura)
  ;Pressione Canc
  (gimp-edit-clear layer1)
  ;Spostare di posizione il nuovo layer (10,10 pixel)
  (gimp-layer-set-offsets layer1 offset_x offset_y)
  ; Rimuove qualunque selezione
  (gimp-selection-none myImage)
  ; Unisco tutti i layer in uno unico
  (set! layer0 (car (gimp-image-flatten myImage)))
  (gimp-drawable-set-name layer0 &quot;Ombra+Fade&quot;)
 )

 ;Finish the undo group for the process
 (gimp-image-undo-group-end myImage)

 ; Assicuro l&#39;aggiornamento e la nuova visualizzazione
 (gimp-displays-flush)
)

; Registrazione dello script
(script-fu-register &quot;script-fu-SebaX75-fade-shadow&quot;
 _&quot;&amp;lt;Image&amp;gt;/Script-Fu/SebaX75/Fade &amp;amp; Shadow...&quot;
 &quot;Applica gli effetti per ottenere l&#39;ombra ed il fading dell&#39;immagine&quot;
 &quot;SebaX75&quot;
 &quot;SebaX75&quot;
 &quot;April 21 2010&quot;
 &quot;*&quot;
 SF-IMAGE &quot;Image&quot;     0
 SF-DRAWABLE     &quot;Drawable&quot;  0
 SF-ADJUSTMENT   _&quot;Spostamento X&quot; &#39;(10 -4096 4096 1 10 0 1)
 SF-ADJUSTMENT   _&quot;Spostamento Y&quot; &#39;(10 -4096 4096 1 10 0 1)
 SF-ADJUSTMENT   _&quot;Arrotondamento %&quot;     &#39;(20 -4096 4096 1 10 0 1)
 SF-ADJUSTMENT   _&quot;Riduzione&quot;    &#39;(10 0 1024 1 10 0 1)
 SF-ADJUSTMENT   _&quot;Sfumatura&quot;    &#39;(20 0 1024 1 10 0 1)
 SF-COLOR _&quot;Colore ombra&quot; &quot;#444444&quot;
)&lt;/pre&gt;&lt;br /&gt;
Per oggi direi che è tutto... buon divertimento con GIMP.</content><link rel='replies' type='application/atom+xml' href='http://smanettonex.blogspot.com/feeds/8163595971126050292/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://smanettonex.blogspot.com/2010/06/gimp-scripting-fade-and-shadow.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/8163595971126050292'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/8163595971126050292'/><link rel='alternate' type='text/html' href='http://smanettonex.blogspot.com/2010/06/gimp-scripting-fade-and-shadow.html' title='GIMP Scripting - Fade and Shadow'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8668187457124892978.post-6196238286644797397</id><published>2010-04-08T14:43:00.000+02:00</published><updated>2010-07-08T14:47:12.217+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="linux"/><category scheme="http://www.blogger.com/atom/ns#" term="security"/><category scheme="http://www.blogger.com/atom/ns#" term="sudo"/><category scheme="http://www.blogger.com/atom/ns#" term="sudoers"/><title type='text'>Utilizzare sudo per le operazioni di amministrazione</title><content type='html'>Molte distribuzioni user friendly, per abituare l&#39;utente a non utilizzare l&#39;account root, che comporta problemi di sicurezza e permetterebbe al neofita di creare grossi danni, si limitano alla creazione dell&#39;utente &quot;normale&quot; e configurano sudo in maniera che questo possa eseguire tutte le operazioni di amministrazione. In molti casi non è neanche possibile utilizzare il comando &quot;su -&quot; per acquisire i permessi di root perchè l&#39;account amministrativo non ha una password impostata, o comunque non la si conosce (può essere anche impostata ad un valore non riproducibile ad un logon), o magari è in lock.&lt;br /&gt;
L&#39;eliminazione di questa possibilità aiuta anche a difendersi da possibili attacchi di tipo brute force costringendo l&#39;attaccante a conoscere un account utente diverso da quello di root, oltre a dover indovinare la password, che sicuramente sarebbe presente ed in caso di esposizione del servizio ssh limita molto le possibilità di riuscire a penetrare il sistema (ssh, per fortuna, è quasi sempre configurato in modo da non permettere l&#39;accesso ad utenti con password nulla od account in lock). &lt;br /&gt;
Nel caso il nostro sistema fosse configurato in maniera standard e volessimo invece riportarci nella condizione di utilizzare sudo per le operazioni di amministrazione, basta seguire le seguenti informazioni.&lt;br /&gt;
Attenzione, le operazioni che andremo ad eseguire comportano sostanziali modifiche delle credenziali e dei sistemi di autenticazione con la possibilità di perdita dell&#39;accesso amministrativo al sistema; quindi dovete prestare un&#39;elevata attenzione verificando di avere sempre la possibilità (o scappatoia) per eseguire operazioni amministrative. Inoltre, se ci sono dei software che vengono eseguiti con le credenziali di root, non so come possano comportarsi in assenza della password all&#39;account amministrativo... io per adesso non ho mai incontrato problemi, ma sicuramente non ho provato tutte le casistiche, quindi prestate molta attenzione a tutto quello che fate.&lt;br /&gt;
I passi da fare per replicare la soluzione senza utente root saranno principalmente 2, da eseguire con una logica ben determinata per evitare di ritrovarci senza possibilità di eseguire comandi aministrativi (ed in caso di imprevisti o mal configurazione è ALTAMENTE probabile): configurazione di sudo per l&#39;utente &quot;abituale&quot;, con verifica del funzionamento, e rimozione della password dell&#39;utente root.&lt;br /&gt;
Il comando sudo si basa sull&#39;escalation dei privilegi, e quindi viene concessa la possibilità di eseguire comandi amministrativi, da parte degli utenti, in quanto i permessi vengono decisi in base a determinati filtri. Il file di configurazione è /etc/sudoers, ma non è possibile editarlo direttamente con vi, anche se è un file di testo, ma si deve utilizzare il comando visudo che autorizza l&#39;apertura e le modifiche al file.&lt;br /&gt;
I parametri personalizzabili all&#39;interno di questo file sono molti, dalla creazione di gruppi di comandi ammessi, all&#39;autorizzazione dell&#39;esecuzione di questi da parte di singoli utenti o di gruppi di utenti specifici, ma noi ci occuperemo solamente del caso più semplice... un singolo utente che deve eseguire i comandi amministrativi.&lt;br /&gt;
Sfogliando il file, molto spesso si può notare una riga del tipo &quot;%sudo ALL=NOPASSWD: ALL&quot;; questa opzione è molto allettante  in quanto permetterebbe di rimuove la richiesta di digitazione della password dell&#39;utente quando utilizza sudo  (da molti ritenuta una scocciatura), ma comporta un grande problema di sicurezza in quanto chiunque si colleghi con quell&#39;utente, o trovi una shell attiva, può eseguire comandi con privilegi amministrativi.&lt;br /&gt;
La configurazione che interessa nello specifico a noi è relativa all&#39;autorizzazione dell&#39;utente per l&#39;esecuzione dei comandi amministrativi, inserendo la password del proprio account; osservando sempre all&#39;interno del file possiamo notare una linea con &quot;root ALL=(ALL) ALL&quot;, in pratica è quello che interessa a noi, ma dobbiamo farlo per un singolo utente, quindi la linea da aggiungere sarà &quot;utente ALL=(ALL) ALL&quot;... a questo punto il nostro &quot;utente&quot; potra eseguire operazioni amministrative digitando la sua password.&lt;br /&gt;
Dopo aver modificato la configurazione di sudo proviamo ad eseguire un comando che richieda privilegi amministrativi, ad esempio &quot;cat /etc/sudoers&quot;... dovremmo ricevere un &quot;permission denied&quot;; ora proviamo &quot;sudo cat /etc/sudoers&quot;... se tutto è stato configurato correttamente ci viene mostrato il contenuto del file ed a questo punto possiamo continuare.&lt;br /&gt;
Ora veniamo alla parte più semplice: la rimozione della password di root ed il lock dell&#39;accout in modo che non sia possibile utilizzare la password per accedere come root; queste due operazioni sono ottenibili in maniera semplice ed immediata tramite i seguenti comandi:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;passwd -d root;&lt;/li&gt;
&lt;li&gt;passwd -l root;&lt;/li&gt;
&lt;/ul&gt;Ora il vostro sistema è configurato per utilizzare solamente sudo ed avere un account di root senza password... buona sicurezza a tutti.&lt;br /&gt;
&lt;i&gt;&lt;/i&gt;</content><link rel='replies' type='application/atom+xml' href='http://smanettonex.blogspot.com/feeds/6196238286644797397/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://smanettonex.blogspot.com/2010/07/utilizzare-sudo-per-le-operazioni-di.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/6196238286644797397'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/6196238286644797397'/><link rel='alternate' type='text/html' href='http://smanettonex.blogspot.com/2010/07/utilizzare-sudo-per-le-operazioni-di.html' title='Utilizzare sudo per le operazioni di amministrazione'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8668187457124892978.post-8011578183299249357</id><published>2010-02-26T19:49:00.001+01:00</published><updated>2010-03-16T17:17:58.503+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="debian"/><category scheme="http://www.blogger.com/atom/ns#" term="linux"/><category scheme="http://www.blogger.com/atom/ns#" term="virtualbox"/><category scheme="http://www.blogger.com/atom/ns#" term="virtualbox-ose"/><title type='text'>VirtualBox su Debian</title><content type='html'>Benissimo, dopo aver trattato il repository Debian backports ed aver parlato dei sistemi di virtualizzazione siamo ora pronti a procedere all&#39;installazione del software necessario per poter creare una virtual farm.&lt;br /&gt;
In base alle precedenti informazioni, utilizzeremo la distribuzione Debian, con repository backports, da cui andremo a prendere Virtual Box OSE (è la versione realmente libera di VirtualBox, senza supporto all&#39;USB e senza la gestione nativa tramite il protocollo remote desktop, entrambe tecnologie con problemi di brevetti); questo perchè la versione più recente di VirtualBox nei repository stable è la 1.6.6, troppo vecchia in assoluto... sicuramente meglio optare per la 3.x disponibile nei backports.&lt;br /&gt;
Prima di tutto partiamo configurando i repository:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;vi /etc/apt/sources.list&lt;/li&gt;
&lt;/ul&gt;ed andiamo ad aggiungere le seguenti linee:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;# Backported packages for Debian Lenny&lt;/li&gt;
&lt;li&gt;deb http://www.backports.org/debian lenny-backports main&lt;/li&gt;
&lt;/ul&gt;Siccome backports di default è disabilitato, ed inizialmente senza chiavi, dobbiamo specificare le chiavi da installare specificando il repository nel seguente modo:&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;aptitude update aptitude -t lenny-backports install debian-backports-keyring&lt;/li&gt;
&lt;/ul&gt;A questo punto, se non utilizziamo il kernel presente in backports (cosa molto probabile se l&#39;abbiamo configurato solamente per VirtualBox), dobbiamo scaricare i kernel header di quello attualmente in funzione al fine di poter compilare i moduli di VirtualBox... la procedura quindi è la seguente:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;aptitude update&lt;/li&gt;
&lt;li&gt;aptitude install linux-headers-$(uname -r)&lt;/li&gt;
&lt;/ul&gt;A questo punto siamo pronti ad installare VirtualBox: &lt;br /&gt;
&lt;ul&gt;&lt;li&gt;aptitude -t lenny-backports install virtualbox-ose &lt;/li&gt;
&lt;/ul&gt;Al termine dell&#39;installazione, DKMS si occuperà della creazione dei moduli per il sistema e questi verranno caricati automaticamente ad ogni avvio del sistema se non diversamente specificato in /etc/default/virtualbox-ose (LOAD_VBOXDRV_MODULE impostato a 0).&lt;br /&gt;
Ora non rimane che aggiungere gli utenti che devono poter gestire le macchine virtuali al gruppo vboxusers con il seguente comando:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;adduser yourusername vboxusers&lt;/li&gt;
&lt;/ul&gt;Attenzione: l&#39;utente che crea una macchina virtuale ne salva le informazioni all&#39;interno della sua home, quindi a meno di modifiche sostanziali di configurazione, una singola macchina non è gestibile da qualunque utente del gruppo vboxuser.&lt;br /&gt;
A questo punto il vostro VirtualBox è pronto e potete cominciare ad allestire la virtual farm.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Un ultimo punto riguarda un errore con cui mi sono ritrovato a confrontarmi... l&#39;errore era relativo a &quot;/dev/vboxdrv&quot; ed ai permessi assegnati; questo file deve avere i permessi impostati nella seguente maniera (ls -l /dev/vboxdrv):&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;crw-rw---- 1 root root 10, 58 2009-06-22 16:33 /dev/vboxdrv&lt;/li&gt;
&lt;/ul&gt;I permessi di questo file vengono impostati dal file /etc/udev/rules.d/z60_virtualbox-ose.rules, quindi la mask specificata all&#39;interno di questo deve essere 660.&lt;br /&gt;
Per verificare se il problema è stato risolto si deve riavviare udev e rimuovere/ricaricare il driver nel seguente modo (operazioni da eseguire da root):&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;invoke-rc.d udev reload&lt;/li&gt;
&lt;li&gt;modprobe -r vboxdrv&lt;/li&gt;
&lt;li&gt;modprobe vboxdrv&lt;/li&gt;
&lt;/ul&gt;Nel mio caso tutto era corretto, ma le cose continuavano a non funzionare... il motivo era legato ad un altro file, /etc/udev/rules.d/z60_virtualbox-ose-sources.rules, che definiva altri permessi e mi riscriveva quelli corretti; il problema si risolve modificando anche quel file o rimuovendolo dato che esegue operazioni doppie.&lt;br /&gt;
&lt;br /&gt;
N.B.: per Debian è disponibile il pacchetto &quot;ufficiale&quot; di Sun, senza le limitazioni delle USB e del remote desktop... per chi lo desiderasse può modificare i propri repository includendo quello della Sun ed aggiungendo le seguenti linee in /etc/apt/sources.list:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;# VirtualBox official repository &lt;/li&gt;
&lt;li&gt;deb http://download.virtualbox.org/virtualbox/debian lenny non-free&lt;/li&gt;
&lt;/ul&gt;Il procedimento che dovrebbe seguire penso sia molto simile a quello già illustrato per la versione OSE, ma non avendo provato non voglio scrivere informazioni non corrette.&lt;br /&gt;
&lt;br /&gt;
Per oggi è tutto, buon divertimento con le macchine virtuali che andrete a creare e nelle prossime puntate ce ne sarà una in cui tratterò l&#39;avvio e la gestione delle macchine virtuali da linea di comando.&lt;br /&gt;
Ciao ed a presto.</content><link rel='replies' type='application/atom+xml' href='http://smanettonex.blogspot.com/feeds/8011578183299249357/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://smanettonex.blogspot.com/2010/02/virtualbox-su-debian.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/8011578183299249357'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/8011578183299249357'/><link rel='alternate' type='text/html' href='http://smanettonex.blogspot.com/2010/02/virtualbox-su-debian.html' title='VirtualBox su Debian'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8668187457124892978.post-2406257817229950389</id><published>2010-02-13T18:26:00.003+01:00</published><updated>2010-03-04T17:05:19.263+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="virtualbox"/><category scheme="http://www.blogger.com/atom/ns#" term="virtualizzazione"/><category scheme="http://www.blogger.com/atom/ns#" term="vmware"/><title type='text'>La virtualizzazione dei sistemi</title><content type='html'>La nuova puntata del blog la dedichiamo alla virtualizzazione dei sistemi, ovvero l&#39;installazione software di un PC emulato all&#39;interno di uno reale... i motivi per ottenere funzionalità di questo tipo sono svariate, ma le principali sono legate al testing dei sistemi operativi, al test del software od alla voglia di avere sempre con sè il proprio sistema operativo configurato in maniera personalizzata.&lt;br /&gt;
Per poter ottenere una configurazione di questo tipo, vi sono diverse possibilità, ma siccome la portabilità delle macchine virtuali la ritengo una cosa essenziale e molto comoda (potremo gestirne l&#39;esecuzione indistintamente su piattaforme Windows e Linux), la disponibilità del codice sorgente e la gratuitità di utilizzo fanno il resto, i software da prendere in esame e di larga diffusione sono solamente due:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;VMWare server&lt;/li&gt;
&lt;li&gt;VirtualBox&lt;/li&gt;
&lt;/ul&gt;VMWare server è stato il primo software di virtualizzazione di largo utilizzo, attualmente la versione disponibile è la 2 ed è probabilmente la più adatta in un ambiente server vero e proprio, cioè quando la macchina fisica deve rimanere costantemente accesa e deve eseguire in maniera automatica varie macchine virtuali; non lo consiglio in un ambiente PC per utilizzo desktop in quanto l&#39;installazione è molto pesante (più di 500MB di download) e l&#39;accessso è solamente garantito a livello di browser web o delle funzioni fornite dal sistema operativo virtuale una volta avviato.&lt;br /&gt;
VirtualBox è il prodotto di virtualizzazione offerto da Sun, che attualmente è stata acquistata da Oracle; ultimo arrivato sul mercato e già largamente diffuso ed offre ottime funzionalità per una complessità del software relativamente modesta. L&#39;aspetto &quot;server&quot; non è così sviluppato, infatti l&#39;avvio delle macchine virtuali, fino alla versione attuale (3.1.x), non è automatico all&#39;avvio della macchina fisica, ma richiede l&#39;intervento manuale di un operatore o delle modifiche manuali al software.&lt;br /&gt;
Per adesso è tutto... verrà trattata tra breve l&#39;installazione di VirtualBox su di un server Debian... alla prossima.</content><link rel='replies' type='application/atom+xml' href='http://smanettonex.blogspot.com/feeds/2406257817229950389/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://smanettonex.blogspot.com/2010/02/la-virtualizzazione-dei-sistemi.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/2406257817229950389'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/2406257817229950389'/><link rel='alternate' type='text/html' href='http://smanettonex.blogspot.com/2010/02/la-virtualizzazione-dei-sistemi.html' title='La virtualizzazione dei sistemi'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8668187457124892978.post-223486484889309213</id><published>2010-02-10T19:23:00.008+01:00</published><updated>2010-02-13T17:30:28.187+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="aptitude"/><category scheme="http://www.blogger.com/atom/ns#" term="backports"/><category scheme="http://www.blogger.com/atom/ns#" term="debian"/><category scheme="http://www.blogger.com/atom/ns#" term="repository"/><title type='text'>Repository Debian: backports</title><content type='html'>Come tutti ormai dovreste sapere, le distribuzioni linux si basano sui pacchetti software che contengono i vari applicativi; questi pacchetti vengono organizzati e resi disponibili attraverso repository.&lt;br /&gt;Se mi avete seguito fin dall&#39;inizio, la vostra distribuzione è configurata per utilizzare i pacchetti scaricati dai repository chiamati stable (lenny al momento attuale) o testing (squeeze).&lt;br /&gt;Uno dei difetti per chi ha bisogno di utilizzare software recente su di una distribuzione stable è che spesso questo non è disponibile od è disponibile in versioni obsolete (e quindi considerate sicure e per ambienti di produzione in quanto testate a lungo ed approfonditamente).&lt;br /&gt;Per ovviare a questo problema ed usare software più recente qualcuno potrebbe pensare che basta utilizzare il repository testing che contiene versioni di software più aggiornate, ma a questo punto nascono i problemi delle dipendenze dei pacchetti... provare dei pacchetti della versione testing richiede che anche i pacchetti da cui dipendono siano di tipo testing e questo porterebbe ad un aggiornamento dell&#39;intero sistema, ma questa è una soluzione che pochi sono disposti ad accettare in un ambiente di produzione.&lt;br /&gt;Quindi, per adesso, non c&#39;è la soluzione utilizzando i repository ufficiali, ed a questo scopo è nato un repository apposta, che si chiama backports (http://www.backports.org); questo archivio è nato dall&#39;esigenza di poter utilizzare del software abbastanza aggiornato utilizzando grazie al fatto che è stato compilato su macchine di tipo stable e quindi le dipendenze sono relative a pacchetti riservati ad un ambiente di produzione... ora passiamo alla parte pratica di configurazione.&lt;br /&gt;Andiamo ad aggiungere ai nostri soliti repository quello nuovo, aggiungiamo la chiave GPG ed aggiorniamo la lista dei pacchetti software disponibili:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;echo &quot;deb http://www.backports.org/debian lenny-backports main contrib non-free&quot; &gt; /etc/apt/sources.list&lt;/li&gt;&lt;li&gt;wget -O - http://backports.org/debian/archive.key | apt-key add -&lt;/li&gt;&lt;li&gt;apt-get update&lt;/li&gt;&lt;/ul&gt;A questo punto i pacchetti del repository sono stati indicizzati nel database locale e quindi quando eseguiremo ricerche o comandi di installazione potremo utilizzare anche questi; siccome di default il repository è disattivato di default, dobbiamo specificarne l&#39;utilizzo dalla linea di comando per poterlo utilizzare e la sintasis del comando di installazione è la seguente:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;apt-get -t lenny-backports install “package”&lt;/li&gt;&lt;li&gt;aptitude -t lenny-backports install “package”&lt;/li&gt;&lt;/ul&gt;Se volessimo utilizzare sempre i pacchetti di backports e quindi abilitarlo di default (attenzione che tutto verrebbe aggiornato rispetto ad una versione stable dato che il software è più recente), possiamo andare a modificare il file /etc/apt/preferences in maniera che siano presenti le seguenti linee:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Package: *&lt;/li&gt;&lt;li&gt;Pin: release a=lenny-backports&lt;/li&gt;&lt;li&gt;Pin-Priority: 200&lt;/li&gt;&lt;/ul&gt;Direi che per oggi è tutto... buon divertimento con il software aggiornato.</content><link rel='replies' type='application/atom+xml' href='http://smanettonex.blogspot.com/feeds/223486484889309213/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://smanettonex.blogspot.com/2010/02/repository-debian-backports.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/223486484889309213'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8668187457124892978/posts/default/223486484889309213'/><link rel='alternate' type='text/html' href='http://smanettonex.blogspot.com/2010/02/repository-debian-backports.html' title='Repository Debian: backports'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>