Zakame::Blog http://blog.zakame.net/ Zak B. Elep's little weblog zakame@zakame.net (Zak B. Elep) zakame@zakame.net (Zak B. Elep) Wed, 30 Sep 2009 14:53:16 +0000 en blosxom 2.1.2+dev hourly 1 2000-01-01T12:00+00:00 Off We Go... http://blog.zakame.net/news/off-we-go http://blog.zakame.net/news/off-we-go Wed, 30 Sep 2009 14:53:16 +0000 life morphlabs oandb <p>Arrived at Manila yesterday. At least in the parts we passed through (Pasay, Makati, and Malate,) everything seems back to normal, with almost no sign of the <a href="http://blog.zakame.net/news/help-ondoy-victims">previous storm's</a> havoc. And nary a raindrop in sight.</p> <p>I'm staying at my cousin <a href="http://blogs.exist.com/oching/">Deng's</a> place, as usual with my Manila trips. We found it in a bit of chaos, as ondoy's flooding reached here, recalling the water being almost knee-deep. The water's gone now though, but a lot of things that were not brought up to the apartment's second floor are still wet. Hopefully they will be dry before the next storm comes in...</p> <p>A little history: the last time I lived in Manila was in September 2006, when <a href="http://software.orangeandbronze.com">Orange &amp; Bronze</a> got me for a 3-month contract work on a project. At the time, I was fresh off my <a href="http://code.google.com/soc">GSoC</a> <a href="http://sendpage.org">work</a>, and I was raring to whet my skills as a software developer. That job gave me that opportunity, as well as opportunities to meet new friends, participate in a bit of commercial software development, and get used to Manila life again.</p> <p>Then awhile later I got into the <a href="http://www.mor.ph">Morph Labs</a> bandwagon to become its first Systems Administrator, working from Daet via telecommuting. It was here that I began the long road to unrecovery^H^H^H^H^H learning the ropes of being a sysadmin, building some cool stuff in the process as well as maintaining it.</p> <p>Now, I'm back here in Manila, to work for Orange &amp; Bronze again, but this time in a more permanent position, as Systems Administrator Lead. I look forward to reconnecting with my old pals as well as meet new ones, use the valuable experience I've had over the years in my new job, and get back to the long road of unrecovery^H^H^H^H^H building more cool stuff.</p> <p>And I start doing that tomorrow. Good times ahead.</p> Help Ondoy Victims http://blog.zakame.net/news/help-ondoy-victims http://blog.zakame.net/news/help-ondoy-victims Tue, 29 Sep 2009 13:33:28 +0000 disasters life ondoy <p>Hey $WORLD, Philippines needs your help!</p> <p>We just got hit by <a href="http://www.gmanews.tv/story/173284/over-100-killed-and-almost-340000-affected-by-ondoy">ondoy</a>, and there seems to be a couple more storms <a href="http://images.plurk.com/3149862_3282150e550b2a3fd43b5de0a66bd343.jpg">coming in</a>.</p> <p>You can help out via donations to the <a href="http://www.ifrc.org">Red Cross/Red Crescent</a>. If you have friends or family in Manila, you can check the <a href="http://tinyurl.com/RescueHub">RescueHub</a> and <a href="http://sahana.kahelos.org">Sahana</a> lists for persons missing and in distress.</p> <p>And lastly, pray to your $DEITY for us (or do what works best for you.)</p> <p><strong>UPDATE</strong>: <a href="http://www.google.com.ph/landing/typhoon-ondoy.html">Google</a> is helping out too. The <a href="http://www.redcross.org.ph/Site/PNRC/wtd.aspx">local Red Cross</a> is also accepting donations.</p> <p><strong>UPDATE 2</strong>: There's a <a href="http://www.ondoyrelief.org">new site</a> up with additional info on the relief efforts.</p> Moving to Manila, Take 2 http://blog.zakame.net/news/moving-take-2 http://blog.zakame.net/news/moving-take-2 Mon, 28 Sep 2009 14:14:53 +0000 disasters life ondoy <p>Ok, so I'm going ahead with my trip to Manila tomorrow, after my earlier <a href="http://blog.zakame.net/news/moving">delay</a>. With a lot of relief efforts going on, I hope Manila's recovering now from Ondoy's onslaught. I'm both glad that the worst seems over, but sad for the loss of my fellow Filipinos, and worried about what seems to be more storms coming ahead.</p> <p>Thanks to everyone praying for Manila's recovery, and for me and my companions' safety. I'll be offline the whole day tomorrow as we make the 9-hour trip. I hope nothing bad happens.</p> (Not) Moving to Manila http://blog.zakame.net/news/moving http://blog.zakame.net/news/moving Sun, 27 Sep 2009 14:57:55 +0000 life <p>So, I'm moving back to Manila tomorrow. I hope the <a href="http://www.philstar.com/Article.aspx?articleId=508803&amp;publicationSubCategoryId=200">flood's subsided</a> by then.</p> <p><em>UPDATE</em>: Delaying this, after hearing some <a href="http://www.philstar.com/Article.aspx?articleId=509022&amp;publicationSubCategoryId=63">more</a> <a href="http://www.philstar.com/Article.aspx?articleId=509064&amp;publicationSubCategoryId=63">news</a>. I hope it gets better and not worse, as I hear there are a couple more storms coming in.</p> 0x19 http://blog.zakame.net/news/0x19 http://blog.zakame.net/news/0x19 Tue, 22 Sep 2009 15:22:17 +0000 life <pre><code>zakame++; </code></pre> <p>I have much to be thankful for reaching a quarter-century, so me and my family went to Naga city to give thanks to $DEITY and our <a href="http://penafrancia.net">patron</a> (which just had its 300th year feast this weekend.) This past year saw me moving on from my old job, doing odd bits here and there, and letting me rediscover my interests. And to top it off, I found a new job. :-)</p> <p>I'm looking forward to what the next quarter-century brings to me, and what I could bring to it. I already have a few in the works ;)</p> <p>Thanks, $WORLD!</p> vrms http://blog.zakame.net/memes/vrms http://blog.zakame.net/memes/vrms Sat, 12 Sep 2009 06:56:12 +0000 community debian free non-free <p>Got caught by a meme bug from <a href="http://planet.ubuntu.com">Planet Ubuntu</a>, so Mr <a href="http://vrms.alioth.debian.org/">vrms</a>, here goes:</p> <pre> zakame@perlis:~/blog/memes$ vrms Non-free packages installed on perlis autoconf-doc automatic configure script builder documentation emacs23-common-non-dfsg GNU Emacs shared, architecture independent, non-DFSG i firmware-iwlwifi Binary firmware for Intel Wireless 3945, 4965 and 5000 make-doc Documentation for the GNU version of the "make" utilit 4 non-free packages, 0.3% of 1524 installed packages. </pre> <p>This is on my laptop running Debian Sid. Here's my /etc/apt/sources.list:</p> <pre><code>deb http://ftp.us.debian.org/debian/ sid main deb-src http://ftp.us.debian.org/debian/ sid main </code></pre> <p>I installed the non-free packages manually. As seen on the list, its just mainly non-free GFDL documentation for the GNU tools (oh, the irony,) and firmware files for <em>perlis</em>' Intel 3945 wireless. Interestingly, there's no corresponding -doc package for automake, due to its documentation having no invariant sections and cover texts, passing muster to vrms' (nee Debian's) interpretation of the GFDL.</p> New Server http://blog.zakame.net/news/new-server http://blog.zakame.net/news/new-server Fri, 11 Sep 2009 15:45:16 +0000 debian maradns nginx openssh perl www <p>Site was down for almost a week, due to my <a href="http://www.turbovps.com">provider</a> being DDoSed. Email was broken more so as SMTP was the target, but it was rather odd that the data center decided to block <em>outgoing</em> SMTP connections from a block of IPs, where my VPS is unfortunately a member of.</p> <p>I've since switched to a new <a href="http://w4networks.com">provider</a>. This makes my third <a href="http://wiki.openvz.org/Main_Page">OpenVZ</a> VPS, though I was meaning to move on to <a href="http://www.xen.org">Xen</a>. At 6 US dollars a month though, it seems quite a bargain, so I'll have to see where this goes.</p> <p>The move also afforded me to change some stuff under the hood. <a href="http://httpd.apache.org">Apache</a> is gone, replaced by <a href="http://nginx.net">nginx</a> (although this required having <a href="http://blosxom.sourceforge.net">blosxom</a> running under a <a href="http://acme.com/software/thttpd/">thttpd</a> backend, until I can whip up a FastCGI equivalent.) <a href="http://www.isc.org/software/bind/">BIND</a> gave way to <a href="http://maradns.org">maradns</a>, cutting down significant memory usage. And <a href="http://matt.ucc.asn.au/dropbear/dropbear.html">dropbear</a> replaces the <a href="http://www.openssh.org">OpenSSH</a> server. <a href="http://www.exim.org">Exim 4</a> and <a href="http://dovecot.org">dovecot</a> remain though, as they seem to quite big (or small) enough for my purposes.</p> <p>I'll document more about the changes in later posts. In the meantime, I need to catch up on emails and packaging...</p> Returning to the fold http://blog.zakame.net/news/returning-to-the-fold http://blog.zakame.net/news/returning-to-the-fold Tue, 01 Sep 2009 13:05:58 +0000 c community debian git openbsd plan9 <p>Hi again, blog. Its been a long time. Like, almost a year.</p> <p>How was I? Great, I guess. Mostly out of touch with the <a href="http://www.debian.org">rest</a> <a href="http://www.ubuntu.com">of</a> <a href="http://www.perl.org">the</a> <a href="http://plan9.bell-labs.com/plan9">worlds</a> I used to visit, being at <a href="http://www.mor.ph">work</a>, but after leaving work (and searching for a new one now,) that's going to change. Hopefully. :)</p> <p>I've started by updating <a href="http://lists.debian.org/debian-mentors/2009/08/msg00272.html">some</a> <a href="http://lists.debian.org/debian-mentors/2009/08/msg00441.html">stuff</a> for Debian I should have updated long ago. In the process, I've reformatted my laptop to be Windows-free, containing only Debian sid and OpenBSD-current, and its been very pleasant so far.</p> <p>I've also taken up a couple of <a href="http://bugs.debian.org/543835">new</a> <a href="http://bugs.debian.org/543847">old</a> stuff for Debian, fixing them up, and getting comfortable with their insides^Wcode. So much so that I'm even in the process of fixing a 5-year-old wishlist <a href="http://bugs.debian.org/189261">bug</a>, although <a href="http://code.zakame.net/libcdaudio.git?a=shortlog;h=refs/heads/bugs/189261-http-proxy-auth">it</a> still needs testing.</p> <p>I'm looking forward to rejoining the communities I once missed, and maybe joining a <a href="http://www.openbsd.org">new</a> one too.</p> Broken Comment Posting Fixed; New #olpc-ph Grassroots Group http://blog.zakame.net/news/broken-posting-fixed-and-new-olpc-ph-group http://blog.zakame.net/news/broken-posting-fixed-and-new-olpc-ph-group Wed, 24 Sep 2008 00:31:09 +0000 community inferno life olpc perl www <p>Thanks to <a href="http://wolfger.wordpress.com">Wolfger</a> for pointing out an HTTP 500 while trying to <a href="http://blog.zakame.net/news/0x18">greet me</a> by comment. :D I totally forgot about upgrading <a href="http://search.cpan.org/perldoc?Net::Akismet">Net::Akismet</a> to the new version that comes with my <a href="http://rt.cpan.org/Ticket/Attachment/469764/231662/0001-Add-support-for-user-supplied-Akismet-services.patch">patch</a>, as <a href="http://blog.zakame.net/hacks/net-akismet-patch">described previously</a>. All the while I was thinking Net::Akismet was doing too good of a job keeping out comment spam, when it may as well have kept out <em>all</em> comments :( But its my fault, really.</p> <p>Among other things, <a href="http://engage.wordpress.com/">Jerome</a> has finally started a new <a href="http://wiki.laptop.org/go/OLPC_Philippines">grassroots group</a> for the <a href="http://www.laptop.org">OLPC</a> effort here in the Philippines, fresh from the success at the recently-concluded <a href="http://www.softwarefreedomday.org">SFD</a>. There's now an <a href="irc://irc.freenode.net/#olpc-ph">IRC channel</a> up too, with <a href="http://videum.zakame.net/irclogs/%23olpc-ph.log">logs</a> available locally (text-only, until I can set up a web and fileserver frontend.) I'm personally interested on running a port of <a href="http://wiki.laptop.org/go/Inferno">Inferno</a> and perhaps help out on the TODOs for it.</p> Turning 0x18 http://blog.zakame.net/news/0x18 http://blog.zakame.net/news/0x18 Tue, 23 Sep 2008 16:37:38 +0000 debian inferno life morphlabs perl plan9 <pre><code>zakame++; </code></pre> <p>There should be a picture of me above, following the Me(me), but its late. And I have to get up early tomorrow to catch the bus to Manila for next day's Cebu flight (<a href="http://www.mor.ph">work</a> calls.)</p> <p>I look forward to another roller-coaster year. This year had been a ride through new stuff mostly at work, picking up CentOS and Ruby along the way, although remaining faithful to my Perl roots. And quite recently, it has come back full circle with a renewed interest in Debian again. However, I've been also coming back at exploring <a href="http://plan9.bell-labs.com/plan9">Plan 9 from Bell Labs</a> and <a href="http://www.vitanuova.com/inferno">Inferno</a>, rekindling my lost interest in distributed systems and showing me just how bad Unix and friends have become (current meme: tell me why any xterms, mine or yours, has a <a href="http://www.cs.unm.edu/~fastos/05meeting/PLAN9NOTDEADYET.pdf">baud rate</a>, as told by <code>stty</code>.)</p> <p>Still, I can't forget my roots; <a href="http://blog.zakame.net/news/saving-tagalog-for-di">yesterday's "save"</a> was a subtle reminder that I should come back to Debian again. I'll do what I can, and maybe learn something or two in the process ;) I guess that's how $DEITY works; always moving in indeterministic ways.</p> <p>Ok, off to sleep...</p> Saving Tagalog from d-i Translations Removal http://blog.zakame.net/news/saving-tagalog-for-di http://blog.zakame.net/news/saving-tagalog-for-di Sun, 21 Sep 2008 10:01:24 +0000 community debian <p>Thanks to <a href="http://bonedaddy.net/pabs3/log/">pabs</a>'s and <a href="http://www.perrier.eu.org/weblog/">bubulle</a>'s notice on both IRC and <a href="http://www.perrier.eu.org/weblog/2008/09/20#di-freeze-lenny8">planet</a>, I got wind on Tagalog's impending removal from the <a href="http://www.debian.org/devel/debian-installer/">Debian-Installer</a> translations. Having been quite inactive on my Debian work for a while, this provided me an opportunity to get back to it, even if it were only small stuff (compared to packaging.)</p> <p>In the nick of time, I submitted updates to sublevels 1 (505 translations) and 2 (511 translations) of the d-i tl_PH translations; doing it twice due to my first run missing out the fuzzy translation strings. I was fortunate that the missing and fuzzy string needing translation weren't many; most of the work has already been done by <a href="http://www.upm.edu.ph/~xenos/">pusakat</a> and the rest of the <a href="http://banwa.upm.edu.ph/mailman/listinfo/debian-tl">Debian-TL</a> team. Kudos for them on starting this in the first place!</p> <p>There's still a <a href="http://www.debian.org/international/l10n/po/tl">lot</a> of work to be done, and even in d-i itself there are the <a href="http://d-i.alioth.debian.org/l10n-stats/quick-overview.txt">other sublevels</a> needing Tagalog translation (3 and 5.) <em>Kung may alam ka sa Tagalog at gusto mong gamitin itong wika sa Debian, wag mahiyang kunin ang mga talakdang kailangang isalin!</em> Others (even fellow Filipinos) may find it impractical, but I think its a worthwhile effort, to make it as accessible as possible to our fellowmen having difficulties in English.</p> <p>All in all, it feels good to contribute again. :)</p> Making Net-Akismet play with TypePad AntiSpam http://blog.zakame.net/hacks/net-akismet-patch http://blog.zakame.net/hacks/net-akismet-patch Wed, 04 Jun 2008 10:18:00 +0000 akismet blosxom perl www <p>I've been getting a lot of blog spam lately; it appears that <a href="http://www.akismet.com">Akismet</a> is slipping. Fortunately, there's a new Akismet-compatible alternative at <a href="http://antispam.typepad.com">TypePad AntiSpam</a> which I read about from Justin Mason's <a href="http://taint.org/2008/05/30/165032a.html">post</a>. And it being perl, I decided to try it out here on my blog (never mind it being <a href="http://blosxom.sourceforge.net">Blosxom</a>, as long as it uses Frank Hecker's <a href="http://hecker.org/blosxom/feedback">feedback plugin</a> that in turn uses <a href="http://search.cpan.org/perldoc?Net::Akismet">Net::Akismet</a>.</p> <p>But alas, the current version of Net::Akismet doesn't support user-supplied REST endpoints, so I added <a href="http://rt.cpan.org/Ticket/Attachment/469764/231662/0001-Add-support-for-user-supplied-Akismet-services.patch">it</a>, and promptly filed a report on the <a href="http://rt.cpan.org/Ticket/Display.html?id=36427">CPAN</a>. Hopefully it gets included in the next release very soon.</p> <p>As for the Blosxom feedback plugin, tweaking it to use the new feature in Net::Akismet was a cinch, so only the real test (of incoming spam filtered by TypePad) remains. Hopefully it does work.</p> <p>[PS: Looks like the first line in blosxom posts don't like package-like names such as Net::Akismet (during editing my blog title disappeared on the render!) Needs to be looked at later...]</p> Where's the Open? http://blog.zakame.net/news/wheres-the-open http://blog.zakame.net/news/wheres-the-open Wed, 14 May 2008 11:31:08 +0000 community debian linux openssh openssl <p>Ok, so it seems that the whirlwind on <a href="http://blog.zakame.net/news/openssl-remote-dsa-1571">OpenSSL</a> has settled down a bit. Posts about it are coming from everywhere, ranging from <a href="http://www.links.org/?p=327">rants on package maintenance</a> to blame-pointing on both <a href="http://advogato.org/person/branden/diary/5.html">upstream</a> and <a href="http://blog.technologeek.org/2008/05/13/107">packager</a> sides. And, of course, <a href="http://it.slashdot.org/article.pl?sid=08/05/13/1533212">Slashdot</a>.</p> <p>Where does all this leave the end user with? Well, probably not much except to regenerate weak SSH keys with the new <code>openssh-server</code> (now enhanced with <code>openssh-blacklist</code>, see the new <a href="http://lists.debian.org/debian-security-announce/2008/msg00153.html">advisory</a>) and hope to $DEITY all gets well soon. And maybe, just maybe, a minor suspicion that other Debian-packaged software may be "tainted" with a similar blemish (that being having patches that are supposed to fix something, applied <em>with upstream's blessing</em>, and yet not really audited enough to ensure functionality <strong>AND</strong> security of the system is maintained.)</p> <p>Obviously, there's going to be some adjustments to be made on the Debian side. But I do hope to $DEITY that major revamps ought to happen on the OpenSSL side as well, in particular on clarifying their public channels to reaching upstream developers (read: publish <code>openssl-team@openssl.org</code> in a legitimate way, being the legitimate upstream contact endpoint it is,) and keeping a closer eye on the vendors who package their software (yeah, it may not be an obligation at all for OpenSSL, but heck, their vendors are <em>users</em>, too!) Upstream may be free not to partake on a <a href="http://www.debian.org/social_contract">social contract</a> like Debian's, but it shouldn't escape from them the fact that vendors nevertheless aggregate continuing and potential users (aside from being users themselves) for their benefit.</p> <p>More importantly though, is that delivering FOSS is a community effort. Sure, its easy to put blame now, but in the end, the blame isn't as important as the real cause and effects of the problem/bug/issue are. Better to move on and work together towards a real fix, rather than the bickering that currently passes as FOSS entertainment.</p> OpenSSL Ouch http://blog.zakame.net/news/openssl-remote-dsa-1571 http://blog.zakame.net/news/openssl-remote-dsa-1571 Wed, 14 May 2008 10:14:15 +0000 debian linux openssh openssl perl remote vulnerability <p>I won't repeat it here, but there's <a href="http://lists.debian.org/debian-security-announce/2008/msg00152.html">DSA-1571-1</a> waiting for your attention, especially if you made some material out of <code>openssl</code> over the last couple of years or so. Yes, you read it right: <strong>COUPLE</strong>.</p> <p>Upgrading to the new OpenSSL is easy. Generating new keys is another story.</p> <p>To save (or add to, depending on how you handle this) your pain, there is a <a href="http://security.debian.org/project/extra/dowkd/dowkd.pl.gz">simple checker</a> that can currently see if your OpenSSH or OpenVPN public keys are weak enough to warrant replacement. I await a version that can handle X.509 certificates too (though I only just generated a new one today, before the announcement, so that means I have to do it again (and get its CSR to <a href="http://www.cacert.org">CACert</a> for signing, etc.)</p> <p>And yeah, if you're running <a href="http://packages.debian.org/openssh-server">openssh-server</a>, consider regenerating your host RSA and DSA keys, e.g.:</p> <pre><code># mv /etc/ssh/ssh_host_{dsa,rsa}_key* /some/place/else # dpkg-reconfigure -plow openssh-server </code></pre> <p>That should regenerate your keys <em>and</em> restart openssh-server once the new keys are installed to <code>/etc/ssh</code>.</p> <p>The <em>hard</em> part (of making sure all the keys of your systems are updated and tested) is still up to you, however.</p> <p><strong>UPDATE</strong>: <a href="http://wiki.debian.org/SSLkeys">The Debian wiki</a> has up-to-date information regarding other packages that generate SSH/SSL keys at postinst. Please refer to that while the <a href="http://www.debian.org/security/key-rollover/">key-rollover</a> page isn't up yet.</p> <p><strong>UPDATE 2</strong>: <a href="http://packages.debian.org/openssh-server">openssh-server</a> is updated (with corresponding <a href="http://lists.debian.org/debian-security-announce/2008/msg00153.html">DSA-1576-1</a>) that is linked to the updated OpenSSL library. Be sure to upgrade! The new package also pulls in <a href="http://security.debian.org/pool/updates/main/o/openssh-blacklist/">openssh-blacklist</a>, a new package that contains the database needed by the new <code>ssh-vulnkey</code> for checking SSH public keys.</p> Some Exim4 hacks http://blog.zakame.net/tips/exim4-hacks http://blog.zakame.net/tips/exim4-hacks Sun, 11 May 2008 06:44:55 +0000 debian exim linux mail <p><a href="http://www.exim.org">Exim</a> is the stock MTA in <a href="http://www.debian.org">Debian</a>, and rightly so, since its pretty much the most flexible MTA around (note: I did say "most flexible," not "most secure.") It is also very easy to set up, thanks to its debconf integration and sane configuration interface; however, there may be some bits that still needs that extra tweaking that a dialog or menu interface can't reach:</p> <h4>Setting the Right mailserver hostname</h4> <p>Most mailservers typically go by a hostname of "mail" or "mx," for various reasons. Of course, this requires setting the right DNS entry for your domain, but Exim may miss this and use the internal hostname of your mailserver instead. There are quite a lot of ways to set the "right" mailserver name in Exim, but in Debian, it is recommended that one <em>DOESN'T</em> set it via the <code>primary_hostname</code> variable, as this can mess up other places in the Exim configuration and complicate matters. Instead, one can use <code>smtp_active_hostname</code> in the global options:</p> <pre><code>smtp_active_hostname = mail.foobar.net </code></pre> <h4>Changing Received: header</h4> <p>If one changes the mailserver hostname like above, then it also probably needs to change some headers as well, like the "Received:" header. Again, this is a global options setting, controlled by <code>received_header_text</code>:</p> <pre><code>received_header_text = Received: \ &#036;{if def:sender_rcvhost {from &#036;sender_rcvhost\n\t}\ {&#036;{if def:sender_ident {from &#036;sender_ident}}\ &#036;{if def:sender_helo_name {(helo=&#036;sender_helo_name)\n\t}} }}\ by &#036;smtp_active_hostname \ &#036;{if def:received_protocol {with &#036;received_protocol}} \ &#036;{if def:tls_cipher {(&#036;tls_cipher)\n\t}}\ (Exim &#036;version_number)\n\t\ &#036;{if def:sender_address {(envelope-from &lt;&#036;sender_address&gt;)\n\t}}\ id &#036;message_id\ &#036;{if def:received_for {\n\tfor &#036;received_for}} </code></pre> <p>Note that this changes the header when your Exim receives mail; when your Exim <em>sends</em> mail to another mailserver, you'll have to ensure that the header made by the destination mailserver has its hostname matching your own. Thus, you need to fix the "remote_smtp" transport a bit:</p> <pre><code>remote_smtp: debug_print = "T: remote_smtp for &#036;local_part@&#036;domain" driver = smtp # to disable TLS on outgoing connections, uncomment this # hosts_avoid_tls = * helo_data = &#036;smtp_active_hostname # use the variable we set earlier # use the interface our Exim is running on and where the mailserver name points to interface = 1.2.3.4 </code></pre> <h4>Changing Message-Id</h4> <p>Finally, one can change the "Message-Id" header to match the new hostname above, via another global options variable, <code>message_id_header_domain</code>:</p> <pre><code>message_id_header_domain = &#036;smtp_active_hostname </code></pre> Apache2 Worker MPM on Low Memory Servers http://blog.zakame.net/tips/apache2-worker-lowmem http://blog.zakame.net/tips/apache2-worker-lowmem Sun, 11 May 2008 06:44:08 +0000 apache2 debian linux lowmem <p>If you're running <a href="http://httpd.apache.org">Apache2</a> on a memory-constrained system (like in a virtual machine,) you may want to choose the <a href="http://httpd.apache.org/docs/2.2/mod/prefork.html">prefork MPM</a> to save memory at the cost of more process forks. However, if you have more than one CPU on that same machine, you may also want to consider using the threaded <a href="http://httpd.apache.org/docs/2.2/mod/worker.html">worker MPM</a> and tweak its <code>MaxClients</code> and <code>ThreadsPerChild</code> settings from the default configuration.</p> <p>On a typical <code>apache2</code> installation on a <a href="http://www.debian.org">Debian</a> system, the worker MPM configuration looks like this:</p> <pre><code>&lt;IfModule mpm_worker_module&gt; MaxClients 150 MinSpareThreads 25 MaxSpareThreads 75 ThreadsPerChild 25 MaxRequestsPerChild 0 &lt;/IfModule&gt; </code></pre> <p>Using these default settings on a resource-constrained system (say a server with 128MB of RAM but with no swap) would be overkill, and the web server processes will definitely eat up all of that memory, leaving little or no room for even simple CGI scripts.</p> <p>In my setup, I experimented with tweaking the values above to get apache2 to serve without eating up too much precious memory. I found that the important values to consider here are <code>MaxClients</code>, which dictate how many clients can connect simultaneously to my server, and <code>ThreadsPerChild</code>, which specifies how many threads of execution can run in a child/worker process. My resulting config becomes:</p> <pre><code>&lt;IfModule mpm_worker_module&gt; MaxClients 15 MinSpareThreads 3 MaxSpareThreads 7 ThreadsPerChild 3 MaxRequestsPerChild 200 &lt;/IfModule&gt; </code></pre> <p>With this setup, I free up a significant amount of RAM from apache2's hold whle maximizing my thread usage in each worker process; at the same time, I avoid keeping each child process for too long by setting a maximum number of requests each worker can serve, preventing the workers to bloat too much when handling CGI.</p> <p>I also tweaked the <code>KeepAliveTimeout</code> setting to just 2 seconds (instead of the default 15) so that each worker process can go to the next request quickly and preventing them from being tied up to a connection for too long. I also set the <code>Timeout</code> to 30 seconds.</p> Adding Some Blog Bling http://blog.zakame.net/news/blog-bling http://blog.zakame.net/news/blog-bling Sun, 11 May 2008 01:46:53 +0000 blosxom perl www <p>I added some more <em>bling</em> to this blog last night, like a spiffy new CSS theme (based on <a href="http://blosxom.ookee.com/blosxom/flavours/twocolumncss-zip">twocolumncss</a>) and a handful of plugins to improve feed generation, readable and extensionless URIs, and support for comments and trackbacks. Blosxom indeed is such a flexible toolkit for making a blog! :D</p> <p>That said, I did find one or two quirks in the plugins existing in the <a href="http://blosxom.cvs.sourceforge.net/blosxom/blosxom2/">blosxom</a> and <a href="http://blosxom.cvs.sourceforge.net/blosxom/blosxom2-plugins/">blosxom-plugins</a> CVS repository; I'll post patches to my git mirrors of these repositories. I'll probably add some more features on some of the plugins I used too (that reminds me, I should put up a list somewhere.)</p> Subdomains for Blog and Code http://blog.zakame.net/news/blog-and-code http://blog.zakame.net/news/blog-and-code Sat, 10 May 2008 07:39:10 +0000 git www <p>I have reorganized the site a bit. This <a href="http://blog.zakame.net">blog</a> is now on its own subdomain (and www currently redirects to it.) My existing and new projects (under their own <a href="http://git.or.cz">git</a> trees) are now on <a href="http://code.zakame.net">the code subdomain</a>, with gitweb as root.</p> <p>I'll probably put up a wiki as the main www, and maybe even lists (in case some of my projects go gold heh.)</p> Hello, World http://blog.zakame.net/news/hello http://blog.zakame.net/news/hello Sat, 10 May 2008 07:30:46 +0000 blosxom cgi-app morphlabs perl ubuntu <p>You have reached my little site. There's not much here at the moment, but do drop by every now and then; its a work in progress.</p> <p>As you can see, this site is quite spartan, and that's the way I like it. I'm currently using <a href="http://www.blosxom.com">blosxom</a> for this ephemeral blog site, despite the prevalence of database-backed blogging and CMS software with all the Web 2.0, AJAX, and Web Services bullshit. Those are not for me, at least for the moment; nor do I want to encourage a "community" around my site, whatever that is, as I have better things to do than exchange pleasantries.</p> <p>That said, I know that the blosxom code is rather old and the plugins available for it seem to be disappearing. Since its in Perl, however, I think I can take a crack at writing my own plugins (and possibly improving blosxom itself.) I might probably rewrite it in <a href="http://www.blosxom.com">CGI::Application</a>, if it comes to that.</p> <p>By the way, in case you're wondering: I'm Zak B. Elep, and I go by <em>zakame</em> on the Internets. I actually have an older, more dynamic, and friendlier weblog at <a href="http://zakame.spunge.org/blog">spunge.org</a>, where it all started; more on that later.</p> <p>And yeah, the standard disclaimers for blogging applies: this site contains my own personal opinions on various matters (and maybe some real, hard facts, from time to time,) and in now way should these opinions be construed as official statements of <a href="http://www.ubuntu.com">organizations</a> or <a href="http://www.mor.ph">companies</a> I'm connected with. They have their own PR reps: talk to them if you need "official" shit.</p> <p>That's all for the moment: I'll go play out with some code.</p>