<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Sinkro.net &#187; bash</title>
	<atom:link href="http://www.sinkro.net/tag/bash/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.sinkro.net</link>
	<description>Software e dintorni. ... soprattutto dintorni ;-)</description>
	<lastBuildDate>Sun, 01 Aug 2010 10:16:25 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Uno script iptables per bloccare determinati IP</title>
		<link>http://www.sinkro.net/2008/12/29/uno-script-iptables-per-bloccare-determinati-ip/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=uno-script-iptables-per-bloccare-determinati-ip</link>
		<comments>http://www.sinkro.net/2008/12/29/uno-script-iptables-per-bloccare-determinati-ip/#comments</comments>
		<pubDate>Mon, 29 Dec 2008 10:27:37 +0000</pubDate>
		<dc:creator>Massimiliano</dc:creator>
				<category><![CDATA[Codice]]></category>
		<category><![CDATA[bash]]></category>
		<category><![CDATA[iptables]]></category>
		<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://www.sinkro.net/?p=239</guid>
		<description><![CDATA[Nonostante gli unici commenti in questo blog siano stati di spam, ho deciso di eliminarli ugualmente. Gli ip di provenienza degli spammer non erano, nel mio caso, più di quattro o cinque, così ho deciso di utilizzare la tecnica delle blacklist. Malgrado assolva al proprio compito, non è sicuramente la tecnica migliore da utilizzare, visto [...]


Altri articoli di interesse:<ol><li><a href='http://www.sinkro.net/2008/12/19/uno-script-bash-per-portare-il-dock-da-3d-a-2d-e-viceversa/' rel='bookmark' title='Permanent Link: Uno script bash per portare il dock da 3D a 2D e viceversa.'>Uno script bash per portare il dock da 3D a 2D e viceversa.</a> <small>Possiamo creare uno script per modificare lâ€™aspetto del Dock, da...</small></li>
<li><a href='http://www.sinkro.net/2008/12/16/un-semplice-script-bash-per-mostrare-i-file-nascosti-nel-finder/' rel='bookmark' title='Permanent Link: Un semplice script bash per mostrare i file nascosti nel finder'>Un semplice script bash per mostrare i file nascosti nel finder</a> <small>Ho scritto un semplice script per mostrare e nascondere i...</small></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p><a class="tt-flickr tt-flickr-Small" title="Il nano sconcio" href="http://www.flickr.com/photos/masssi/3000779632/"><img class="alignright" src="http://farm4.static.flickr.com/3139/3000779632_55577d6872_m.jpg" alt="Il nano sconcio" width="160" height="240" /></a> Nonostante gli unici commenti in questo blog siano stati di spam, ho deciso di eliminarli ugualmente.</p>
<p>Gli ip di provenienza degli spammer non erano, nel mio caso, più di quattro o cinque, così ho deciso di utilizzare la tecnica delle blacklist.</p>
<p>Malgrado assolva al proprio compito, non è sicuramente la tecnica migliore da utilizzare, visto che rischia di bloccare persone che con lo spam nulla hanno a che fare.<br />
Ad esempio si rischia di bloccare ip dinamici, ip di proxy ecc. ecc.</p>
<p>Ad ogni modo se si vuole bloccare un insieme limitato di ip credo sia una tecnica che possa tornare utile.</p>
<p>Si può procedere in diversi modi, ad esempio utilizzando l'.htaccess, negando, o ridirezionando le connessioni al webserver da certi ip, come descritto <a href="http://codex.wordpress.org/Combating_Comment_Spam/Denying_Access" target="_blank">qui</a>, oppure più radicalmente, utilizzando <a href="http://it.wikipedia.org/wiki/Netfilter" target="_blank">iptables</a>.</p>
<p>Nel mio caso ho preferito utilizzare iptables.</p>
<p>Il funzionamento è molto semplice, leggo dalla mia blacklist,<br />
<code>/etc/blacklister/blacklist.dat</code><br />
e imposto per ogni ip due regole di iptables, la prima per loggare il tentativo di accesso, la seconda per bloccare.</p>
<p>Semplice ed efficace.</p>
<div class="syntax_hilite">
<div id="c-6">
<div class="c"><span style="color: #339933;">#!/bin/bash</span></p>
<p><span style="color: #339933;"># Blacklister</span><br />
<span style="color: #339933;"># ===============</span><br />
<span style="color: #339933;">#</span><br />
<span style="color: #339933;"># ATTENZIONE!</span><br />
<span style="color: #339933;"># Questo script non e' pensato per essere</span><br />
<span style="color: #339933;"># usato su un firewall, ma solo su un webserver.</span><br />
<span style="color: #339933;">#</span><br />
<span style="color: #339933;"># A cosa serve</span><br />
<span style="color: #339933;"># ------------</span><br />
<span style="color: #339933;"># Si prefigge di limitare lo spam in ingresso</span><br />
<span style="color: #339933;"># bloccando le connessioni degli</span><br />
<span style="color: #339933;"># IP acquisiti come spammer.</span><br />
<span style="color: #339933;">#</span><br />
<span style="color: #339933;"># Cosa fa</span><br />
<span style="color: #339933;"># -------</span><br />
<span style="color: #339933;"># Legge il file blacklist.dat contenente un elenco di ip da</span><br />
<span style="color: #339933;"># bloccare uno per riga, e, tramite **iptables** logga</span><br />
<span style="color: #339933;"># come SPAM i tentativi di accesso e li blocca.</span></p>
<p>LOCALFILE=/etc/blacklister/blacklist.<span style="color: #202020;">dat</span></p>
<p>IFACE=eth0</p>
<p><span style="color: #339933;"># IpTables</span><br />
IPT=<span style="color: #ff0000;">"/sbin/iptables"</span></p>
<p><span style="color: #339933;"># Chain</span><br />
CHAIN=INPUT</p>
<p>start_firewall<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><br />
<span style="color: #66cc66;">&#123;</span><br />
<span style="color: #339933;"># Blacklist</span><br />
blacklist=$<span style="color: #66cc66;">&#40;</span>cat $LOCALFILE<span style="color: #66cc66;">&#41;</span></p>
<p><span style="color: #339933;"># Solo per debug</span><br />
<span style="color: #339933;"># set -x</span></p>
<p><span style="color: #339933;"># Carico i moduli necessari</span><br />
/sbin/modprobe ip_conntrack<br />
/sbin/modprobe ip_conntrack_ftp</p>
<p><span style="color: #339933;"># Azzero le iptable prima di cominciare</span><br />
stop_firewall</p>
<p>echo -n <span style="color: #ff0000;">"Starting firewall:"</span><br />
block_spam<br />
echo <span style="color: #ff0000;">" done."</span><br />
<span style="color: #66cc66;">&#125;</span></p>
<p>block_spam<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><br />
<span style="color: #66cc66;">&#123;</span><br />
<span style="color: #339933;"># Per ogni IP LOG e DROP</span><br />
<span style="color: #b1b100;">for</span> ip in $blacklist<br />
<span style="color: #b1b100;">do</span><br />
$IPT -A $CHAIN -i $IFACE -s $ip -j LOG --log-prefix <span style="color: #ff0000;">"SPAM "</span><br />
$IPT -A $CHAIN -i $IFACE -s $ip -j DROP<br />
done</p>
<p><span style="color: #66cc66;">&#125;</span></p>
<p>stop_firewall<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><br />
<span style="color: #66cc66;">&#123;</span><br />
echo -n <span style="color: #ff0000;">"Stopping firewall:"</span></p>
<p>$IPT --flush<br />
$IPT -t nat --flush<br />
$IPT -t mangle --flush</p>
<p>$IPT --policy INPUT ACCEPT<br />
$IPT --policy OUTPUT ACCEPT</p>
<p>echo <span style="color: #ff0000;">" done."</span><br />
<span style="color: #66cc66;">&#125;</span></p>
<p><span style="color: #b1b100;">case</span> $<span style="color: #cc66cc;">1</span> in<br />
start<span style="color: #66cc66;">&#41;</span><br />
start_firewall<br />
;;<br />
stop<span style="color: #66cc66;">&#41;</span><br />
stop_firewall<br />
;;<br />
restart<span style="color: #66cc66;">&#41;</span><br />
start_firewall<br />
;;<br />
*<span style="color: #66cc66;">&#41;</span><br />
echo <span style="color: #ff0000;">"Usage: $0 {start|stop|restart}"</span><br />
exit <span style="color: #cc66cc;">1</span><br />
;;<br />
esac</div>
</div>
</div>
<p></p>


<p>Altri articoli di interesse:<ol><li><a href='http://www.sinkro.net/2008/12/19/uno-script-bash-per-portare-il-dock-da-3d-a-2d-e-viceversa/' rel='bookmark' title='Permanent Link: Uno script bash per portare il dock da 3D a 2D e viceversa.'>Uno script bash per portare il dock da 3D a 2D e viceversa.</a> <small>Possiamo creare uno script per modificare lâ€™aspetto del Dock, da...</small></li>
<li><a href='http://www.sinkro.net/2008/12/16/un-semplice-script-bash-per-mostrare-i-file-nascosti-nel-finder/' rel='bookmark' title='Permanent Link: Un semplice script bash per mostrare i file nascosti nel finder'>Un semplice script bash per mostrare i file nascosti nel finder</a> <small>Ho scritto un semplice script per mostrare e nascondere i...</small></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.sinkro.net/2008/12/29/uno-script-iptables-per-bloccare-determinati-ip/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Uno script bash per portare il dock da 3D a 2D e viceversa.</title>
		<link>http://www.sinkro.net/2008/12/19/uno-script-bash-per-portare-il-dock-da-3d-a-2d-e-viceversa/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=uno-script-bash-per-portare-il-dock-da-3d-a-2d-e-viceversa</link>
		<comments>http://www.sinkro.net/2008/12/19/uno-script-bash-per-portare-il-dock-da-3d-a-2d-e-viceversa/#comments</comments>
		<pubDate>Fri, 19 Dec 2008 08:22:13 +0000</pubDate>
		<dc:creator>Massimiliano</dc:creator>
				<category><![CDATA[Codice]]></category>
		<category><![CDATA[bash]]></category>
		<category><![CDATA[dock]]></category>
		<category><![CDATA[osx]]></category>

		<guid isPermaLink="false">http://www.sinkro.net/?p=199</guid>
		<description><![CDATA[Possiamo creare uno script per modificare lâ€™aspetto del Dock, da 3D a 2D e viceversa sempre utilizzando defaults come avevamo spiegato qui. Questa volta perÃ² sfruttiamo le preferenze del dock, memorizzate in com.apple.dock. In particolare l'opzione no-glass. Per verificare le impostazioni correnti lanciamo il seguente comando da terminale: defaults read com.apple.dock no-glass restituirÃ  0 se [...]


Altri articoli di interesse:<ol><li><a href='http://www.sinkro.net/2008/12/16/un-semplice-script-bash-per-mostrare-i-file-nascosti-nel-finder/' rel='bookmark' title='Permanent Link: Un semplice script bash per mostrare i file nascosti nel finder'>Un semplice script bash per mostrare i file nascosti nel finder</a> <small>Ho scritto un semplice script per mostrare e nascondere i...</small></li>
<li><a href='http://www.sinkro.net/2008/12/29/uno-script-iptables-per-bloccare-determinati-ip/' rel='bookmark' title='Permanent Link: Uno script iptables per bloccare determinati IP'>Uno script iptables per bloccare determinati IP</a> <small>Nonostante gli unici commenti in questo blog siano stati di...</small></li>
<li><a href='http://www.sinkro.net/2005/11/09/rilasciato-postgresql-81/' rel='bookmark' title='Permanent Link: Rilasciato PostgreSQL 8.1'>Rilasciato PostgreSQL 8.1</a> <small>PostgreSQL 8.1 contiene piu' di 120 tra nuove caratteristiche e...</small></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.sinkro.net/wp-content/uploads/2008/12/logo-apple-150x150.jpg" alt="logo-apple" title="logo-apple" width="150" height="150" class="alignright size-thumbnail wp-image-180" /><br />
Possiamo creare uno script per modificare lâ€™aspetto del Dock, da 3D a 2D e viceversa sempre utilizzando <code>defaults</code> come avevamo spiegato <a href="http://www.sinkro.net/2008/12/16/un-semplice-script-bash-per-mostrare-i-file-nascosti-nel-finder/">qui</a>.</p>
<p>Questa volta perÃ² sfruttiamo le preferenze del <em>dock</em>, memorizzate in <code>com.apple.dock</code>.<br />
In particolare l'opzione <code>no-glass</code>.</p>
<p>Per verificare le impostazioni correnti lanciamo il seguente comando da terminale:<br />
<code>defaults read com.apple.dock no-glass</code></p>
<p>restituirÃ  <code>0</code> se attualmente il dock Ã¨ in 3D o <code>1</code> se Ã¨ in 2D.</p>
<p>Di seguito il semplice script.</p>
<div class="syntax_hilite">
<div id="c-15">
<div class="c"><span style="color: #339933;">#!/bin/sh</span><br />
CURRENT=`defaults read com.<span style="color: #202020;">apple</span>.<span style="color: #202020;">dock</span> no-glass`<br />
<span style="color: #b1b100;">case</span> $CURRENT in<br />
&nbsp; &nbsp; <span style="color: #cc66cc;">0</span><span style="color: #66cc66;">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; OPTION=<span style="color: #ff0000;">'YES'</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; ;;<br />
&nbsp; &nbsp; <span style="color: #cc66cc;">1</span><span style="color: #66cc66;">&#41;</span> <br />
&nbsp; &nbsp; &nbsp; &nbsp; OPTION=<span style="color: #ff0000;">'NO'</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; ;;<br />
&nbsp; &nbsp; *<span style="color: #66cc66;">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; OPTION=<span style="color: #ff0000;">'YES'</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; ;;<br />
esac</p>
<p>defaults write com.<span style="color: #202020;">apple</span>.<span style="color: #202020;">dock</span> no-glass -boolean $OPTION<br />
killall Dock<br />
echo <span style="color: #ff0000;">"Riavvio il dock..."</span></div>
</div>
</div>
<p></p>


<p>Altri articoli di interesse:<ol><li><a href='http://www.sinkro.net/2008/12/16/un-semplice-script-bash-per-mostrare-i-file-nascosti-nel-finder/' rel='bookmark' title='Permanent Link: Un semplice script bash per mostrare i file nascosti nel finder'>Un semplice script bash per mostrare i file nascosti nel finder</a> <small>Ho scritto un semplice script per mostrare e nascondere i...</small></li>
<li><a href='http://www.sinkro.net/2008/12/29/uno-script-iptables-per-bloccare-determinati-ip/' rel='bookmark' title='Permanent Link: Uno script iptables per bloccare determinati IP'>Uno script iptables per bloccare determinati IP</a> <small>Nonostante gli unici commenti in questo blog siano stati di...</small></li>
<li><a href='http://www.sinkro.net/2005/11/09/rilasciato-postgresql-81/' rel='bookmark' title='Permanent Link: Rilasciato PostgreSQL 8.1'>Rilasciato PostgreSQL 8.1</a> <small>PostgreSQL 8.1 contiene piu' di 120 tra nuove caratteristiche e...</small></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.sinkro.net/2008/12/19/uno-script-bash-per-portare-il-dock-da-3d-a-2d-e-viceversa/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Un semplice script bash per mostrare i file nascosti nel finder</title>
		<link>http://www.sinkro.net/2008/12/16/un-semplice-script-bash-per-mostrare-i-file-nascosti-nel-finder/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=un-semplice-script-bash-per-mostrare-i-file-nascosti-nel-finder</link>
		<comments>http://www.sinkro.net/2008/12/16/un-semplice-script-bash-per-mostrare-i-file-nascosti-nel-finder/#comments</comments>
		<pubDate>Tue, 16 Dec 2008 22:35:36 +0000</pubDate>
		<dc:creator>Massimiliano</dc:creator>
				<category><![CDATA[Codice]]></category>
		<category><![CDATA[bash]]></category>
		<category><![CDATA[finder]]></category>
		<category><![CDATA[osx]]></category>

		<guid isPermaLink="false">http://www.sinkro.net/?p=159</guid>
		<description><![CDATA[Ho scritto un semplice script per mostrare e nascondere i file normalmente invisibili al Finder. Si avvale del comando defaults che permette di leggere, scrivere ed eliminare le impostazioni utente di OSX. Come riporta il manuale: Le applicazioni di Mac OS X ed altri programmi usano il sistema dei defaults per memorizzare le preferenze utente [...]


Altri articoli di interesse:<ol><li><a href='http://www.sinkro.net/2008/12/19/uno-script-bash-per-portare-il-dock-da-3d-a-2d-e-viceversa/' rel='bookmark' title='Permanent Link: Uno script bash per portare il dock da 3D a 2D e viceversa.'>Uno script bash per portare il dock da 3D a 2D e viceversa.</a> <small>Possiamo creare uno script per modificare lâ€™aspetto del Dock, da...</small></li>
<li><a href='http://www.sinkro.net/2008/12/29/uno-script-iptables-per-bloccare-determinati-ip/' rel='bookmark' title='Permanent Link: Uno script iptables per bloccare determinati IP'>Uno script iptables per bloccare determinati IP</a> <small>Nonostante gli unici commenti in questo blog siano stati di...</small></li>
<li><a href='http://www.sinkro.net/2005/11/09/rilasciato-postgresql-81/' rel='bookmark' title='Permanent Link: Rilasciato PostgreSQL 8.1'>Rilasciato PostgreSQL 8.1</a> <small>PostgreSQL 8.1 contiene piu' di 120 tra nuove caratteristiche e...</small></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.sinkro.net/wp-content/uploads/2008/12/logo-apple-150x150.jpg" alt="logo-apple" title="logo-apple" width="150" height="150" class="alignright size-thumbnail wp-image-180" />Ho scritto un semplice script per mostrare e nascondere i file normalmente <em>invisibili</em> al Finder.</p>
<p>Si avvale del comando <code>defaults</code> che permette di leggere, scrivere ed eliminare le impostazioni utente di OSX. </p>
<p>Come riporta il manuale:</p>
<blockquote><p>Le applicazioni di Mac OS X ed altri programmi usano il sistema dei defaults per memorizzare le preferenze utente ed altre informazioni che devo essere mantenute quando l'applicazione non Ã¨ in esecuzione (ad esempio i caratteri di default per un nuovo documento o la posizione delle finestre ecc.).<br />
Alcune impostazioni sono accessibili dalle Preferenze di sistema, ma altre no.
</p></blockquote>
<p>Il Finder non fa eccezione, ed una delle impostazioni accessibili solo attraverso <code>defaults</code>, Ã¨ <code>AppleShowAllFiles</code>, che definisce appunto se mostrare o nascondere i file <em>invisibili</em>.</p>
<p>Per visualizzare l'impostazione corrente possiamo digitare da terminale:</p>
<p><code>defaults read com.apple.finder AppleShowAllFiles</code></p>
<p>Che ci restituirÃ  rispettivamente 0 o 1 se Ã¨ impostato per nascondere o per mostrare i file invisibili.</p>
<p>Detto questo lo script Ã¨ banale.</p>
<div class="syntax_hilite">
<div id="c-24">
<div class="c"><span style="color: #339933;">#!/bin/sh</span></p>
<p>CURRENT=`defaults read com.<span style="color: #202020;">apple</span>.<span style="color: #202020;">finder</span> AppleShowAllFiles`<br />
<span style="color: #b1b100;">case</span> $CURRENT in<br />
&nbsp; &nbsp; <span style="color: #cc66cc;">0</span><span style="color: #66cc66;">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; OPTION=<span style="color: #ff0000;">'YES'</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; ;;<br />
&nbsp; &nbsp; <span style="color: #cc66cc;">1</span><span style="color: #66cc66;">&#41;</span> <br />
&nbsp; &nbsp; &nbsp; &nbsp; OPTION=<span style="color: #ff0000;">'NO'</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; ;;<br />
&nbsp; &nbsp; *<span style="color: #66cc66;">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; OPTION=<span style="color: #ff0000;">'NO'</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; ;;<br />
esac</p>
<p>defaults write com.<span style="color: #202020;">apple</span>.<span style="color: #202020;">finder</span> AppleShowAllFiles -boolean $OPTION<br />
killall Finder<br />
echo <span style="color: #ff0000;">"Riavvio il Finder..."</span></div>
</div>
</div>
<p></p>


<p>Altri articoli di interesse:<ol><li><a href='http://www.sinkro.net/2008/12/19/uno-script-bash-per-portare-il-dock-da-3d-a-2d-e-viceversa/' rel='bookmark' title='Permanent Link: Uno script bash per portare il dock da 3D a 2D e viceversa.'>Uno script bash per portare il dock da 3D a 2D e viceversa.</a> <small>Possiamo creare uno script per modificare lâ€™aspetto del Dock, da...</small></li>
<li><a href='http://www.sinkro.net/2008/12/29/uno-script-iptables-per-bloccare-determinati-ip/' rel='bookmark' title='Permanent Link: Uno script iptables per bloccare determinati IP'>Uno script iptables per bloccare determinati IP</a> <small>Nonostante gli unici commenti in questo blog siano stati di...</small></li>
<li><a href='http://www.sinkro.net/2005/11/09/rilasciato-postgresql-81/' rel='bookmark' title='Permanent Link: Rilasciato PostgreSQL 8.1'>Rilasciato PostgreSQL 8.1</a> <small>PostgreSQL 8.1 contiene piu' di 120 tra nuove caratteristiche e...</small></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.sinkro.net/2008/12/16/un-semplice-script-bash-per-mostrare-i-file-nascosti-nel-finder/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
