<?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>Jon Isbell</title>
	<atom:link href="http://jon.isbell.net/feed/" rel="self" type="application/rss+xml" />
	<link>http://jon.isbell.net</link>
	<description></description>
	<lastBuildDate>Sun, 26 Feb 2012 20:54:32 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>UTF-8 in PuTTy</title>
		<link>http://jon.isbell.net/2012/02/26/utf-8-in-putty/</link>
		<comments>http://jon.isbell.net/2012/02/26/utf-8-in-putty/#comments</comments>
		<pubDate>Sun, 26 Feb 2012 20:33:28 +0000</pubDate>
		<dc:creator>jon</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://jon.isbell.net/?p=126</guid>
		<description><![CDATA[At work we use Windows on the desktop and so often end up using PuTTy to administer UNIX servers. Recently I&#8217;ve been migrating a large MySQL database containing both Latin-1 and UTF-8 encoded tables. Whilst verifying that the migrated tables &#8230; <a href="http://jon.isbell.net/2012/02/26/utf-8-in-putty/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>At work we use Windows on the desktop and so often end up using PuTTy to administer UNIX servers.</p>
<p>Recently I&#8217;ve been migrating a large MySQL database containing both Latin-1 and UTF-8 encoded tables. Whilst verifying that the migrated tables were correctly encoded I discovered that by default PuTTy will display Latin-1 even if the remote server&#8217;s locale is UTF-8.</p>
<p>Fortunately if you need to work with UTF-8 in PuTTy then you can change the following option:</p>
<pre>
Configuration -> Window -> Translation -> Remote character set -> UTF-8
</pre>
]]></content:encoded>
			<wfw:commentRss>http://jon.isbell.net/2012/02/26/utf-8-in-putty/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Securing MySQL</title>
		<link>http://jon.isbell.net/2012/02/21/securing-mysql/</link>
		<comments>http://jon.isbell.net/2012/02/21/securing-mysql/#comments</comments>
		<pubDate>Tue, 21 Feb 2012 13:09:17 +0000</pubDate>
		<dc:creator>jon</dc:creator>
				<category><![CDATA[MySQL]]></category>
		<category><![CDATA[Security]]></category>

		<guid isPermaLink="false">http://jon.isbell.net/?p=122</guid>
		<description><![CDATA[Did you know that a default installation of MySQL comes with anonymous, test and remote root user accounts? An attacker with knowledge of MySQL can use these accounts as stepping stones for other attacks. Its definitely worth spending a couple &#8230; <a href="http://jon.isbell.net/2012/02/21/securing-mysql/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Did you know that a default installation of MySQL comes with anonymous, test and remote root user accounts? An attacker with knowledge of MySQL can use these accounts as stepping stones for other attacks. Its definitely worth spending a couple of minutes removing these accounts and make your MySQL installation a little more secure.</p>
<pre>
# Delete anonymous users
DELETE FROM mysql.user WHERE User='';

# Delete remote root users
DELETE FROM mysql.user WHERE User='root' AND Host!='localhost';

# Delete test database
DROP DATABASE test;

# Delete test users
DELETE FROM mysql.db WHERE Db='test' OR Db='test\\_%';

# Refresh privileges
FLUSH PRIVILEGES;
</pre>
]]></content:encoded>
			<wfw:commentRss>http://jon.isbell.net/2012/02/21/securing-mysql/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Creating a tiny PXE rescue environment using Slitaz</title>
		<link>http://jon.isbell.net/2012/02/19/slitaz-pxe-rescue/</link>
		<comments>http://jon.isbell.net/2012/02/19/slitaz-pxe-rescue/#comments</comments>
		<pubDate>Sun, 19 Feb 2012 23:32:29 +0000</pubDate>
		<dc:creator>jon</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[PXE]]></category>

		<guid isPermaLink="false">http://jon.isbell.net/?p=100</guid>
		<description><![CDATA[Slitaz is a very small (base is 8mb) and highly configurable &#8220;live cd&#8221; distribution this makes it perfect for use in a rescue environment. The following steps were used to create a &#8216;rescue mode&#8217; version of Slitaz which can be &#8230; <a href="http://jon.isbell.net/2012/02/19/slitaz-pxe-rescue/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.slitaz.org/">Slitaz</a> is a very small (base is 8mb) and highly configurable &#8220;live cd&#8221; distribution this makes it perfect for use in a rescue environment. The following steps were used to create a &#8216;rescue mode&#8217; version of Slitaz which can be rapidly booted via PXE and includes RAID kernel modules, networking + SSH.</p>
<p>All of these steps were completed on a virtual machine booted using Slitaz 3.0 base (available from <a href="http://mirror.slitaz.org/iso/3.0/flavors/slitaz-3.0-base.iso">http://mirror.slitaz.org/iso/3.0/flavors/slitaz-3.0-base.iso</a>). When the machine first boots you should login as root (password root) and start ssh (dropbear) then you can complete the instructions via an SSH client.</p>
<pre>
sed -i 's/DROPBEAR_OPTIONS.*/DROPBEAR_OPTIONS=""/' /etc/daemons.conf
/etc/init.d/dropbear start
</pre>
<p>Now SSH into the VM and copy/adjust/paste the rest of the instructions.</p>
<p>Get base flavor to work from</p>
<pre>
tazlito extract-flavor base
cp -a /home/slitaz/flavors/base /home/slitaz/flavors/rescue
cd /home/slitaz/flavors/rescue
</pre>
<p>Update metadata</p>
<pre>
sed -i s/base/rescue/ receipt
sed -i 's/Minimal set of packages to boot/base + rescue customisations/' receipt
</pre>
<p>Add useful packages</p>
<pre>
echo lvm2 >> packages.list
echo nano >> packages.list
</pre>
<p>Create directory for custom config</p>
<pre>
mkdir -p rootfs/etc
</pre>
<p>Allow root logins</p>
<pre>
cat /etc/daemons.conf | sed 's/DROPBEAR_OPTIONS.*/DROPBEAR_OPTIONS=""/' > rootfs/etc/daemons.conf
</pre>
<p>Run ssh on boot</p>
<pre>
cat /etc/rcS.conf | sed 's/RUN_DAEMONS="/RUN_DAEMONS="dropbear /' > rootfs/etc/rcS.conf
</pre>
<p>Use interface on private network</p>
<pre>
cat /etc/network.conf | sed s/eth0/eth1/ > rootfs/etc/network.conf
</pre>
<p>Set root passwd</p>
<pre>
passwd
deluser tux
cp /etc/shadow rootfs/etc
</pre>
<p>Install toolchain and kernel source</p>
<pre>
for i in slitaz-toolchain ncurses-dev perl linux-source; do tazpkg get-install $i; done
</pre>
<p>Enable storage kernel modules</p>
<pre>
cd /usr/src/linux
echo CONFIG_MEGARAID_SAS=m >> .config
echo CONFIG_SCSI_3W_9XXX=m >> .config
</pre>
<p>Build Slitaz package with the new kernel image and modules</p>
<pre>
make tazpkg
</pre>
<p>Copy newly built package into local repo (Note: The filename change is important s/slitaz-/)</p>
<pre>
mkdir /home/slitaz/packages
cp /usr/src/linux/linux-slitaz-2.6.30.6.tazpkg /home/slitaz/packages/linux-2.6.30.6.tazpkg
</pre>
<p>Create ISO</p>
<pre>
tazlito pack-flavor rescue
tazlito get-flavor rescue.flavor
tazlito gen-distro
</pre>
<p>Copy the kernel and filesystem</p>
<pre>
scp /home/slitaz/distro/rootcd/boot/rootfs.gz  server:/var/www/html/ipxe/rescue
scp /home/slitaz/distro/rootcd/boot/vmlinuz-2.6.30.6-slitaz  server:/var/www/html/ipxe/rescue
</pre>
]]></content:encoded>
			<wfw:commentRss>http://jon.isbell.net/2012/02/19/slitaz-pxe-rescue/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Flashing Belkin APs with DD-WRT without TFTP</title>
		<link>http://jon.isbell.net/2011/02/07/flashing-belkin-aps-with-dd-wrt-without-tftp/</link>
		<comments>http://jon.isbell.net/2011/02/07/flashing-belkin-aps-with-dd-wrt-without-tftp/#comments</comments>
		<pubDate>Mon, 07 Feb 2011 00:42:42 +0000</pubDate>
		<dc:creator>jon</dc:creator>
				<category><![CDATA[DD-WRT]]></category>
		<category><![CDATA[Wireless]]></category>

		<guid isPermaLink="false">http://jon.isbell.net/?p=113</guid>
		<description><![CDATA[As part of a project to provide complete wireless coverage for a large office building I purchased a batch of 12 Belkin wireless access points. It was decided that replacing the stock firmware with DD-WRT would be a sensible move &#8230; <a href="http://jon.isbell.net/2011/02/07/flashing-belkin-aps-with-dd-wrt-without-tftp/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>As part of a project to provide complete wireless coverage for a large office building I purchased a batch of 12 Belkin wireless access points. It was decided that replacing the stock firmware with DD-WRT would be a sensible move as it would provide lots of extra functionality. It turned out that the standard procedure for <a href="http://www.dd-wrt.com/wiki/index.php/Belkin_F5D7230-4_v2xxx_and_Lower">flashing Belkin APs using TFTP</a> was rather hit and miss &#8211; it took about 10 reboots to get the first access point flashed!</p>
<p>Fortunately I stumbled across this <a href="http://www.dd-wrt.com/phpBB2/viewtopic.php?t=4583">forum post</a> which described how to modify a DD-WRT firmware image so that it would be accepted by the firmware upload function of the Belkin&#8217;s web interface. To simplify this process for the future I wrote a small Perl script which does all the hard work.</p>
<p>Download <a href="/downloads/belkinize.pl">belkinize.pl</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://jon.isbell.net/2011/02/07/flashing-belkin-aps-with-dd-wrt-without-tftp/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Dirty IT Jobs!</title>
		<link>http://jon.isbell.net/2009/06/27/dirty-it-jobs/</link>
		<comments>http://jon.isbell.net/2009/06/27/dirty-it-jobs/#comments</comments>
		<pubDate>Sat, 27 Jun 2009 14:50:00 +0000</pubDate>
		<dc:creator>jon</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://jon.isbell.net/blog/2009/06/27#02</guid>
		<description><![CDATA[I definately prefer my job to any of these! Even dirtier IT jobs: The muck stops here]]></description>
			<content:encoded><![CDATA[<p>I definately prefer my job to any of these! <a href="http://www.infoworld.com/print/70002">Even dirtier IT jobs: The muck stops here</a></p>
]]></content:encoded>
			<wfw:commentRss>http://jon.isbell.net/2009/06/27/dirty-it-jobs/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Immortal Computers</title>
		<link>http://jon.isbell.net/2009/06/27/immortal-computers/</link>
		<comments>http://jon.isbell.net/2009/06/27/immortal-computers/#comments</comments>
		<pubDate>Sat, 27 Jun 2009 14:50:00 +0000</pubDate>
		<dc:creator>jon</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://jon.isbell.net/blog/2009/06/27</guid>
		<description><![CDATA[Still have some of these things in my house! Where Are They Now? 25 Computer Products That Refuse to Die]]></description>
			<content:encoded><![CDATA[<p>Still have some of these things in my house! <a href="http://www.pcworld.com/printable/article/id,162106/printable.html">Where Are They Now? 25 Computer Products That Refuse to Die</a></p>
]]></content:encoded>
			<wfw:commentRss>http://jon.isbell.net/2009/06/27/immortal-computers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A sneak peak inside a Google Data Centre</title>
		<link>http://jon.isbell.net/2009/04/13/a-sneak-peak-inside-a-google-data-centre/</link>
		<comments>http://jon.isbell.net/2009/04/13/a-sneak-peak-inside-a-google-data-centre/#comments</comments>
		<pubDate>Mon, 13 Apr 2009 21:20:00 +0000</pubDate>
		<dc:creator>jon</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://jon.isbell.net/blog/2009/04/13</guid>
		<description><![CDATA[They aren&#8217;t using corkboards anymore! Google container data center tour]]></description>
			<content:encoded><![CDATA[<p>They aren&#8217;t using corkboards anymore! <a href="http://www.youtube.com/watch?v=zRwPSFpLX8I">Google container data center tour</a></p>
]]></content:encoded>
			<wfw:commentRss>http://jon.isbell.net/2009/04/13/a-sneak-peak-inside-a-google-data-centre/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Flutter</title>
		<link>http://jon.isbell.net/2009/03/06/flutter/</link>
		<comments>http://jon.isbell.net/2009/03/06/flutter/#comments</comments>
		<pubDate>Fri, 06 Mar 2009 23:30:00 +0000</pubDate>
		<dc:creator>jon</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://jon.isbell.net/blog/2009/04/06</guid>
		<description><![CDATA[Twitter is so last year, I&#8217;m on flutter! Flutter: The New Twitter]]></description>
			<content:encoded><![CDATA[<p>Twitter is so last year, I&#8217;m on flutter! <img src='http://jon.isbell.net/wordpress/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  <a href="http://www.slatev.com/video/flutter-the-new-twitter/">Flutter: The New Twitter</a></p>
]]></content:encoded>
			<wfw:commentRss>http://jon.isbell.net/2009/03/06/flutter/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Yay for Google Sync!</title>
		<link>http://jon.isbell.net/2009/02/10/yay-for-google-sync/</link>
		<comments>http://jon.isbell.net/2009/02/10/yay-for-google-sync/#comments</comments>
		<pubDate>Tue, 10 Feb 2009 23:50:00 +0000</pubDate>
		<dc:creator>jon</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://jon.isbell.net/blog/2009/02/10</guid>
		<description><![CDATA[I&#8217;ve been hoping Google would release a SyncML service for Google Calendar and GMail Contacts and now they have! Calendar and contact syncing for iPhone and Windows Mobile devices. Up until now I&#8217;ve been using ScheduleWorld (which is really good). &#8230; <a href="http://jon.isbell.net/2009/02/10/yay-for-google-sync/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been hoping Google would release a SyncML service for Google Calendar and GMail Contacts and now they have! <a href="http://googleblog.blogspot.com/2009/02/calendar-and-contact-syncing-for-iphone.html">Calendar and contact syncing for iPhone and Windows Mobile devices</a>. Up until now I&#8217;ve been using <a href="http://www.scheduleworld.com/">ScheduleWorld</a> (which is really good). All we need from Google now is CardDAV and CalDAV tasks support.</p>
]]></content:encoded>
			<wfw:commentRss>http://jon.isbell.net/2009/02/10/yay-for-google-sync/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The GNU way to do internationalisation in Javascript</title>
		<link>http://jon.isbell.net/2009/02/04/the-gnu-way-to-do-internationalisation-in-javascript/</link>
		<comments>http://jon.isbell.net/2009/02/04/the-gnu-way-to-do-internationalisation-in-javascript/#comments</comments>
		<pubDate>Wed, 04 Feb 2009 15:10:00 +0000</pubDate>
		<dc:creator>jon</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://jon.isbell.net/blog/2009/02/04</guid>
		<description><![CDATA[Useful approach to internationalisation. JavaScript Internationalisation]]></description>
			<content:encoded><![CDATA[<p>Useful approach to internationalisation. <a href="http://24ways.org/2007/javascript-internationalisation">JavaScript Internationalisation</a></p>
]]></content:encoded>
			<wfw:commentRss>http://jon.isbell.net/2009/02/04/the-gnu-way-to-do-internationalisation-in-javascript/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

