<?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>Peregrine &#187; Internet</title>
	<atom:link href="http://blog.openbrainstem.net/peregrine/category/internet/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.openbrainstem.net/peregrine</link>
	<description>Stuff I Decided to Write</description>
	<lastBuildDate>Fri, 26 Feb 2010 07:44:54 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>WordPress 2.8.6 Upgrade</title>
		<link>http://blog.openbrainstem.net/peregrine/2009/11/22/wordpress-2-8-6-upgrade/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=wordpress-2-8-6-upgrade</link>
		<comments>http://blog.openbrainstem.net/peregrine/2009/11/22/wordpress-2-8-6-upgrade/#comments</comments>
		<pubDate>Sun, 22 Nov 2009 14:00:06 +0000</pubDate>
		<dc:creator>Peregrine</dc:creator>
				<category><![CDATA[Internet]]></category>

		<guid isPermaLink="false">http://blog.openbrainstem.net/peregrine/?p=228</guid>
		<description><![CDATA[I did this upgrade almost right when it came out. I simply followed my &#8220;normal&#8221; upgrade process:

Backup the DB ($ mysqldump -p dbname &#124; gzip &#038;gt:~/backups/$(date -iso-8806)-dbname.sql.gz).
Backup the existing directory (# cp -a current-directory directory-outside-of-the-web-space).
Extract the new version on top of the old ($ tar -zxf ~/wordpress-version.tar.gz).
Delete the wp-config-sample.php file.
Fix group ownerships of wp-content/ and [...]]]></description>
			<content:encoded><![CDATA[<p>I did this upgrade almost right when it came out. I simply followed my &#8220;normal&#8221; upgrade process:</p>
<ol>
<li>Backup the DB (<code>$ <b>mysqldump -p <i>dbname</i> | gzip &#038;gt:~/backups/$(date -iso-8806)-<i>dbname</i>.sql.gz</b></code>).</li>
<li>Backup the existing directory (<code># <b>cp -a <i>current-directory</i> <i>directory-outside-of-the-web-space</i></b></code>).</li>
<li>Extract the new version on top of the old (<code>$ <b>tar -zxf ~/wordpress-<i>version</i>.tar.gz</b></code>).</li>
<li>Delete the <code>wp-config-sample.php</code> file.</li>
<li>Fix group ownerships of <code>wp-content/</code> and sub-directories.</li>
<li>Visit the admin interface.</li>
<li>Fix problems, if there are any.</li>
</ol>
<p>This time, there was nothing to do for the last two steps. It was all over in just a couple of minutes. Simple as pie.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.openbrainstem.net/peregrine/2009/11/22/wordpress-2-8-6-upgrade/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How Many of Me</title>
		<link>http://blog.openbrainstem.net/peregrine/2009/11/19/how-many-of-me/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=how-many-of-me</link>
		<comments>http://blog.openbrainstem.net/peregrine/2009/11/19/how-many-of-me/#comments</comments>
		<pubDate>Thu, 19 Nov 2009 21:45:45 +0000</pubDate>
		<dc:creator>Peregrine</dc:creator>
				<category><![CDATA[Internet]]></category>

		<guid isPermaLink="false">http://blog.openbrainstem.net/peregrine/?p=222</guid>
		<description><![CDATA[I first saw [ http://howmanyofme.com/ ] a few years ago. There was a conversation the other day that made me think of it again, so I decided to look it up, again.



HowManyOfMe.com






There are people with my name in the U.S.A.


How many have your name?



There are only 19 of Monty Peterson in the U.S.
]]></description>
			<content:encoded><![CDATA[<p>I first saw [ <a href="http://howmanyofme.com/">http://howmanyofme.com/</a> ] a few years ago. There was a conversation the other day that made me think of it again, so I decided to look it up, again.</p>
<div style="color: #000;">
<table width="350" bgcolor="#FFFFFF" cellpadding="1" border="0" cellspacing="0" style="background-color: white; text-align: center;">
<tr>
<td style="background-color: #0066B3; color: white; font: 16px/1.1 Verdana, Arial, Helvetica, sans-serif;">HowManyOfMe.com</td>
</tr>
<tr>
<td style="border: 1px solid black;">
<table width="100%" bgcolor="#FFFFFF" cellpadding="0" border="0" cellspacing="0" style="background-color: white; text-align: center;">
<tr>
<td width="120" style="padding-top: 2px;"><a href="http://howmanyofme.com" style="text-decoration: none;"><img src="http://extimg.howmanyofme.com/extimages/howmany-logo.png" alt="Logo" width="100" height="100" style="border: 1px black"></a></td>
<td><span style="font: 16px/1.1 Verdana, Arial, Helvetica, sans-serif; color: #000;">There are<br /><img src="http://extimg.howmanyofme.com/autoimg/fVMjLQOx94ShghvWGGCkXA%2C%2C/count.png" alt="27"><br /> people with <span id="hmpu">my name</span> in the U.S.A.</span></td>
</tr>
</table>
<p><a style="color: #0066B3; text-decoration: underline; font: bold 16px/1.8 Verdana, Arial, Helvetica, sans-serif;" href="http://howmanyofme.com">How many have your name?</a></td>
</tr>
</table>
<p></div>
<p>There are only 19 of Monty Peterson in the U.S.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.openbrainstem.net/peregrine/2009/11/19/how-many-of-me/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Netflix PS3 Video Streaming</title>
		<link>http://blog.openbrainstem.net/peregrine/2009/11/14/netflix-ps3-video-streaming/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=netflix-ps3-video-streaming</link>
		<comments>http://blog.openbrainstem.net/peregrine/2009/11/14/netflix-ps3-video-streaming/#comments</comments>
		<pubDate>Sun, 15 Nov 2009 05:37:31 +0000</pubDate>
		<dc:creator>Peregrine</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Movies]]></category>

		<guid isPermaLink="false">http://blog.openbrainstem.net/peregrine/?p=219</guid>
		<description><![CDATA[A couple of hours ago, I had my first taste of streaming Netflix on my PS3.
We&#8217;ve been getting movies and TV shows from Netflix for over a year. It&#8217;s been a great experience for us. We have the 3 discs at once plan, which lets us hang onto some TV series disc for a few [...]]]></description>
			<content:encoded><![CDATA[<p>A couple of hours ago, I had my first taste of streaming <a href="http://netflix.com/">Netflix</a> on my <a href="http://www.sonystyle.com/webapp/wcs/stores/servlet/ProductDisplay?catalogId=10551&#038;storeId=10151&#038;langId=-1&#038;productId=8198552921665967739&#038;SR=hero:ps3_120gb:ss:Targeted">PS3</a>.</p>
<p>We&#8217;ve been getting movies and TV shows from Netflix for over a year. It&#8217;s been a great experience for us. We have the 3 discs at once plan, which lets us hang onto some TV series disc for a few days (a couple of weeks) and still keep a couple of movies going back and forth. It&#8217;s also possible for us to watch up to 6 different movies in one week, as their turn around time is so fast, it (almost always) only takes 2 days from when I put a disc in the mail until the next one arrives.</p>
<p>Netflix also allows their customers to stream movies and TV shows on their computers, using the <a href="http://www.roku.com/">Roku</a> <a href="http://www.roku.com/netflixplayer/default.aspx">player</a>, the <a href="http://www.lge.com/">LG</a> <a href="http://www.lge.com/us/tv-audio-video/video/LG-blu-ray-dvd-player-BD370.jsp">BD370</a> Blu-ray player/Netflix streaming device, plus <a href="http://www.netflix.com/NetflixReadyDevices">many more</a>. Netflix recently announced that they would be releasing a version for streaming on the <a href="http://www.sony.com/">Sony</a> PlayStation 3 (a.k.a. PS3).</p>
<p>I&#8217;ve added about 20 films to my Instant Streaming Queue in the time I&#8217;ve written this article. I think I&#8217;ll go watch something.</p>
<p>I got an email from Netflix the other day, announcing that the PS3 disc is now available. It&#8217;s free, I simply had to click a couple of links and they sent it out to me. That disc arrived in the mail earlier today. We popped it in, waited for the PS3 to say that it was ready for us to &#8220;watch&#8221; that disc, and a moment later, we saw cover art for movies and TV shows that are in our Streaming Queue. I selected Season 1 of <i>Quantum Leap</i> and started watching episode 4 (episodes 1-3 are only available on disc). It took about 35-40 seconds for the show to start playing. The playback was flawless. Zero audio or video glitches (I do have a solid 7Mbps DSL line)..</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.openbrainstem.net/peregrine/2009/11/14/netflix-ps3-video-streaming/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>When Maildrop Keeps Filling a Log File</title>
		<link>http://blog.openbrainstem.net/peregrine/2009/11/12/when-maildrop-keeps-filling-a-log-file/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=when-maildrop-keeps-filling-a-log-file</link>
		<comments>http://blog.openbrainstem.net/peregrine/2009/11/12/when-maildrop-keeps-filling-a-log-file/#comments</comments>
		<pubDate>Fri, 13 Nov 2009 05:51:10 +0000</pubDate>
		<dc:creator>Peregrine</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://blog.openbrainstem.net/peregrine/?p=208</guid>
		<description><![CDATA[Earlier tonight, Some friends told me that they saw a couple of emails they sent to me bounced back at them. I wrote about what happens &#8220;When Maildrop Fills a Log File&#8221; on one of my other blogs. Well, it&#8217;s happened again a couple of times since then. It&#8217;s happened again just a few days [...]]]></description>
			<content:encoded><![CDATA[<p>Earlier tonight, Some friends told me that they saw a couple of emails they sent to me bounced back at them. I wrote about what happens &#8220;<a href="http://lamontpeterson.org/?p=18"><i>When Maildrop Fills a Log File</i></a>&#8221; on <a href="http://lamontpeterson.org/">one of my other blogs</a>. Well, it&#8217;s happened again a couple of times since then. It&#8217;s happened again just a few days ago (<code><b>ls</b></code> showed <code>-rw-------  1 lamontp lamontp 51200000 Nov  6 11:19 .maildrop.log</code>).</p>
<p>That&#8217;s enough! I&#8217;ve had it; I&#8217;m going to prevent this from bothering me again.</p>
<p>Well, the <i>right</i> way to fix this is to grab a <a href="http://en.wiktionary.org/wiki/cluebat">clue-bat</a> and use it on the Maildrop developer(s) who decided that hardcoding a 50 MB log file size limit into <a href="http://www.courier-mta.org/maildrop/">Maildrop</a> was a good idea, until they change their mind(s). Seriously, though, I&#8217;m going to send them a patch for this <a href="http://en.wikipedia.org/wiki/Lame_duck">lame duck</a>.</p>
<p>In the meantime, I&#8217;ve written <a href="http://www.openbrainstem.net/download/rotate-user-maildrop-logs"><code><b>rotate-user-maildrop-logs</b></code></a>, a shell script to place into your <code>/etc/cron.daily/</code> (or similar) directory. I am releasing this under the terms of the <a href="http://www.gnu.org/">GNU</a> <a href="http://www.gnu.org/licenses/gpl.html">General Public License, version 3</a> (a.k.a. GPLv3).</p>
<p>I really like Maildrop. It&#8217;s great for me, but it&#8217;s not for everyone. For example, my <a href="http://blog.openbrainstem.net/aurora/">wife</a> isn&#8217;t going to sit down and use <code><b>vi</b></code> (or any other text editor) to maintain her very own <code>~/.mailfilter</code> file. For this reason, I will be switching to <a href="">Sieve</a> in the near future, using the <a href="http://cyrusimap.web.cmu.edu/">Cyrus</a> <a href="http://en.wikipedia.org/wiki/Internet_Message_Access_Protocol">IMAP</a> server instead of <a href="http://www.dovecot.org/">Dovecot</a>, which I&#8217;ve been very happy with.</p>
<p>Is that the time? OK, maybe I&#8217;ll have to write that patch for Maildrop on Saturday.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.openbrainstem.net/peregrine/2009/11/12/when-maildrop-keeps-filling-a-log-file/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Star Trek: Online Release Date</title>
		<link>http://blog.openbrainstem.net/peregrine/2009/11/11/star-trek-online-release-date/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=star-trek-online-release-date</link>
		<comments>http://blog.openbrainstem.net/peregrine/2009/11/11/star-trek-online-release-date/#comments</comments>
		<pubDate>Wed, 11 Nov 2009 16:50:52 +0000</pubDate>
		<dc:creator>Peregrine</dc:creator>
				<category><![CDATA[Games]]></category>
		<category><![CDATA[Internet]]></category>

		<guid isPermaLink="false">http://blog.openbrainstem.net/peregrine/?p=201</guid>
		<description><![CDATA[Get ready; on February 2, 2010, Star Trek: Online arrives in North America and February 5, 2010 is the big day in Europe, according to game developer Cryptic Studios.
Also, system requirements were announced today.
]]></description>
			<content:encoded><![CDATA[<p>Get ready; on February 2, 2010, <a href="http://startrekonline.com/">Star Trek: Online</a> arrives in North America and February 5, 2010 is the big day in Europe, <a href="http://www.crypticstudios.com/index.php?option=com_content&#038;task=view&#038;id=282&#038;Itemid=31">according to game developer</a> <a href="http://crypticstudios.com/">Cryptic Studios</a>.</p>
<p>Also, <a href="http://startrekonline.com/node/494">system requirements</a> were announced today.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.openbrainstem.net/peregrine/2009/11/11/star-trek-online-release-date/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPress 2.8.5 Upgrade</title>
		<link>http://blog.openbrainstem.net/peregrine/2009/10/28/wordpress-2-8-5-upgrade/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=wordpress-2-8-5-upgrade</link>
		<comments>http://blog.openbrainstem.net/peregrine/2009/10/28/wordpress-2-8-5-upgrade/#comments</comments>
		<pubDate>Thu, 29 Oct 2009 04:36:30 +0000</pubDate>
		<dc:creator>Peregrine</dc:creator>
				<category><![CDATA[Internet]]></category>

		<guid isPermaLink="false">http://blog.openbrainstem.net/peregrine/2009/10/28/wordpress-2-8-5-upgrade/</guid>
		<description><![CDATA[It&#8217;s been only 3.5 weeks since I upgraded this blog to WordPress 2.8.4. Tonight, I upgraded it to 2.8.5, which was released just a few days ago. This one is &#8220;simply&#8221; a hardening release, as they are now preparing for 2.9.
This time, I decided to see if I could simplify the process a little bit. [...]]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s been only 3.5 weeks since I <a href="http://blog.openbrainstem.net/peregrine/2009/10/03/wordpress-2-8-4-upgrade/">upgraded this blog</a> to <a href="http://wordpress.org/>WordPress</a> 2.8.4. Tonight, I upgraded it to 2.8.5, which was <a href="http://wordpress.org/development/2009/10/wordpress-2-8-5-hardening-release/">released</a> just a few days ago. This one is &#8220;simply&#8221; a hardening release, as they are now <a href="http://wordpress.org/development/2009/10/getting-involved-with-the-2-9-beta-testing/">preparing for 2.9</a>.</p>
<p>This time, I decided to see if I could simplify the process a little bit. Instead of reassembling the content by moving the previous version out of the way and then cherry=picking the right files and directories to copy into a fresh extract of the new release, I decided to make a backup copy of he current directory (and the DB) and then copy the extracted files of the new release over the top of the existing install. In this case, there were no DB changes to process, so it didn&#8217;t even ask me to &#8220;Upgrade the Database.&#8221; In fact, after the copy command was done, that was it.</p>
<p>I like it simple.</p>
<p>Still, I need to sit down and work out just how to reorganize the layout of a few things, since there are features that now better support much of what I want to do to better secure and simplify the running of my blog. Perhaps a project for this weekend?</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.openbrainstem.net/peregrine/2009/10/28/wordpress-2-8-5-upgrade/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Utah Open Source Conference 2009</title>
		<link>http://blog.openbrainstem.net/peregrine/2009/10/07/utah-open-source-conference-2009/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=utah-open-source-conference-2009</link>
		<comments>http://blog.openbrainstem.net/peregrine/2009/10/07/utah-open-source-conference-2009/#comments</comments>
		<pubDate>Thu, 08 Oct 2009 03:13:32 +0000</pubDate>
		<dc:creator>Peregrine</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Privacy]]></category>
		<category><![CDATA[Security]]></category>

		<guid isPermaLink="false">http://blog.openbrainstem.net/peregrine/?p=174</guid>
		<description><![CDATA[Visit [ http://www.utosc.com/ ] for the details.
This year, I&#8217;m not doing any presentation. I have some ideas for next year.
I will be running the keysigning party on Friday, October 9 at 7:15pm at the conference. I&#8217;m stepping into doing this a bit last minute, so we&#8217;re going to provide some additional info and the instructions [...]]]></description>
			<content:encoded><![CDATA[<p>Visit [ <a href="http://www.utosc.com/">http://www.utosc.com/</a> ] for the details.</p>
<p>This year, I&#8217;m not doing any presentation. I have some ideas for next year.</p>
<p>I will be running the <a href="http://utosc.com/presentation/123/">keysigning party</a> on Friday, October 9 at 7:15pm at the conference. I&#8217;m stepping into doing this a bit last minute, so we&#8217;re going to provide some additional info and the instructions for the keysigning party on the UTOSC website should be updated very soon.</p>
<p>To participate, just show up. If you want help generating a key pair and getting started, there will be several people there who can assist you, just be sure to bring your own notebook computer. If you have keys, please, email me your full key ID (not a short or medium) at <a href="mailto:keysigning@openbrainstem.net">keysigning@openbrainstem.net</a>. It is a good idea to digitally sign that email.  If you have multiple keys, include them all. I actually have three separate keys these days and 2 of them have multiple IDs associated with them.</p>
<p><a href="http://en.wikipedia.org/wiki/GNU_Privacy_Guard"> (and </a><a href="http://en.wikipedia.org/wiki/Pretty_Good_Privacy">PGP</a>) allow us to digitally sign messages (usually email, but can be used with other communications systems, too), code and other documents. It also let&#8217;s us encrypt files, emails and just about anything else. This is an extremely important technology for a lot of reasons, some of which I&#8217;ve discussed in past articles on this blog (and others). Defending our privacy and ensuring the integrity of our personal, family and business communications is vital. We sign each other&#8217;s keys to build a &#8220;web of trust.&#8221; This is the critical step that makes the whole thing usable.</p>
<p>If you have never used PGP or GPG (a.k.a. <a href="http://www.gnupg.org/">GnuPG</a>, <a href="http://www.gnu.org/">Gnu</a> Privacy Guard) before, visit the GnuPG website for a basic description of how to generate your key pair.</p>
<p>If you have never participated in a keysigning party, check out the  <a href="http://www.cryptnet.net/fdp/crypto/keysigning_party/en/keysigning_party.html">Keysigning Party HOWTO</a> and/or [ <a href="http://keysigning.org/">http://keysigning.org/</a> ].</p>
<p>Immediately following the Utah Open Source Conference 2007 keysigning party, I wrote a simple script to help help you <a href="http://blog.openbrainstem.net/peregrine/?s=sign-lots-o-keys">sign-lots-o-keys</a>. You can download the script from [ <a href="http://www.openbrainstem.net/download/sign-lots-o-keys">http://www.openbrainstem.net/download/sign-lots-o-keys</a> ]. If I have time before the keyparty in just two days, I have some little updates that I would like to implement in that script. But don&#8217;t hold your breath. Perhaps there will be time at the conference on Saturday?</p>
<p>So, please, plan on joining us on Friday. These are always good fun.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.openbrainstem.net/peregrine/2009/10/07/utah-open-source-conference-2009/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPress 2.8.4 Upgrade</title>
		<link>http://blog.openbrainstem.net/peregrine/2009/10/03/wordpress-2-8-4-upgrade/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=wordpress-2-8-4-upgrade</link>
		<comments>http://blog.openbrainstem.net/peregrine/2009/10/03/wordpress-2-8-4-upgrade/#comments</comments>
		<pubDate>Sat, 03 Oct 2009 21:00:14 +0000</pubDate>
		<dc:creator>Peregrine</dc:creator>
				<category><![CDATA[Internet]]></category>

		<guid isPermaLink="false">http://blog.openbrainstem.net/peregrine/2009/10/03/wordpress-2-8-4-upgrade/</guid>
		<description><![CDATA[This blog was running under Wordpress 2.3.2 for far too long. I had put in some patches, and there were security announcements about problems that wouldn&#8217;t affect this blog, since I didn&#8217;t use or enable the affected features. With the systems and application monitoring that I have in place, I wasn&#8217;t that worried.  Still, [...]]]></description>
			<content:encoded><![CDATA[<p>This blog was running under <a href="http://wordpress.org/">Wordpress</a> 2.3.2 for far too long. I had put in some patches, and there were security announcements about problems that wouldn&#8217;t affect this blog, since I didn&#8217;t use or enable the affected features. With the systems and application monitoring that I have in place, I wasn&#8217;t that worried.  Still, I had started to update to 2.5.1 and 2.6 and 2.7 following their respective releases. Today, I finally took an hour and did the upgrade to the currently available version. I know, I know &#8230; that probably means that 2.8.5 will come out this afternoon.</p>
<p>The reason that it took an hour was that I was forced to upgrade several plugins and fix a couple of configurations. No big deal. It went pretty smoothly. Here are the basic steps that I go through:<br />
<span id="more-166"></span></p>
<ol>
<li>Backup the DB</li>
<li>Move he current install out of the way</li>
<li>Extract the new code base</li>
<li>Copy the <code>wp-config.php</code> file to the new code directory</li>
</ol>
<p>So, for example, I will run commands like these:</p>
<pre>
$ <b>mysqldump -p <i>dbname</i> | gzip -9 >~/backups/<i>dbname</i>.sql.gz</b>
$ <b>mv <i>web-server-vhost-dir</i>/docroot/<i>wordpress-blog-dir</i>/ <i>web-server-vhost-dir</i>/</b>
$ <b>cd <i>web-server-vhost-dir</i>/docroot/</b>
$ <b>tar -zxf ~/wordpress-<i>version</i>.tar.gz</b>
$ <b>cp <i>web-server-vhost-dir</i>/<i>wordpress-blog-dir</i>/wp-config.php wordpress/</b>
$ <b>mv wordpress/ <i>wordpress-blog-dir</i>
</b></pre>
<p>Obviously, you need to replace the italic parts above with filenames and directories that match your setup. Perhaps you structure your website differently and the WordPress code will be in the root of your webspace.</p>
<p>After the new code is in place with the <code>wp-config.php</code> file copied in:</p>
<ol>
<li>Hit the admin page in a web browser</li>
<li>Click the &#8220;Update Database&#8221; button</li>
<li>Test</li>
<li>Fix plugins, theme, caching, etc. (mostly file and directory owners/groups and permissions)</li>
</ol>
<p>If there&#8217;s a problem, simply move the new code out of the way (or delete it, if you prefer) and copy or move the old one back into place.  If the DB update process was run, you will have to restore your database to its previous state. This is easily accomplished with a single <code><b>mysql</b></code> command::</p>
<pre>
$ <b>zcat ~/backups/<i>year</i>-<i>month</i>-<i>day-</i><i>dbname</i>.sql.gz | mysql -p <i>dbname</i>
</b></pre>
<p>You&#8217;ll be so glad that you had that backup file.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.openbrainstem.net/peregrine/2009/10/03/wordpress-2-8-4-upgrade/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Block SSH Cracking Bot-Nets with Netfilter</title>
		<link>http://blog.openbrainstem.net/peregrine/2009/01/02/block-ssh-cracking-bot-nets-with-netfilter/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=block-ssh-cracking-bot-nets-with-netfilter</link>
		<comments>http://blog.openbrainstem.net/peregrine/2009/01/02/block-ssh-cracking-bot-nets-with-netfilter/#comments</comments>
		<pubDate>Fri, 02 Jan 2009 19:26:49 +0000</pubDate>
		<dc:creator>Peregrine</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Security]]></category>

		<guid isPermaLink="false">http://blog.openbrainstem.net/peregrine/2009/01/02/block-ssh-cracking-bot-nets-with-netfilter/</guid>
		<description><![CDATA[A few weeks ago, I was looking through some Netfilter documentation, just poking around, looking at some modules I&#8217;ve never seen/played-with/hear-of and I came across the recent module. I decided to try it out on one of my servers that gets anywhere from zero (0) to tens of thousands of crack attempts via SSH per [...]]]></description>
			<content:encoded><![CDATA[<p>A few weeks ago, I was looking through some <a href="http://netfilter.org/">Netfilter</a> documentation, just poking around, looking at some modules I&#8217;ve never seen/played-with/hear-of and I came across the <code>recent</code> module. I decided to try it out on one of my servers that gets anywhere from zero (0) to tens of thousands of crack attempts via SSH per day and see if I could weed out some of these bot-nets. It also occurs to me that this could help fight email SPAM-bots, too.</p>
<p>Of course, it&#8217;s very important to have good, strong password security practices. If you have poor passwords, none of this will matter, as you&#8217;ve probably already been compromised whether you know it or not. This means that <i>all</i> users have to have strong passwords. Techniques for helping users to create and use strong passwords are beyond the scope of this article, but I will write about these things in the near future.<br />
<span id="more-164"></span><br />
Here&#8217;s the configuration that I put into place. I&#8217;m showing this as the the <code><b>iptables</b></code> commands that you would run on the command line, adapt to however you persist your Netfilter configuration. Also note that these lines should <i>replace</i> anything that you now have in there for SSH. I&#8217;m also including the additional <code><b>ESTABLISHED,RELATED</b></code> rule here for completeness:</p>
<pre><code># <b>iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# </b><b>iptables -A INPUT -i <i>$OUTSIDE_INTERFACE</i> -p tcp --sport <i>$UNPRIV_PORTS</i> --dport 22 -m state --state NEW -m recent --update --seconds 10 -j REJECT --reject-with icmp-host-prohibited</b>
# <b>iptables -A INPUT -i <i>$OUTSIDE_INTERFACE</i> -p tcp --sport <i>$UNPRIV_PORTS</i> --dport 22 -m state --state NEW -m recent --set -j ACCEPT
</b></code></pre>
<p>These three rules mean:</p>
<ol>
<li>Accept traffic for &#8220;conversations&#8221; that are already in progress. This rule works for traffic in both directions and will handle everything in the ongoing connection.</li>
<li>If an IP packet matches these criterion:
<ol>
<li>&#8220;<code><b>-A INPUT -i <i>$OUTSIDE_INTERFACE</i></b></code>&#8221; &#8212; coming in on the Internet connetion (I create a variable with the value &#8220;<code><b>eth0</b></code>&#8221; or whatever it is and use that in my firewalling scripts);</li>
<li>&#8220;<code><b>-p tcp</b></code>&#8221; &#8212; carry TCP (for Layer 4) in the IP packet payload;
         </li>
<li>&#8220;<code><b>--sport <i>$UNPRIV_PORTS</i></b></code>&#8221; &#8212; coming from an unprivileged TCP port (legitmate clients should only come from source ports 1024 through 65535, inclusive);</li>
<li>
         </li>
<li>&#8220;<code><b>--dport 22</b></code> &#8212; destined for TCP port <code><b>22</b></code>;</li>
<li>&#8220;<code><b>-m state --state</b></code>&#8221; &#8212; the <code>state</code> module doesn&#8217;t have a record of this packet as being part of an existing connection;;</li>
<li>&#8220;<code><b>-m recent --update --seconds 10</b></code>&#8221; &#8212; the update module has a record of another connection attempt matching this one within the past 10 seconds.</li>
</ol>
<p>      Take these actions:</p>
<ol>
<li>&#8220;<code><b>-j REJECT</b></code>&#8221; &#8212; throw the packet away;</li>
<li>&#8220;<code><b>--reject-with icmp-host-prohibited</b></code>&#8221; &#8212; return an ICMP <code>host-prohibited</code> response to the client who tried to initiate this connection.</li>
</ol>
</li>
<li>The last rule is essentially the same as the second, except for:
<ol>
<li>&#8220;<code><b>-m recent --set</b></code>&#8221; &#8212; make a note of the time that this connection attempt occurs at;</li>
<li>&#8220;<code><b>-j ACCEPT</b></code>&#8221; &#8212; if all criterion match, accept the packet (which will stop further rule processing here, BTW).</li>
</ol>
</li>
</ol>
<p>Basically, what we&#8217;re trying to do here is to limit the number of failed connection attempts that are allowed.</p>
<p>Let&#8217;s say that human being tries to connect via <code><b><i>ssh lamont.example.com</i></b></code> and they don&#8217;t have an account or the mis-type their password several times to the point where <code><b>sshd</b></code> cuts off the connection, so they re-run their <code><b>ssh</b></code> command to try again. It will probably work and let them in, as it probably took them longer than 10 seconds from the first packet of the first TCP connection until the first packet of the next TCP connection.</p>
<p>However, the cracker-bot-nets don&#8217;t work like humans. They automate the process of trying to connect as fast as they can, so they will try only 1 or maybe as many as 3 or 4 passwords before closing the TCP connection and starting another. Since they don&#8217;t have to be as slow as people, they&#8217;ll usually be coming back again in under the 10 seconds. Most of them actually try to establish multiple connections (2-20ish at a time) in order to try more passwords.</p>
<p>Once the crack-bot starts seeing TCP connection failures, they usually skip your IP and go on to try and find softer targets. If they can&#8217;t connect to SSH, then why bother wasting time trying.</p>
<p>After setting up this configuration and letting it run for a week, I can report that it works marvelously. I&#8217;m getting under 10 break-in attempts per day, now. If you&#8217;re going to have SSH visible to the world (and why shouldn&#8217;t you?), then I would recommend adopting these Netfilter rules in your firewall configuration.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.openbrainstem.net/peregrine/2009/01/02/block-ssh-cracking-bot-nets-with-netfilter/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPress 2.3.1 Upgrade</title>
		<link>http://blog.openbrainstem.net/peregrine/2007/11/16/wordpress-231-upgrade/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=wordpress-231-upgrade</link>
		<comments>http://blog.openbrainstem.net/peregrine/2007/11/16/wordpress-231-upgrade/#comments</comments>
		<pubDate>Sat, 17 Nov 2007 00:13:02 +0000</pubDate>
		<dc:creator>Peregrine</dc:creator>
				<category><![CDATA[Internet]]></category>

		<guid isPermaLink="false">http://blog.openbrainstem.net/peregrine/2007/11/16/wordpress-231-upgrade/</guid>
		<description><![CDATA[I finally got all of the blogs I manage updated to WordPress 2.3.1, today. Several friends who also use WordPress had experienced some difficulties upgrading to 2.3.0, so I had held off on the updates on some of the blogs until these past 3 days. There were two of them that I had some very [...]]]></description>
			<content:encoded><![CDATA[<p>I finally got all of the blogs I manage updated to <a href="http://wordpress.org/">WordPress</a> 2.3.1, today. Several friends who also use WordPress had experienced some difficulties upgrading to 2.3.0, so I had held off on the updates on some of the blogs until these past 3 days. There were two of them that I had some very small problems with, but they were solved very easily. One of those was this blog, the one you are reading right now.</p>
<p>First, when I was updating my wife&#8217;s blog, I got all in a hurry and forgot to make a backup of the database first. Then, when I connected to the <code>wp-admin/upgrade.php</code> script and clicked on the <code>Upgrade WordPress</code> button, all hell broke lose. I had DB errors left and sideways (thankfully, not quite right, though). At that moment, I realized that,  &#8220;I could really use that DB backup right about now.&#8221; Well, I didn&#8217;t have it, so I tried the export function from the admin interface and that worked. At least I had her posts (there was a brand new one, too, which wasn&#8217;t in the most recent backup file that I did have).<br />
<span id="more-161"></span><br />
The fix was pretty easy, though. The main problem was that there were several changes that required creating new tables in the DB (<a href="http://www.mysql.com/">MySQL</a>) and dropping others, but because the DB user that WordPress uses doesn&#8217;t just have full access to the database, these statements failed and prevented others from succeeding, too. For security reasons, I use <a href="http://dev.mysql.com/doc/refman/5.1/en/grant.html"><code>GRANT</code></a> statements for the tables that the app needs, which keeps it from accessing other tables in the same DB (there&#8217;s one database per user), which are for other apps. However, trying to run the <code>wp-admin/upgrade.php</code> script again was a no-go, as it thought the DB was fully up to date. A quick glance at the code in the <code>wp-admin/upgrade.php</code> script showed that this decision was based on the value in the <code>db_version</code> option.</p>
<p>I connected using the <code>mysql</code> command line client (over an <code>ssh</code> connection) and ran a couple of queries against one of the other DBs which had the same (older) version of WordPress. Once I had found the correct old value for the <code>db_version</code> option, I ran a simple <a href="http://dev.mysql.com/doc/refman/5.1/en/update.html"><code>UPDATE</code></a> query (the italics indicate information that may differ on your databases):</p>
<pre>
mysql> <b>UPDATE <i>dbname</i>.<i>wp_</i>options SET option_value='<i>5183</i>' WHERE option_name='db_version';</b>
Query OK, 1 row affected (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 0
</pre>
<p>I then re-loaded the <code>wp-admin/upgrade.php</code> script in my browser, which now thought that the database was out of date. So far, so good. But, before trying the upgrade again, I also added a new <code>GRANT</code> for the WordPress user for that DB, allowing them to run <a href="http://dev.mysql.com/doc/refman/5.1/en/data-definition.html"><code>CREATE</code></a> statements against that user&#8217;s database:</p>
<pre>
mysql> <b>GRANT CREATE ON <i>database</i>.* TO '<i>wp_user</i>'@'localhost';</b>
Query OK, 0 rows affected (0.00 sec)
</pre>
<p>This time, there were far fewer errors. It was able to all the <a href="http://dev.mysql.com/doc/refman/5.1/en/create-table.html"><code>CREATE TABLE</code></a> statements. However, as there were no <code>GRANT</code>s to permit the WordPress database user to access the new tables, other operations failed. A quick look allowed me to pick out which tables I needed to issue <code>GRANT</code> statements for:</p>
<pre>
mysql> <b>SHOW GRANTS FOR '<i>wp_user</i>'@'localhost';</b>
+------------------------------------------------------------------------------------------------------------------+
| Grants for <i>wp_user</i>@localhost                                                                                   |
+------------------------------------------------------------------------------------------------------------------+
... snip ...
| GRANT SELECT, INSERT, UPDATE, DELETE, INDEX ON `<i>dbname</i>`.`wp_comments` TO '<i>wp_user</i>'@'localhost'                 |
| GRANT SELECT, INSERT, UPDATE, DELETE, INDEX ON `<i>dbname</i>`.`wp_categories` TO '<i>wp_user</i>'@'localhost'               |
| GRANT SELECT, INSERT, UPDATE, DELETE, INDEX ON `<i>dbname</i>`.`wp_postmeta` TO '<i>wp_user</i>'@'localhost'                 |
| GRANT SELECT, INSERT, UPDATE, DELETE, INDEX ON `<i>dbname</i>`.`wp_usermeta` TO '<i>wp_user</i>'@'localhost'                 |
| GRANT SELECT, INSERT, UPDATE, DELETE, INDEX ON `<i>dbname</i>`.`wp_posts` TO '<i>wp_user</i>'@'localhost'                    |
| GRANT SELECT, INSERT, UPDATE, DELETE, INDEX ON `<i>dbname</i>`.`wp_linkcategories` TO '<i>wp_user</i>'@'localhost'           |
| GRANT SELECT, INSERT, UPDATE, DELETE, INDEX ON `<i>dbname</i>`.`wp_options` TO '<i>wp_user</i>'@'localhost'                  |
| GRANT SELECT, INSERT, UPDATE, DELETE, INDEX ON `<i>dbname</i>`.`wp_post2cat` TO '<i>wp_user</i>'@'localhost'                 |
| GRANT SELECT, INSERT, UPDATE, DELETE, INDEX ON `<i>dbname</i>`.`wp_links` TO '<i>wp_user</i>'@'localhost'                    |
| GRANT SELECT, INSERT, UPDATE, DELETE, INDEX ON `<i>dbname</i>`.`wp_users` TO '<i>wp_user</i>'@'localhost'                    |
+------------------------------------------------------------------------------------------------------------------+
12 rows in set (0.00 sec)

mysql> <b>SHOW TABLES IN <i>dbname</i>;</b>
+-----------------------+
| Tables_in_dbname      |
+-----------------------+
| wp_comments           |
| wp_links              |
| wp_options            |
| wp_postmeta           |
| wp_posts              |
| wp_term_relationships |
| wp_term_taxonomy      |
| wp_terms              |
| wp_usermeta           |
| wp_users              |
+-----------------------+
10 rows in set (0.00 sec)
</pre>
<p>Comparing those two lists showed that I needed to run a few <code>GRANT</code> statements:</p>
<pre>
mysql> <b>GRANT SELECT, INSERT, UPDATE, DELETE, INDEX, ALTER ON <i>dbname</i>.wp_term_relationships TO '<i>wp_user</i>'@'localhost';</b>
Query OK, 0 rows affected (0.01 sec)

mysql> <b>GRANT SELECT, INSERT, UPDATE, DELETE, INDEX, ALTER ON <i>dbname</i>.wp_terrm_taxonomy TO '<i>wp_user</i>'@'localhost';</b>
Query OK, 0 rows affected (0.01 sec)

mysql> <b>GRANT SELECT, INSERT, UPDATE, DELETE, INDEX, ALTER ON <i>dbname</i>.wp_terms TO '<i>wp_user</i>'@'localhost';</b>
Query OK, 0 rows affected (0.01 sec)
</pre>
<p>I then reset the <code>db_version</code> option, re-loaded the <code>wp-admin/upgrade.php</code> script in my browser and clicked the <code>Upgrade WordPress</code> button, again. This time, it worked perfectly. The database for my wife&#8217;s blog was fully repaired and upgraded for WordPress 2.3.1.</p>
<p>Now, I want to stress here that this would have gone a lot more smoothly, not to mention <i>safely</i> if I had only slowed down and made that backup of the her database before I started messing around with it. It&#8217;s very easy to do just that:</p>
<pre>
$ <b>mysqldump -p <i>dbname</i> &gt; ~/backup/$(date --iso-8601)-<i>dbname</i>.sql</b>
</pre>
<p>Note, that this precise command line assumes that you are running from a user account who has a database account in MySQL with the same name as the username and that this user has access to the database in question. Adjust your usage appropriately. Also, if your server is fairly busy, you might want to use the <code>mysqldumpslow</code> command instead of the <code>mysqldump</code> one. <code>mysqldumpslow</code> merely takes its sweet time about things, so as to not put undue additional load on your servers, but otherwise its syntax and use is the same.</p>
<p>When I applied all this goodness to upgrade this blog, I ended up with just 3 errors from running the <code>wp-admin/upgrade.php</code> script, after I had gone through the process of adding new <code>GRANT</code>s for that dbuser to access my user&#8217;s databases. The errors were that 3 <a href="http://dev.mysql.com/doc/refman/5.1/en/drop-table.html"><code>DROP TABLE</code></a> statements had failed. These were easilly handled manually (I don&#8217;t want the applications to be able to <code>DROP</code> anything on their own):</p>
<pre>
mysql> <b>USE <i>otherdb</i>;</b>
mysql> <b>DROP TABLE IF EXISTS wp_categories;</b>
Query OK, 0 rows affected (0.02 sec)

mysql> <b>DROP TABLE IF EXISTS wp_link2cat;</b>
Query OK, 0 rows affected (0.00 sec)

mysql> <b>DROP TABLE IF EXISTS wp_post2cat;</b>
Query OK, 0 rows affected (0.02 sec)
</pre>
<p>That&#8217;s it. It only took me about 15 minutes to do all of this and to extract the files for the new version of wordpress and copy and move over all the little tidbits (mostly for things found in the <code>wp-content/</code> directory) to get each of the blogs updated to the latest release. Interrestingly, it took me about 2 hours to write, sanitize and proofread/edit this post.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.openbrainstem.net/peregrine/2007/11/16/wordpress-231-upgrade/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Livna: Please, Keep Drivers in the Repo</title>
		<link>http://blog.openbrainstem.net/peregrine/2007/11/15/livna-please-keep-drivers-in-the-repo/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=livna-please-keep-drivers-in-the-repo</link>
		<comments>http://blog.openbrainstem.net/peregrine/2007/11/15/livna-please-keep-drivers-in-the-repo/#comments</comments>
		<pubDate>Thu, 15 Nov 2007 18:40:09 +0000</pubDate>
		<dc:creator>Peregrine</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://blog.openbrainstem.net/peregrine/2007/11/15/livna-please-keep-drivers-in-the-repo/</guid>
		<description><![CDATA[In dealing with nVidia and ATI drivers for Linux (both a kernel and X driver are needed), I&#8217;ve been using the Livna YUM repositories for Fedora to easily install them as RPMs using YUM.
I&#8217;ve run into trouble here and there as the Livna folks keep pulling RPMs from their repos for older versions of the [...]]]></description>
			<content:encoded><![CDATA[<p>In dealing with nVidia and ATI drivers for Linux (both a kernel and X driver are needed), I&#8217;ve been using the <a href="http://rpm.livna.org/">Livna YUM repositories for Fedora</a> to easily install them as RPMs using YUM.</p>
<p>I&#8217;ve run into trouble here and there as the Livna folks keep pulling RPMs from their repos for older versions of the kernels. At the very least, they should leave the <code>kmod-*</code> packages in there for the original kernels that shipped with each release. Then, people can install a release and get a good driver. I had to wait for about 3 weeks after I first put F7 on my home workstation (dual AMD Opteron) before I could get the nVidia driver from Livna because they didn&#8217;t have one for the older kernel packages and the newer kernels weren&#8217;t booting (turned out to be malformed initrd files, which I later fixed).</p>
<p>Yes, I understand that they take up some disk space, but it&#8217;s not really that much perhaps 100M per release to keep all <code>kmod-*</code> packages and their dependencies around.</p>
<p>Livna, if you&#8217;re listening, please, give us all the driver packages and don&#8217;t remove them. You don&#8217;t know which kernels are working for people and which aren&#8217;t, so you could really be making things pretty difficult for people.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.openbrainstem.net/peregrine/2007/11/15/livna-please-keep-drivers-in-the-repo/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>sign-lots-o-keys</title>
		<link>http://blog.openbrainstem.net/peregrine/2007/09/11/sign-lots-o-keys/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=sign-lots-o-keys</link>
		<comments>http://blog.openbrainstem.net/peregrine/2007/09/11/sign-lots-o-keys/#comments</comments>
		<pubDate>Wed, 12 Sep 2007 00:00:51 +0000</pubDate>
		<dc:creator>Peregrine</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Privacy]]></category>
		<category><![CDATA[Security]]></category>

		<guid isPermaLink="false">http://blog.openbrainstem.net/peregrine/2007/09/11/sign-lots-o-keys/</guid>
		<description><![CDATA[On the last day of the Utah Open Source Conference 2007 (UTOSC), there was a PGP/GPG key signing party, hosted by Scott Paul Robertson. It was good to be able to get set up to properly sign so many keys, but it did give me a little problem; I needed to sign everyones&#8217; keys with [...]]]></description>
			<content:encoded><![CDATA[<p>On the last day of the <a href="http://utosc.org/">Utah Open Source Conference</a> 2007 (UTOSC), there was a <a href="http://en.wikipedia.org/wiki/Pretty_Good_Privacy">PGP</a>/<a href="http://www.gnupg.org/">GPG</a> key signing party, hosted by <a href="http://scottr.org">Scott Paul Robertson</a>. It was good to be able to get set up to properly sign so many keys, but it did give me a little problem; I needed to sign everyones&#8217; keys with each of my 4 active keys. That would have been over 100 times running the <code>gpg</code> command. Sounds like something begging to be scripted, so I did.</p>
<p>I&#8217;m posting the script, which is still very rough, as I didn&#8217;t both taking any time when I whipped it up last night to take care of everything that it really should be doing. Still, I&#8217;ll work on it here and there, I&#8217;m sure. You can download it from <a href="http://www.openbrainstem.net/download/sign-lots-o-keys">http://www.openbrainstem.net/download/sign-lots-o-keys</a>. If you feel like makeing some fixes, either post your patches (please, create them as a unified <code>diff</code> file, if you wouldn&#8217;t mind) and put a link in the comments here and/or on your own blog.</p>
<p>Enjoy!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.openbrainstem.net/peregrine/2007/09/11/sign-lots-o-keys/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>No More Comments?</title>
		<link>http://blog.openbrainstem.net/peregrine/2007/07/28/no-more-comments/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=no-more-comments</link>
		<comments>http://blog.openbrainstem.net/peregrine/2007/07/28/no-more-comments/#comments</comments>
		<pubDate>Sat, 28 Jul 2007 08:06:54 +0000</pubDate>
		<dc:creator>Peregrine</dc:creator>
				<category><![CDATA[Internet]]></category>

		<guid isPermaLink="false">http://blog.openbrainstem.net/peregrine/2007/07/28/no-more-comments/</guid>
		<description><![CDATA[After reading Dave Winer&#8217;s comments on blogging, in particular the parts where he discusses comments and their negative effects on a blog, I&#8217;ve decided to disable commenting in this blog. TrackBacks are still there.
Let&#8217;s see how this goes. If you would like to comment, you can&#8217;t post it on my site. Use your own blog [...]]]></description>
			<content:encoded><![CDATA[<p>After reading Dave Winer&#8217;s <a href="http://www.scripting.com/2007/01/01.html#theUneditedVoiceOfAPerson">comments on blogging</a>, in particular the parts where he discusses comments and their negative effects on a blog, I&#8217;ve decided to disable commenting in this blog. TrackBacks are still there.</p>
<p>Let&#8217;s see how this goes. If you would like to comment, you can&#8217;t post it on my site. Use your own blog and use a <a href="http://en.wikipedia.org/wiki/Trackback">TrackBack</a> to this article. Let me know what you think.</p>
<p>Personally, I&#8217;ve always preferred the idea of TrackBacks over comments. I just wasn&#8217;t quite sure how to explain (nor did I ever take the time to really think about) why I felt that way. So, thank you to Dave Winer for helping me quantify it.</p>
<p>Although I have configured this blog to not have the &#8220;Allow comments&#8221; option selected by default, existing posts which did have that option on should still permit comments. I will fix this by editing the DB directly. Hopefully, existing comments will still be visible once I do so.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.openbrainstem.net/peregrine/2007/07/28/no-more-comments/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPress 2.2.1</title>
		<link>http://blog.openbrainstem.net/peregrine/2007/07/28/wordpress-221/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=wordpress-221</link>
		<comments>http://blog.openbrainstem.net/peregrine/2007/07/28/wordpress-221/#comments</comments>
		<pubDate>Sat, 28 Jul 2007 07:42:38 +0000</pubDate>
		<dc:creator>Peregrine</dc:creator>
				<category><![CDATA[Internet]]></category>

		<guid isPermaLink="false">http://blog.openbrainstem.net/peregrine/2007/07/28/wordpress-221/</guid>
		<description><![CDATA[Well, I&#8217;ve been running with WrodPress 2.2.1 for a while now. This was another update that screwed up the blogroll (I patched this in my code for 2.1 and 2.2).
But a new problem has surfaced with 2.2.1 in the admin interface; when loading the Dashboard or the Write or other pages which include wp-includes/js/jquery/interface.js, it [...]]]></description>
			<content:encoded><![CDATA[<p>Well, I&#8217;ve been running with <a href="http://www.wordpress.org/">WrodPress</a> 2.2.1 for a while now. This was another update that screwed up the blogroll (I patched this in my code for 2.1 and 2.2).</p>
<p>But a new problem has surfaced with 2.2.1 in the admin interface; when loading the Dashboard or the Write or other pages which include <code>wp-includes/js/jquery/interface.js</code>, it freezes up my web browsers. I&#8217;ve tried it with Firefox, Opera, Konqueror &#038; Safari, some on both Linux and Windows. The browser eventually lets me kill it (but I have to stop it 2 or 3 times) and then the page will finally load. In browsers where I have debuggers for JavaScript, I find this error:</p>
<pre><b>Error</b>: https://www.openbrainstem.net/blog/peregrine/wp-includes/js/jquery/interface.js?ver=1.2: Error: Error</pre>
<p>It&#8217;s pretty frustrating trying to use my blog when the admin interface has some buggy JavaScript. I&#8217;m going to try to debug it, though JavaScript isn&#8217;t my favorite language. I&#8217;ll keep you posted if I find a fix.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.openbrainstem.net/peregrine/2007/07/28/wordpress-221/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>OpenID Enabled</title>
		<link>http://blog.openbrainstem.net/peregrine/2007/07/13/openid-enabled/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=openid-enabled</link>
		<comments>http://blog.openbrainstem.net/peregrine/2007/07/13/openid-enabled/#comments</comments>
		<pubDate>Fri, 13 Jul 2007 07:38:18 +0000</pubDate>
		<dc:creator>Peregrine</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[OpenBrainstem]]></category>

		<guid isPermaLink="false">http://blog.openbrainstem.net/peregrine/2007/07/13/peregrine-openid-enabled/</guid>
		<description><![CDATA[Thanks go to Christer Edwards for encouraging me to deploy OpenID support on this blog.
If you have an OpenID account, you can now use it to comment and to register on this blog, without having to register on this blog. I haven&#8217;t required logins to commont on this blog since June of 2006, but still [...]]]></description>
			<content:encoded><![CDATA[<p>Thanks go to <a href="http://ubuntu-tutorials.com/">Christer Edwards</a> for encouraging me to <a href="http://feeds.feedburner.com/~r/UbuntuTutorials/~3/132716424/">deploy OpenID support</a> on this blog.</p>
<p>If you have an OpenID account, you can now use it to comment and to register on this blog, without having to register on this blog. I haven&#8217;t <a href="http://blog.openbrainstem.net/peregrine/2006/06/08/login-not-required-to-comment/">required logins to commont</a> on this blog since June of 2006, but still required commentors to fill in their name and email and optionally allowed them to include a URL for their own site. Now, these kinds of things can be done via your OpenID.</p>
<p>I didn&#8217;t activate the second <a href="http://www.wordpress.org/">WordPress</a> plugin yet, as I haven&#8217;t registered an OpenID of my own, nor have I set up an OpenID server.</p>
<p>I&#8217;m thinking about standing up an OpenID server on <a href="http://www.openbrainstem.net/">OpenBrainstem</a>. I&#8217;m not really sure about this yet, so I&#8217;m asking you, my readers, to weigh in on the idea. Post your views as comments to this post. Tell me why I should or shouldn&#8217;t run my own OpenID server.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.openbrainstem.net/peregrine/2007/07/13/openid-enabled/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Sorting SPAM</title>
		<link>http://blog.openbrainstem.net/peregrine/2007/02/28/sorting-spam/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=sorting-spam</link>
		<comments>http://blog.openbrainstem.net/peregrine/2007/02/28/sorting-spam/#comments</comments>
		<pubDate>Thu, 01 Mar 2007 02:54:11 +0000</pubDate>
		<dc:creator>Peregrine</dc:creator>
				<category><![CDATA[Internet]]></category>

		<guid isPermaLink="false">http://blog.openbrainstem.net/peregrine/2007/02/28/sorting-spam/</guid>
		<description><![CDATA[I been using SpamAssassin for a while to help identify SPAM. About a week ago, I started seeing all messages that were being flagged as SPAM by SpamAssassin show up in my Inbox instead of in my SPAM folder.
Well, it irritated me enough a moment ago to actually take a look at the full headers [...]]]></description>
			<content:encoded><![CDATA[<p>I been using <a href="http://spamassassin.apache.org/">SpamAssassin</a> for a while to help identify <a href="http://en.wikipedia.org/wiki/E-mail_spam">SPAM</a>. About a week ago, I started seeing all messages that were being flagged as SPAM by SpamAssassin show up in my Inbox instead of in my SPAM folder.</p>
<p>Well, it irritated me enough a moment ago to actually take a look at the full headers of just such a message. Here are the headers added by SpamAssassin:</p>
<pre>X-Spam-Flag: YES
X-Spam-Checker-Version: SpamAssassin 3.1.8 (2007-02-13) on
       dark-templar.lamontpeterson.net
X-Spam-Level: ***********************
X-Spam-Status: Yes, score=23.0 required=4.0 tests=BAYES_80,DRUGS_ERECTILE,
       DRUGS_ERECTILE_OBFU,HTML_MESSAGE,RCVD_IN_BL_SPAMCOP_NET,URIBL_AB_SURBL,
       URIBL_JP_SURBL,URIBL_SBL,URIBL_SC_SURBL,VIA_GAP_GRA autolearn=no version=3.1.8
X-Spam-Report:
       *  2.5 VIA_GAP_GRA BODY: Attempts to disguise the word 'viagra'
       *  2.0 BAYES_80 BODY: Bayesian spam probability is 80 to 95%
       *      [score: 0.8180]
       *  0.0 HTML_MESSAGE BODY: HTML included in message
       *  1.6 RCVD_IN_BL_SPAMCOP_NET RBL: Received via a relay in bl.spamcop.net
       *      [Blocked - see &lt;http ://www.spamcop.net/bl.shtml?201.83.176.249&gt;]
       *  1.6 URIBL_SBL Contains an URL listed in the SBL blocklist
       *      [URIs: tersho.com]
       *  3.8 URIBL_AB_SURBL Contains an URL listed in the AB SURBL blocklist
       *      [URIs: tersho.com]
       *  4.1 URIBL_JP_SURBL Contains an URL listed in the JP SURBL blocklist
       *      [URIs: tersho.com]
       *  4.5 URIBL_SC_SURBL Contains an URL listed in the SC SURBL blocklist
       *      [URIs: tersho.com]
       *  2.4 DRUGS_ERECTILE_OBFU Obfuscated reference to an erectile drug
       *  0.5 DRUGS_ERECTILE Refers to an erectile drug
</pre>
<p>(Now <em>that&#8217;s</em> one spammy piece of SPAM!)</p>
<p>OK, so I took a look at my ~/.mailfilter file on the server:</p>
<pre>### SPAM
if ( /^X-Spam-Flag: *(yes|YES) / )
{
   to "$HOME/mail/.SPAM/"
}
</pre>
<p>Many of my readers may be eagle-eyed enough to spot the problem right away. If you said, &#8220;Hey, you&#8217;ve got a superfluous space after your closing parenthesis in your <a href="http://www.google.com/search?q=regular+expressions">regular expression</a> there,&#8221; then you got it.</p>
<p>That regex would match either &#8220;yes&#8221; or &#8220;YES&#8221; (they are case sensitive). I did this because at some point long ago, I had a rule on a system that used &#8220;yes&#8221;, but SpamAssassin today produces &#8220;YES&#8221; and I just didn&#8217;t want to have it missing stuff because of something like that.</p>
<p>I decided to further improve this regex so that it might be less likely I&#8217;ll have to &#8220;fix&#8221; it again:</p>
<pre>### SPAM
if ( /^X-Spam-Flag: *[yY][eE][sS]/ )
{
   to "$HOME/mail/.SPAM/"
}
</pre>
<p>Problem solved.</p>
<p><a href="http://en.wikipedia.org/wiki/BTW">BTW</a>: the term <a href="http://en.wikipedia.org/wiki/E-mail_spam">SPAM</a> originally came to be used in the computer world because of the <a href="http://www.intriguing.com/mp/">Monty Python</a> <a href="http://www.intriguing.com/mp/_scripts/another.asp">Spam sketch</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.openbrainstem.net/peregrine/2007/02/28/sorting-spam/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPress 2.1 Upgrade</title>
		<link>http://blog.openbrainstem.net/peregrine/2007/02/10/wordpress-21-upgrade/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=wordpress-21-upgrade</link>
		<comments>http://blog.openbrainstem.net/peregrine/2007/02/10/wordpress-21-upgrade/#comments</comments>
		<pubDate>Sat, 10 Feb 2007 16:53:17 +0000</pubDate>
		<dc:creator>Peregrine</dc:creator>
				<category><![CDATA[Internet]]></category>

		<guid isPermaLink="false">http://blog.openbrainstem.net/peregrine/2007/02/10/wordpress-21-upgrade/</guid>
		<description><![CDATA[There were a few minor difficulties updating this blog to WordPress 2.1 Ella (reffering to Ella Fitzgerald). Over the past couple of weeks, I&#8217;ve slowly worked on fixing things. It looks like everything is the way it should be now.
There were some databases changes that weren&#8217;t handled very cleanly by the update script. I had [...]]]></description>
			<content:encoded><![CDATA[<p>There were a few minor difficulties updating this blog to <a href="http://wordpress.org/">WordPress</a> <a href="http://wordpress.org/development/2007/01/ella-21/">2.1 Ella</a> (reffering to <a href="http://en.wikipedia.org/wiki/Ella_Fitzgerald">Ella Fitzgerald</a>). Over the past couple of weeks, I&#8217;ve slowly worked on fixing things. It looks like everything is the way it should be now.</p>
<p>There were some databases changes that weren&#8217;t handled very cleanly by the update script. I had to drop and recreate the DB from my backup (taken just before starting the upgrade process).</p>
<p>One of things that changed was the way that links are managed. The <code>wp_linkcategories</code> table was &#8220;replaced&#8221; with a new <code>wp_link2cat</code> table. Unfortunately, the upgrade script didn&#8217;t complete the conversion process.</p>
<p>Most of the work required to fix up my links was done within the management interface in my web browser. Not hard, but it took a few moments. One of the categories didn&#8217;t make it through the upgrade. Several others (but not all of them) from the categories list now show up, too. Upon further examination I discovered that the only categories that appeared were those which were not assigned to any posts, though, it appears in the UI that they intend all categories to be simultaneously usable for posts, pages &#038; links. However, when I tried to assign a category which is in use for several posts to a link, that link no longer rendered.</p>
<p>The change from a separate set of categories for links to a unified categories system was certainly the right direction. It merely appears that testing of that part of the upgrade code wasn&#8217;t very thourough.</p>
<p>Writing this post, I discovered what appears to be a new auto-save feature. Every couple of minutes while the focus is in the post body input field, the auto-save kicks in and a text marker next to the save/publish buttons updates to say &#8220;Saved at h:mm:ss&#8221; (the time on this notebook). Nice!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.openbrainstem.net/peregrine/2007/02/10/wordpress-21-upgrade/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>TrackMeNot</title>
		<link>http://blog.openbrainstem.net/peregrine/2006/09/15/trackmenot/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=trackmenot</link>
		<comments>http://blog.openbrainstem.net/peregrine/2006/09/15/trackmenot/#comments</comments>
		<pubDate>Fri, 15 Sep 2006 20:37:28 +0000</pubDate>
		<dc:creator>Peregrine</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Privacy]]></category>
		<category><![CDATA[Security]]></category>

		<guid isPermaLink="false">http://blog.openbrainstem.net/peregrine/2006/09/15/trackmenot/</guid>
		<description><![CDATA[A few days ago, Peter Abilla published a post about TrackMeNot.
I had read about TrackMeNot a little more than a week before on Bruce Schneier&#8217;s blog, and so I already knew TrackMeNot was a flawed idea. Peter also makes some very good points in his post, but, unfortunately, it falls short of pointing out some [...]]]></description>
			<content:encoded><![CDATA[<p>A few days ago, <a href="http://www.shmula.com">Peter Abilla</a> <a href="http://www.shmula.com/191/trackmenot-is-a-great-idea-but-has-serious-implications">published a post</a> about <a href="http://mrl.nyu.edu/~dhowe/TrackMeNot/">TrackMeNot</a>.</p>
<p>I had <a href="http://www.schneier.com/blog/archives/2006/08/trackmenot_1.html">read about TrackMeNot</a> a little more than a week before on <a href="http://www.schneier.com/">Bruce Schneier&#8217;s</a> <a href="http://www.schneier.com/blog/">blog</a>, and so I already knew TrackMeNot was a flawed idea. Peter also makes some very good points in his post, but, unfortunately, it falls short of pointing out some of the more serious problems with TrackMeNot.</p>
<p>I&#8217;ll just summarize the problems here. For further explanation, read Bruce&#8217;s post:</p>
<ol>
<li>It does not hide your searches (they are still identifiable with you).</li>
<li>It&#8217;s far too easy to spot (and therefore, far too easy for AOL and others to defeat) and it&#8217;s schedule is regular &#038; fixed.</li>
<li>Some of the generated searches are worse than what you would try to hide.</li>
<li>It wastes lots of  bandwidth, while returning absolutely no privacy or security benefit.</li>
</ol>
<p>I like this quote from Bruce&#8217;s post:</p>
<blockquote><p>Yes, data mining is a signal-to-noise problem. But artificial noise like this isn&#8217;t going to help much.</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://blog.openbrainstem.net/peregrine/2006/09/15/trackmenot/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Web Browsers and Encryption</title>
		<link>http://blog.openbrainstem.net/peregrine/2006/09/01/web-browsers-and-encryption/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=web-browsers-and-encryption</link>
		<comments>http://blog.openbrainstem.net/peregrine/2006/09/01/web-browsers-and-encryption/#comments</comments>
		<pubDate>Fri, 01 Sep 2006 19:41:57 +0000</pubDate>
		<dc:creator>Peregrine</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Security]]></category>

		<guid isPermaLink="false">http://blog.openbrainstem.net/peregrine/2006/09/01/web-browsers-and-encryption/</guid>
		<description><![CDATA[While we&#8217;re on the subject of browser safety, please, everyone follow this advice: turn off SSL v2 support in every web browser you use. The default configurations of almost all web browsers still leave SSL2 support on for backwards compatibility. There is no such thing as a legitimate encrypted website that uses SSL2, which is [...]]]></description>
			<content:encoded><![CDATA[<p>While we&#8217;re on the subject of browser safety, please, everyone follow this advice: <b>turn off SSL v2 support in every web browser you use</b>. The default configurations of almost all web browsers <em>still</em> leave SSL2 support on for backwards compatibility. There is no such thing as a legitimate encrypted website that uses SSL2, which is <b>completely</b> insecure. Since there is a small flaw in SSL3 that can let an attacker trick any program using SSL3 into &#8220;falling back&#8221; to SSL2, if you don&#8217;t take my advice, you could be using SSL2 and not even know it.</p>
<p>I also disable all SSL3/TLS encryption suites that provide less than 128 bits of key and all <a href="http://en.wikipedia.org/wiki/Triple_DES">3DES</a> (a.k.a. triple-DES, DES EDE mode or TDES) sets. This is not just because 3DES is insecure, but also because 3DES is so slow. It consumes significantly more processing time and doesn&#8217;t really provide much better security than standard CBC mode <a href="http://en.wikipedia.org/wiki/Data_Encryption_Standard">DES</a>. It&#8217;s just not worth the overhead. In addition, there are several vulnerabilities in both 3-key &#038; 2-key 3DES that significantly reduce the complexity to brute-force them. 3DES is not considered a safe protocol.</p>
<p>In their paper titled, &#8220;<i><a href="http://www.schneier.com/paper-key-schedule.pdf">Key-Schedule Cryptanalysis of IDEA, G-DES, GOST, SAFER, and Triple-DES</a></i>&#8220;, <a href="http://www.informatik.uni-trier.de/~ley/db/indices/a-tree/k/Kelsey:John.html">John Kelsey</a>, <a href="http://www.schneier.com/">Bruce Schneier</a> and <a href="http://www.cs.berkeley.edu/~daw/">David Wagner</a> describe one weakness found in 3-key 3DES that isn&#8217;t present in 2-key 3DES (among other interesting things).</p>
<p>From what I&#8217;ve read in the past about browser 3DES support, although nearly all browsers say they use 168 bit 3DES keys (3-key 3DES), many actually use(d) 2-key 3DES (112 bit). I&#8217;m not sure how true or false this is in modern browsers, I&#8217;ll have to do further research to find out.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.openbrainstem.net/peregrine/2006/09/01/web-browsers-and-encryption/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>New Anonymous Browser is Unsafe</title>
		<link>http://blog.openbrainstem.net/peregrine/2006/09/01/new-anonymous-browser-is-unsafe/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=new-anonymous-browser-is-unsafe</link>
		<comments>http://blog.openbrainstem.net/peregrine/2006/09/01/new-anonymous-browser-is-unsafe/#comments</comments>
		<pubDate>Fri, 01 Sep 2006 17:30:04 +0000</pubDate>
		<dc:creator>Peregrine</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Privacy]]></category>

		<guid isPermaLink="false">http://blog.openbrainstem.net/peregrine/2006/09/01/new-anonymous-browser-is-unsafe/</guid>
		<description><![CDATA[You might have heard of the new Browzar web browser. Their website claims: &#8220;With Browzar you can search and surf the web without leaving any visible trace on the computer you are using.&#8221;
Well, it&#8217;s just not true.
It&#8217;s only a thin wrapper around Microsoft&#8217;s Internet Explorer version 5.5 (or later). Since IE stores all sorts of [...]]]></description>
			<content:encoded><![CDATA[<p>You might have heard of the new <a href="http://www.browzar.com/">Browzar</a> web browser. Their website claims: &#8220;<i>With Browzar you can search and surf the web without leaving any visible trace on the computer you are using.</i>&#8221;</p>
<p>Well, it&#8217;s just not true.</p>
<p>It&#8217;s only a thin wrapper around Microsoft&#8217;s Internet Explorer version 5.5 (or later). Since IE stores all sorts of stuff in places on your system without telling you, Browzar can&#8217;t deal with all of it. <a href="http://www.hanselman.com/blog/default.aspx">Scott Hanselman</a> has <a href="http://www.hanselman.com/blog/ANewPrivateBrowserIMeanBrowzarDoesNotWorkAsAdvertised.aspx">actually shown that Browzar misses the mark</a> on this point.</p>
<p>There are other problems with this, too. For example, this program will not affect any servers that you visit, or any <a href="http://en.wikipedia.org/wiki/Web_cache">caching</a> <a href="http://en.wikipedia.org/wiki/Proxy_server">proxy servers</a> in between (like at work or a university).</p>
<p>Anonymity on the web is not just about the stuff that&#8217;s on your computer, though it&#8217;s an important part; it&#8217;s also about the things those servers you connect to keep track of and tell each other.</p>
<p>Web browsers such as <a href="http://www.kde.org/">KDE</a>&#8217;s <a href="http://www.konqueror.org/">Konqueror</a>, <a href="http://www.mozilla.com/">Mozilla</a>&#8217;s <a href="http://www.getfirefox.com/">Firefox</a>, <a href="http://www.apple.com/">Apple</a>&#8217;s <a href="http://www.apple.com/safari/">Safari</a> (built on/from Konqueror, BTW) and others already support local privacy features. These include Konqueror&#8217;s excellent <a href="http://en.wikipedia.org/wiki/HTTP_cookie">cookie</a> management capabilities and Firefox&#8217;s support for auto deletion of cached data. All of these browsers sport these privacy enhancing features, though they have differing approaches and levels of control.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.openbrainstem.net/peregrine/2006/09/01/new-anonymous-browser-is-unsafe/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Blog SPAM as Phishing Bait</title>
		<link>http://blog.openbrainstem.net/peregrine/2006/08/30/blog-spam-as-phishing-bait/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=blog-spam-as-phishing-bait</link>
		<comments>http://blog.openbrainstem.net/peregrine/2006/08/30/blog-spam-as-phishing-bait/#comments</comments>
		<pubDate>Thu, 31 Aug 2006 00:28:45 +0000</pubDate>
		<dc:creator>Peregrine</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Privacy]]></category>
		<category><![CDATA[Security]]></category>

		<guid isPermaLink="false">http://blog.openbrainstem.net/peregrine/2006/08/30/blog-spam-as-phishing-bait/</guid>
		<description><![CDATA[Today, I decided to take a look at a couple of the links that blog spammers have been trying to put up in my blogs&#8217; comments.  Most of it actually led to &#8220;anti-spam&#8221; websites that are actually spam list phishers. This is, of course, very clever of the spammers.
First, they put spam up that [...]]]></description>
			<content:encoded><![CDATA[<p>Today, I decided to take a look at a couple of the links that blog spammers have been trying to put up in my blogs&#8217; comments.  Most of it actually led to &#8220;anti-spam&#8221; websites that are actually spam list <a href="http://en.wikipedia.org/wiki/Phishing">phishers</a>. This is, of course, very clever of the spammers.</p>
<p>First, they put spam up that includes links to their phishing sites on blogs they troll the net for. This part is very easy, thanks to services like <a href="http://www.technorati.com/">Technorati</a> and <a href="http://www.blogger.com/">Blogger</a>.</p>
<p>Next, &#8220;young&#8221; bloggers (i.e., those who are still fairly new to the &#8220;sport&#8221; of blogging), see comments. Either they naively authorize the spam comment, don&#8217;t moderate at all or decide to follow the links and check it out before authorizing the comment. If the comment gets posted to the blog, then others who read the blog can fall into the trap. If the blogger decides to visit the pages, they could get sucked in to all kinds of things.</p>
<p>But as I looked at a few of the links, they turned out to cause redirects to either www.abusepost.com or www.spamcop.net (I didn&#8217;t make those into links on purpose; <b>DISCLAIMER: GO TO THOSE SITES AT YOUR OWN RISK, I&#8217;M NOT RESPONSIBLE FOR YOUR CHOICES</b>). Of course, the vast majority of bloggers, both experienced and just getting started might think that those sites are providing a pretty good service. Looking a little more closely at the form and at the HTML itself reveals that these sites look suspicious. They <em>require</em> your name, email address and website address (which will be the blog that they hooked you at in the first place, for most people).</p>
<p>Were you paying close attention? They <em>require</em> you to provide the exact information spammers want in order to &#8220;report&#8221; a site that they are <em>already</em> &#8220;about to shut down&#8221;? Doesn&#8217;t make much sense to me.</p>
<p>Do you smell phish or am I the only one?</p>
<p>A word to the wise: Just Say No.</p>
<p>Here are some simple rules for Internet safety, though, they apply (with proper contextual edits) to any online communication:</p>
<ol>
<li>Moderate &#8212; Whether it&#8217;s comments on your blog(s), forums (which I hate, BTW) or mailing lists. Moderation is currently the most consistently effective way to defeat all forms of SPAM.</li>
<li>Never give out your information if you don&#8217;t have to &#8212; Just because a particular website&#8217;s &#8220;form&#8221; says that it requires your information, doesn&#8217;t mean they should be given any. We all know not to publish our credit card numbers online, but it&#8217;s amazing how many people don&#8217;t understand that your <em>name</em>, <em>email address</em>, <em>street address</em>, <em>phone numbers</em>, <em>websites</em>, <em>employer&#8217;s name</em>, <em>favorite color</em>, <em>mother&#8217;s maiden name</em>, etc. are not needed by most websites. When in doubt, <b>don&#8217;t</b> give it out.</li>
<li>The only stupid questions are the ones you do not ask &#8212; In other words, ask someone you know who has lots of experience with the Internet, email, spam, security, etc., any questions about specific websites or other items in general. Keeping yourself safe is hard enough to do, but keep trying to do it without the right information and you just might make things much worse.</li>
<li>Don&#8217;t open HTML emails &#8212; If someone sends me an HTML email (and I think it&#8217;s worth this effort), I send it back to them with a simple, polite note explaining that for security reasons, I do not accept nor read emails that are not in plain text. Too many people are using stupid email programs like Microsoft Outlook and Outlook Express that have hundreds of severe security flaws when it comes to processing HTML email, alone.</li>
<li>Don&#8217;t Panic &#8212; It can be easy to let fear take over at this point and abandon your dreams of blogging and the &#8220;Internet lifestyle&#8221;. Don&#8217;t worry, it&#8217;s not that hard to keep yourself safe. Once you know how to recognize the dangers, it&#8217;s easy to avoid them.</li>
<li>Think &#8212; (OK, this one could sound kinda mean, but it&#8217;s not; it&#8217;s just a sad truth, so don&#8217;t take it too personally) The spammers and the Phishers keep doing what they do because it works. There are just too many people on the Internet who do not think for themselves. You have a brain and I&#8217;m sure it functions at least well enough to read this far. I&#8217;m sure you have a lot more capacity to figure things out than you might be giving yourself credit for. Being able to think is not enough on it&#8217;s own, but with a little bit of knowledge, your brain can be used to help keep yourself, and your loved ones, safe on the Internet.</li>
<li>If in doubt, bail out &#8212; You don&#8217;t have to go any further than you already have when visiting any website or continuing a discussion on IM in a chat room or on a mailing list. You can pull the <a href="http://en.wikipedia.org/wiki/Rip_cord">rip-cord</a> at any time.</li>
</ol>
<p>I&#8217;m sure there are other things that we could put in that list. Perhaps some commenters will try to help me out in that regard. But I think these basics should be enough to get you started.</p>
<p>This is one of my favorite Turkish proverbs:</p>
<blockquote><p>No matter how far you have gone down the wrong road, turn back.</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://blog.openbrainstem.net/peregrine/2006/08/30/blog-spam-as-phishing-bait/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPress 2.0.4</title>
		<link>http://blog.openbrainstem.net/peregrine/2006/08/01/wordpress-204/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=wordpress-204</link>
		<comments>http://blog.openbrainstem.net/peregrine/2006/08/01/wordpress-204/#comments</comments>
		<pubDate>Tue, 01 Aug 2006 17:00:57 +0000</pubDate>
		<dc:creator>Peregrine</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://blog.openbrainstem.net/peregrine/2006/08/01/wordpress-204/</guid>
		<description><![CDATA[Four days ago, a new release of WordPress, the blogging software that runs OpenBrainstem blogs was made available. It&#8217;s now up to version 2.0.4, which all OpenBrainstem blogs are now using.
There were several security fixes and over 50 bug fixes, according to the announcement on the WordPress website. However, I&#8217;ve also noticed a couple of [...]]]></description>
			<content:encoded><![CDATA[<p>Four days ago, a new release of <a href="http://www.wordpress.org/">WordPress</a>, the blogging software that runs <a href="http://www.openbrainstem.net/">OpenBrainstem</a> <a href="http://blog.openbrainstem.net/">blogs</a> was made available. It&#8217;s now up to version 2.0.4, which all OpenBrainstem blogs are now using.</p>
<p>There were several security fixes and over 50 bug fixes, according to the <a href="http://wordpress.org/development/2006/07/wordpress-204/">announcement</a> on the WordPress website. However, I&#8217;ve also noticed a couple of irritating regressions. For example, when managing pending comments, it&#8217;s always been possible to click on the text next to the radio buttons at the bottom of each comment you are moderating. This makes it easy to select the action you wish to take for each comment, as you have a larger target for your mouse pointer. Unfortunately, this broke with 2.0.4 and clicking the text no longer selects the bullet.</p>
<p>There were a couple of other patches I had to reapply to the code. For example, if you look at the calendars at <a href="http://blog.openbrainstem.net/peregrine/">my blog</a>, you&#8217;ll see that dates with a post are displayed very nicely. This is thanks to a small change I made to the <code>template-functions-general.php</code> file. You can <a href="http://blog.openbrainstem.net/peregrine/add-posted-day-class.diff">download the patch file</a> and apply it to your own WordPress installation, if you like. Then, I added the <code>posted-day</code> class to the <code>style.css</code> file for the theme that I am using.</p>
<p>There are also a few other tweaks I have made to that theme, and I&#8217;m planning a couple more. One thing is that when you view a dated page, the sidebars don&#8217;t get their background colors set. A minor bug, but I&#8217;ll fix it sometime.</p>
<p>Anyway, there were some other code patches I had to reapply, but it only took about 10 minutes to do. I&#8217;m going to get some of these patches packaged up and submitted for inclusion in future versions of WordPress.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.openbrainstem.net/peregrine/2006/08/01/wordpress-204/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Response:  Will .mobi Get Any Traction?</title>
		<link>http://blog.openbrainstem.net/peregrine/2006/07/11/response-will-mobi-get-any-traction/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=response-will-mobi-get-any-traction</link>
		<comments>http://blog.openbrainstem.net/peregrine/2006/07/11/response-will-mobi-get-any-traction/#comments</comments>
		<pubDate>Wed, 12 Jul 2006 05:07:10 +0000</pubDate>
		<dc:creator>Peregrine</dc:creator>
				<category><![CDATA[Internet]]></category>

		<guid isPermaLink="false">http://blog.openbrainstem.net/peregrine/2006/07/11/response-will-mobi-get-any-traction/</guid>
		<description><![CDATA[Richard K. Miller wrote about the new .mobi top level domain (a.k.a. TLD). Here&#8217;s a quote from the post:
Here are my 9 reasons why .mobi is a bad idea:

You can already serve mobile content from any subdomain or folder, like mobi.example.com or example.com/mobi
You can already use content negotiation.  If the browser says “Accept: text/vnd.wap.wml”, [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.richardkmiller.com/">Richard K. Miller</a> wrote about <a href="http://www.richardkmiller.com/blog/archives/2006/07/will-mobi-get-any-traction">the new <code>.mobi</code> top level domain</a> (a.k.a. TLD). Here&#8217;s a quote from the post:</p>
<blockquote><p>Here are my 9 reasons why .mobi is a bad idea:</p>
<ol>
<li>You can already serve mobile content from any subdomain or folder, like mobi.example.com or example.com/mobi</li>
<li>You can already use <a href="http://httpd.apache.org/docs/2.0/content-negotiation.html">content negotiation</a>.  If the browser says “Accept: text/vnd.wap.wml”, then return mobile content. </li>
<li>You can already use the <a href="http://www.alistapart.com/articles/pocket/">“handheld” media type</a> in your CSS.</li>
<li>You can already create light-weight, semantic HTML that can be viewed on multiple devices.</li>
<li>Since “mobi” isn’t a word, it’s not likely to be in the predictive text dictionary on most phones.  A good domain for phones would employ a real word.  (Actually .com works.)</li>
<li>Without predictive text, typing “mobi” on a phone means pressing 6, then waiting, then 6-2-4.  A good domain for phones would not use two adjacent letters on the same key.</li>
<li>Phones with QWERTY keyboards are likely to have full-fledged browsers that can view .com websites anyway.</li>
<li>Dot-mobi domains are expensive.</li>
<li>Browsers like Opera can <a href="http://www.opera.com/products/mobile/smallscreen/">rerender existing web sites to make them viewable on movable devices.</a></li>
</ol>
<p>If you see value in .mobi that I’m not seeing, let me know, but I think it will be a failure. We should as soon introduce a .BestViewedWithInternetExplorerAt800by600 domain so we can keep track of all those web pages from the 90’s.</p></blockquote>
<p>Number 8 on Richard&#8217;s list is the reason why .mobi is a good idea &#8230; from the perspective of the registrars who are the ones who pushed for the new TLD.</p>
<p>But why not just .mobil ? I mean, come one, it would be so much easier for people to pronounce, even in a wide variety of languages.</p>
<p>Anyway, I think the addition of .mobi is just dumb. Basically for all the other reasons you already stated. Especially number 6; how irritating.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.openbrainstem.net/peregrine/2006/07/11/response-will-mobi-get-any-traction/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>U.S. Navy Gets Patent on Firewall?</title>
		<link>http://blog.openbrainstem.net/peregrine/2006/07/07/us-navy-gets-patent-on-firewall/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=us-navy-gets-patent-on-firewall</link>
		<comments>http://blog.openbrainstem.net/peregrine/2006/07/07/us-navy-gets-patent-on-firewall/#comments</comments>
		<pubDate>Fri, 07 Jul 2006 15:34:59 +0000</pubDate>
		<dc:creator>Peregrine</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Politics]]></category>
		<category><![CDATA[Security]]></category>

		<guid isPermaLink="false">http://blog.openbrainstem.net/peregrine/2006/07/07/us-navy-gets-patent-on-firewall/</guid>
		<description><![CDATA[Reading this newly issued patent, it sure seems like they are talking about a firewall to me.
I first read about this on Bruce Schneier&#8217;s blog.
]]></description>
			<content:encoded><![CDATA[<p>Reading this <a href="http://appft1.uspto.gov/netacgi/nph-Parser?Sect1=PTO1&#038;Sect2=HITOFF&#038;d=PG01&#038;p=1&#038;u=%2Fnetahtml%2FPTO%2Fsrchnum.html&#038;r=1&#038;f=G&#038;l=50&#038;s1=%2220050022023%22.PGNR.&#038;OS=DN/20050022023&#038;RS=DN/20050022023">newly issued patent</a>, it sure seems like they are talking about a firewall to me.</p>
<p>I first <a href="http://www.schneier.com/blog/archives/2006/07/us_navy_patents.html">read about this</a> on <a href="http://www.schneier.com/blog/">Bruce Schneier</a>&#8217;s blog.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.openbrainstem.net/peregrine/2006/07/07/us-navy-gets-patent-on-firewall/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Stupid Web Sites</title>
		<link>http://blog.openbrainstem.net/peregrine/2006/06/19/stupid-web-sites/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=stupid-web-sites</link>
		<comments>http://blog.openbrainstem.net/peregrine/2006/06/19/stupid-web-sites/#comments</comments>
		<pubDate>Mon, 19 Jun 2006 23:54:03 +0000</pubDate>
		<dc:creator>Peregrine</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://blog.openbrainstem.net/peregrine/2006/06/19/stupid-web-sites/</guid>
		<description><![CDATA[Try visiting Hilton Hotels&#8216; website with any browser other than IE, Netscape 7 or Firefox 1.0. Argh! It dumps you on a &#8220;Web Standards&#8221; page and you can&#8217;t leave it unless you use one of the &#8220;approved&#8221; browsers.
I haven&#8217;t tried it with any handheld browsers, so if you do, please, post a comment about the [...]]]></description>
			<content:encoded><![CDATA[<p>Try visiting <a href="http://www.hilton.com/">Hilton Hotels</a>&#8216; website with any browser other than IE, <a href="http://browser.netscape.com/">Netscape</a> 7 or <a href="http://www.firefox.com/">Firefox</a> 1.0. Argh! It dumps you on a &#8220;<a href="http://www.hilton.com/en/hi/customersupport/web_standards.jhtml">Web Standards</a>&#8221; page and you can&#8217;t leave it unless you use one of the &#8220;approved&#8221; browsers.</p>
<p>I haven&#8217;t tried it with any handheld browsers, so if you do, please, post a comment about the results.</p>
<p>Anyway, sites like that are yet another reason why I love <a href="http://www.konqueror.org/">Konqueror</a>. It took just 10 seconds to tell Konqueror to pretend to be Firefox 1.0 (on Linux, of course) whenever it connects to &#8220;hilton.com&#8221;. Presto! No trouble at all. In fact, the whole site renders perfectly.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.openbrainstem.net/peregrine/2006/06/19/stupid-web-sites/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Awe, nuts!</title>
		<link>http://blog.openbrainstem.net/peregrine/2006/06/16/awe-nuts/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=awe-nuts</link>
		<comments>http://blog.openbrainstem.net/peregrine/2006/06/16/awe-nuts/#comments</comments>
		<pubDate>Fri, 16 Jun 2006 17:12:07 +0000</pubDate>
		<dc:creator>Peregrine</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Security]]></category>

		<guid isPermaLink="false">http://blog.openbrainstem.net/peregrine/2006/06/16/awe-nuts/</guid>
		<description><![CDATA[Well, it finally happened: This morning, I had a couple of SPAM comments on my blog for the first time.
I love WordPress; it&#8217;s just so easy to deal with the SPAM. Still, it will be nice when open-source people finally create software that fully neuters all SPAM.
]]></description>
			<content:encoded><![CDATA[<p>Well, it finally happened: This morning, I had a couple of SPAM comments on my blog for the first time.</p>
<p>I love <a href="http://www.wordpress.org/">WordPress</a>; it&#8217;s just so easy to deal with the SPAM. Still, it will be nice when open-source people finally create software that fully neuters all SPAM.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.openbrainstem.net/peregrine/2006/06/16/awe-nuts/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Headless Bloggers Escaped Once Again</title>
		<link>http://blog.openbrainstem.net/peregrine/2006/06/13/headless-bloggers-escaped-once-again/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=headless-bloggers-escaped-once-again</link>
		<comments>http://blog.openbrainstem.net/peregrine/2006/06/13/headless-bloggers-escaped-once-again/#comments</comments>
		<pubDate>Wed, 14 Jun 2006 06:11:09 +0000</pubDate>
		<dc:creator>Peregrine</dc:creator>
				<category><![CDATA[Internet]]></category>

		<guid isPermaLink="false">http://blog.openbrainstem.net/peregrine/2006/06/13/headless-bloggers-escaped-once-again/</guid>
		<description><![CDATA[Tonight, my wife Charlotte and I went to the Utah Bloggers Conference. I recognized a few faces of people that I had not met before, since they have their faces on the Utah Open Source Planet.
As for those of you who don&#8217;t have your photos up there, yet: some of us (like Jayce^ and herlo [...]]]></description>
			<content:encoded><![CDATA[<p>Tonight, my wife <a href="http://blog.OpenBrainstem.net/aurora/">Charlotte</a> and I went to the <a href="http://www.utahbloggers.com/">Utah Bloggers</a> Conference. I recognized a few faces of people that I had not met before, since they have their faces on the <a href="http://openclue.org/ut/">Utah Open Source Planet</a>.</p>
<p>As for those of you who don&#8217;t have your photos up there, yet: some of us (like <a href="http://blog.lug-nut.org">Jayce^</a> and <a href="http://blog.herlo.org/">herlo</a> and <a href="http://blog.OpenBrainstem.net/peregrine/">I</a>) would have come over and taken your photo for you so you could get it up there, but we didn&#8217;t know what you looked like, so we couldn&#8217;t find you.</p>
<p>Next time we can&#8217;t find you like that, we&#8217;ll have to refer back to your photo&#8230;wait, um&#8230;</p>
<p>So, get your <a href="http://en.wikipedia.org/wiki/Hackergotchi">hackergnotchi</a> in to Gabe (at gabe at gundy dot org).</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.openbrainstem.net/peregrine/2006/06/13/headless-bloggers-escaped-once-again/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Next Version of Google Earth is Already Creating a Buzz</title>
		<link>http://blog.openbrainstem.net/peregrine/2006/06/13/next-version-of-google-earth-is-already-creating-a-buzz/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=next-version-of-google-earth-is-already-creating-a-buzz</link>
		<comments>http://blog.openbrainstem.net/peregrine/2006/06/13/next-version-of-google-earth-is-already-creating-a-buzz/#comments</comments>
		<pubDate>Wed, 14 Jun 2006 02:16:10 +0000</pubDate>
		<dc:creator>Peregrine</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://blog.openbrainstem.net/peregrine/2006/06/13/next-version-of-google-earth-is-already-creating-a-buzz/</guid>
		<description><![CDATA[In case you haven&#8217;t heard, Google recently made available a beta for the next version of Google Earth. The big buzz is because there is now a native Linux version.
I&#8217;ve seen people talking about the Linux version of Google Earth on the SLLUG Members mailing list. I found an entry on the Fedora SELinux mailing [...]]]></description>
			<content:encoded><![CDATA[<p>In case you haven&#8217;t heard, <a href="http://www.google.com/">Google</a> recently made available a beta for the next version of <a href="http://earth.google.com">Google Earth</a>. The big buzz is because there is now a native Linux version.</p>
<p>I&#8217;ve seen people talking about the Linux version of Google Earth on the <a href="http://www.sllug.org">SLLUG</a> Members mailing list. I found an entry on the <a href="http://fedora.redhat.com">Fedora</a> <a href="http://www.nsa.gov/selinux/">SELinux</a> <a href="http://www.redhat.com/mailman/listinfo/fedora-selinux-list">mailing list</a> titled, &#8220;<a href="https://www.redhat.com/archives/fedora-selinux-list/2006-June/msg00076.html">Step-by-Step Guide To Creating SELinux Policy for Google Earth</a>&#8220;. I&#8217;ve seen several other people talking about it already.</p>
<p>But, I was surprised to see that no one whose feed is picked up by the <a href="http://openclue.org/ut/">Utah Open Source Planet</a> had yet posted on any of their blogs. So, here it is.</p>
<p>I heard about the new Linux version of Google Earth from my good friend, <a href="http://evan.mcnabbs.org/">Evan McNabb</a> via <a href="http://www.jabber.org/">Jabber</a>, yesterday. I downloaded the new Linux version and waited until later in the evening to try it out. Video was a bit scan like on my notebook, but I soon cleared it up.</p>
<p>I&#8217;d like to see people comment on their experiences with it, so far. I&#8217;ll write more about the things I hear later on.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.openbrainstem.net/peregrine/2006/06/13/next-version-of-google-earth-is-already-creating-a-buzz/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>WordPress Smileys URL Bug; Take 2</title>
		<link>http://blog.openbrainstem.net/peregrine/2006/06/12/wordpress-smileys-url-bug-take-2/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=wordpress-smileys-url-bug-take-2</link>
		<comments>http://blog.openbrainstem.net/peregrine/2006/06/12/wordpress-smileys-url-bug-take-2/#comments</comments>
		<pubDate>Tue, 13 Jun 2006 04:57:53 +0000</pubDate>
		<dc:creator>Peregrine</dc:creator>
				<category><![CDATA[Internet]]></category>

		<guid isPermaLink="false">http://blog.openbrainstem.net/peregrine/2006/06/12/wordpress-smileys-url-bug-take-2/</guid>
		<description><![CDATA[Well, as many of you have noticed, my blog started causing those who were viewing the Utah Open Source Planet to get an SSL Certificate Authorization dialog, again.
For the time being, I have turned off the convert smileies to graphics option.
It turned out, that I had to also pull up the offending post(s) and resave [...]]]></description>
			<content:encoded><![CDATA[<p>Well, as many of you have noticed, <a href="http://blog.OpenBrainstem.net/peregrine/">my blog</a> started causing those who were viewing the <a href="http://openclue.org/ut/">Utah Open Source Planet</a> to get an SSL Certificate Authorization dialog, again.</p>
<p>For the time being, I have turned off the convert smileies to graphics option.</p>
<p>It turned out, that I had to also pull up the offending post(s) and resave them to get that setting to take effect in the db, which is strange, since it was dynamic for the site last time I fixed the bug. Oh, well.</p>
<p>As many of you who use <a href="http://www.wordpress.org/">WordPress</a> know, it wasn&#8217;t until the 2.0 release that WordPress supported having your admin interface portion of the site encrypted. The way that they implemented this feature in WordPress 2.0 was to have two different URLs that you can configure, the blog URL (where visitors see your blog) and the site URL (where your admin interface lives).</p>
<p>The two URL idea was the right way to do it. I benefit from it, as the admin interface is on a different hostname from the blog. Unfortunately, the WordPress developers made a couple of small mistakes in implementing the use of the two URLs and that&#8217;s where the bug that has affected <a href="http://openclue.org/ut/">UOSP</a> readers comes from.</p>
<p>But, I know how to fix these bugs.</p>
<p><span id="more-36"></span>I will be going through the code and cleaning up those bits that drop URLs into the output, making sure that the blog URL gets used instead of the site URL. However, that will not be quite enough. There are a couple of other things that should be fixed while I&#8217;m at it.</p>
<p>The code in WordPress 2.0 has two ways (different function calls) that URLs can be dropped into HTML output. The first is a poorly implemented if-else tree that maps to the parameters as set by the admin and stored in the DB (actually, there are several functions of this type). The second function is a wrapper around the first one and others like the first one. This is a very inefficient design, not to mention confusing.</p>
<p>Another problem is that the two functions in question (i.e. those that deal with the blog URL and the site URL) use the same parameters for different meanings, reversing the result from what one expects.</p>
<p>The right way to fix all of that is to use a set of simple indexed arrays to access those parameters (or a single two-dimensional indexed array). This will eliminate the overhead of the multiple, nested function calls and provide one consistent location for accessing any configured parameter.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.openbrainstem.net/peregrine/2006/06/12/wordpress-smileys-url-bug-take-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Login Not Required to Comment</title>
		<link>http://blog.openbrainstem.net/peregrine/2006/06/08/login-not-required-to-comment/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=login-not-required-to-comment</link>
		<comments>http://blog.openbrainstem.net/peregrine/2006/06/08/login-not-required-to-comment/#comments</comments>
		<pubDate>Thu, 08 Jun 2006 19:13:56 +0000</pubDate>
		<dc:creator>Peregrine</dc:creator>
				<category><![CDATA[Internet]]></category>

		<guid isPermaLink="false">http://blog.openbrainstem.net/peregrine/2006/06/08/login-not-required-to-comment/</guid>
		<description><![CDATA[Gabe Gunderson wrote this post in response to my previouse entry, OpenBrainstem Mailman Configuration Fixed.
His first sentance was:
I post this on my blog cause Peregrine doesn’t take comments unless I’m “logged on” and I had it all typed up.
Sorry for the inconvenience, Gabe. You&#8217;ll be happy to know that I have now &#8220;fixed&#8221; this. The [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://gundy.org/">Gabe Gunderson</a> wrote <a href="http://gundy.org/2006/06/08/openbrainstem-mailman-configuration-fixed/">this post</a> in response to my previouse entry, <i><a href="http://blog.openbrainstem.net/peregrine/2006/06/07/openbrainstem-mailman-configuration-fixed/">OpenBrainstem Mailman Configuration Fixed</a></i>.</p>
<p>His first sentance was:</p>
<blockquote><p>I post this on my blog cause Peregrine doesn’t take comments unless I’m “logged on” and I had it all typed up.</p></blockquote>
<p>Sorry for the inconvenience, Gabe. You&#8217;ll be happy to know that I have now &#8220;fixed&#8221; this. The &#8220;Users must be registered and logged in to comment&#8221; option in <a href="http://www.wordpress.org/">WordPress</a> was checked.</p>
<p>I was going to add a <a href="http://en.wikipedia.org/wiki/Trackback">trackback</a> to Gabe&#8217;s article, but I couldn&#8217;t find any trackback URLs on his WordPress blog.  Oh, well.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.openbrainstem.net/peregrine/2006/06/08/login-not-required-to-comment/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>OpenBrainstem Mailman Configuration Fixed</title>
		<link>http://blog.openbrainstem.net/peregrine/2006/06/07/openbrainstem-mailman-configuration-fixed/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=openbrainstem-mailman-configuration-fixed</link>
		<comments>http://blog.openbrainstem.net/peregrine/2006/06/07/openbrainstem-mailman-configuration-fixed/#comments</comments>
		<pubDate>Thu, 08 Jun 2006 05:07:30 +0000</pubDate>
		<dc:creator>Peregrine</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[OpenBrainstem]]></category>

		<guid isPermaLink="false">http://blog.openbrainstem.net/peregrine/2006/06/07/openbrainstem-mailman-configuration-fixed/</guid>
		<description><![CDATA[I figured out how to get mailman working with my Postfix/maildrop/Dovecot setup.

I created entries like these in /etc/aliases (just as mailman instructs):

openbrainstem-announce:              "&#124;/usr/lib/mailman/mail/mailman post openbrainstem-announce"
openbrainstem-announce-admin:        "&#124;/usr/lib/mailman/mail/mailman admin openbrainstem-announce"
openbrainstem-announce-bounces:      "&#124;/usr/lib/mailman/mail/mailman bounces [...]]]></description>
			<content:encoded><![CDATA[<p>I figured out how to get mailman working with my Postfix/maildrop/Dovecot setup.<br />
<span id="more-34"></span><br />
I created entries like these in /etc/aliases (just as mailman instructs):</p>
<pre>
openbrainstem-announce:              "|/usr/lib/mailman/mail/mailman post openbrainstem-announce"
openbrainstem-announce-admin:        "|/usr/lib/mailman/mail/mailman admin openbrainstem-announce"
openbrainstem-announce-bounces:      "|/usr/lib/mailman/mail/mailman bounces openbrainstem-announce"
openbrainstem-announce-confirm:      "|/usr/lib/mailman/mail/mailman confirm openbrainstem-announce"
openbrainstem-announce-join:         "|/usr/lib/mailman/mail/mailman join openbrainstem-announce"
openbrainstem-announce-leave:        "|/usr/lib/mailman/mail/mailman leave openbrainstem-announce"
openbrainstem-announce-owner:        "|/usr/lib/mailman/mail/mailman owner openbrainstem-announce"
openbrainstem-announce-request:      "|/usr/lib/mailman/mail/mailman request openbrainstem-announce"
openbrainstem-announce-subscribe:    "|/usr/lib/mailman/mail/mailman subscribe openbrainstem-announce"
openbrainstem-announce-unsubscribe:  "|/usr/lib/mailman/mail/mailman unsubscribe openbrainstem-announce"
</pre>
<p>What I was missing was to add these kinds of entries to the /etc/postfix/virtual_alias file:</p>
<pre>
openbrainstem-announce@openbrainstem.net              openbrainstem-announce
openbrainstem-announce-admin@openbrainstem.net        openbrainstem-announce-admin
openbrainstem-announce-bounces@openbrainstem.net      openbrainstem-announce-bounces
openbrainstem-announce-confirm@openbrainstem.net      openbrainstem-announce-confirm
openbrainstem-announce-join@openbrainstem.net         openbrainstem-announce-join
openbrainstem-announce-leave@openbrainstem.net        openbrainstem-announce-leave
openbrainstem-announce-owner@openbrainstem.net        openbrainstem-announce-owner
openbrainstem-announce-request@openbrainstem.net      openbrainstem-announce-request
openbrainstem-announce-subscribe@openbrainstem.net    openbrainstem-announce-subscribe
openbrainstem-announce-unsubscribe@openbrainstem.net  openbrainstem-announce-unsubscribe
</pre>
<p>After running postmap and /etc/init.d/postfix reload, it works. :)</p>
<p>The really odd thing is that I wasn&#8217;t even looking at this stuff, I wasn&#8217;t working on my mail server and it just occured to me how to fix the error, out of the blue.  So, I sat down and tried it.  I only wish inspiration had struck me when I was first setting this up.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.openbrainstem.net/peregrine/2006/06/07/openbrainstem-mailman-configuration-fixed/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>WARNING: High-Quality Phishing SPAM Ahead</title>
		<link>http://blog.openbrainstem.net/peregrine/2006/05/09/warning-high-quality-phishing-spam-ahead/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=warning-high-quality-phishing-spam-ahead</link>
		<comments>http://blog.openbrainstem.net/peregrine/2006/05/09/warning-high-quality-phishing-spam-ahead/#comments</comments>
		<pubDate>Tue, 09 May 2006 22:40:01 +0000</pubDate>
		<dc:creator>Peregrine</dc:creator>
				<category><![CDATA[Internet]]></category>

		<guid isPermaLink="false">http://blog.openbrainstem.net/peregrine/2006/05/09/warning-high-quality-phishing-spam-ahead/</guid>
		<description><![CDATA[If you think you already know what I&#8217;m going to say, please, don&#8217;t stop reading here; I may surprise you.
Most of those who will read this already know the dangers of trusting the kinds of email messages like the one I just recently received with the subject line &#8220;Your account might be compromised!&#8221;, which prompted [...]]]></description>
			<content:encoded><![CDATA[<p>If you think you already know what I&#8217;m going to say, please, don&#8217;t stop reading here; I may surprise you.</p>
<p>Most of those who will read this already know the dangers of trusting the kinds of email messages like the one I just recently received with the subject line &#8220;Your account might be compromised!&#8221;, which prompted this post.  However, many who read this blog are not of the &#8220;technically savvy&#8221; or &#8220;computer expert&#8221; types, so I thought these comments might be useful.</p>
<p>Rule Number 1: <b>NEVER</b> take any email message from a company that deals with money (like banks and credit unions) at face value. That simple rule will protect you from most <a href="http://en.wikipedia.org/wiki/Phishing">Phishing</a> attacks.</p>
<p>The Phishing scams use all sorts of tricks to make their emails look legit. This latest one even employed the technique of having someone who actually speaks English write the text. In the past, one very big indicator that an email might not be from the company it claims to be, was the bad translation from some other language to English before it was sent out.</p>
<p>Another common tactic is to send HTML email. This allows the Phishers to create links like [ <a href="http://www.google.com/search?q=You%27ve+been+had&#038;ie=UTF-8&#038;oe=UTF-8">http://en.wikipedia.org/wiki/Phishing</a> ]. The link <i>looks</i> like it points to the correct website for your bank (for example), but actually goes somewhere else. Unfortunately, these can be hard to expose if you use Internet Explorer, Outlook, Outlook Express or some common web based email systems (like Hotmail &#038; Yahoo!).</p>
<p>If you visit such fake links and you use Internet Explorer, there are several techniques the fake website can use to make it look like it is the real website. For example, there are dozens of still not patched bugs in IE that let a web page dictate exactly what you see in the address bar. So, while you are actually at &#8220;http://192.0.2.5/www.chase.com/login.jsp&#8221;, IE&#8217;s Address bar could show, &#8220;https://www.chase.com/login.jsp&#8221;, thus making it look more legitimate. Of course, you got there by clicking the link they gave you in that HTML email.</p>
<p>Rule Number 2: Don&#8217;t trust HTML emails. Too much stuff can be hidden.</p>
<p>HTML email has many other problems as well, like being able to pull in code or images that actually tell the sender that their email has been read while completely hiding this fact from you. That let&#8217;s the spammers know that you&#8217;ll read their SPAM.</p>
<p>I could go on and on about this, but I won&#8217;t. Instead, I&#8217;ll just leave you with a few, simple thoughts:</p>
<p>1.  There is <i>no</i> Nigerian Oil Money waiting for you to transfer into your account (money laundering schemes)<br />
2.  That&#8217;s not Viagra they&#8217;re putting in those bottles (generic drugs fraud).<br />
3.  You do not need to buy OEM software. (pirated copies).<br />
4.  eBay &#038; PayPal (or, for that matter, any bank or credit union) <b>never</b> need you to &#8220;verify&#8221; or &#8220;validate&#8221; your account (Phishing).</p>
<p>And, last but most certainly not least:</p>
<p>5.  The world <b>will not</b> fall down around you if you don&#8217;t immediately forward that chain mail (viruses).</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.openbrainstem.net/peregrine/2006/05/09/warning-high-quality-phishing-spam-ahead/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
