<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="wordpress/2.0.3" -->
<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/"
	>

<channel>
	<title>AustinTech</title>
	<link>http://www.austintech.com</link>
	<description>A grab bag of notes, links, and thoughts from a techie</description>
	<pubDate>Sun, 10 Aug 2008 22:41:44 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.0.3</generator>
	<language>en</language>
			<item>
		<title>Securing SSHD Root access</title>
		<link>http://www.austintech.com/2006/08/30/securing-sshd-root-access/</link>
		<comments>http://www.austintech.com/2006/08/30/securing-sshd-root-access/#comments</comments>
		<pubDate>Wed, 30 Aug 2006 14:52:36 +0000</pubDate>
		<dc:creator>Patrick</dc:creator>
		
	<category>Miscellaneous</category>
		<guid isPermaLink="false">http://www.austintech.com/2006/08/30/securing-sshd-root-access/</guid>
		<description><![CDATA[How To Secure SSH Root Access: originally posted at [sagonet.com)[http://forums.sagonet.com/showthread.php?t=1820] and reposted here for my own archives. 

This article describes how to secure root access via SSH. The information in this article applies to both cPanel, and Interworx based server.



More Information
1. SSH to your server as the root superuser.

2. Backup your current SSH configuration file [...]]]></description>
			<content:encoded><![CDATA[<p>How To Secure SSH Root Access: originally posted at [sagonet.com)[http://forums.sagonet.com/showthread.php?t=1820] and reposted here for my own archives. </p>

<p>This article describes how to secure root access via SSH. The information in this article applies to both cPanel, and Interworx based server.</p>

<p><a id="more-35"></a></p>

<p>More Information
1. SSH to your server as the root superuser.</p>

<p>2. Backup your current SSH configuration file by typing the following command in shell:</p>

<p>Quote:
cp /etc/ssh/sshd_config /etc/ssh/sshd_config.backup
3. Use your favorite text editor, and edit the /etc/ssh/sshd_config file. Search, and change the line that says &#8216;#Protocol 2, 1&#8242; to &#8216;Protocol 2&#8242;. Do not save and exit the file just yet.</p>

<p>4. Search, and change the line that says &#8216;#PermitRootLogin yes&#8217; to &#8216;PermitRootLogin no&#8217;. Save and exit the sshd config file.</p>

<p>5. Next, we will add a new user to the system, and include him in the WHEEL group. To do so, type the following command in shell:</p>

<p>Quote:
useradd -G wheel &lt;username>
Note: If you already have an active user whom you want to add to the WHEEL group, type the following command in shell:</p>

<p>Quote:
usermod -G wheel &lt;username>
6. One important step is to make sure that you know the user&#8217;s password, whom you&#8217;ve just added to the WHEEL group. If you do not know the password, in shell type:</p>

<p>Quote:
passwd &lt;user>
7. Our last step would be to allow only the WHEEL group (whom our user is part of), to be able to run the &#8217;su&#8217; command in order to switch to the superuser. To do so, we will edit the /etc/pam.d/su file, and remove the &#8216;#&#8217; before &#8216;auth required /lib/security/pam_wheel.so use_uid&#8217;</p>

<p>8. Make sure that you have performed correctly all the steps above before attempting to restart the sshd service in order to apply all the settings. Once you verified that everything is correct, type the following command in shell:</p>

<p>Quote:
/etc/init.d/sshd restart
</p>

<p><!--1ee6e3217a0535eb2f5c89527d68a220-->
</p>

<p><!--3431acde6f3124acd767fa0991062ca2-->
</p>

<p><!--0972b2a5caea31202ccb348f1436d9bc-->
</p>

<p><!--dac7e105c1d518b5650bf9bb544be739-->
</p>

<p><!--6b52d9a27ea7d30538133ea876505f5e-->
</p>

<p><!--ae405aea415c091ea230736d6a6db3a2-->
</p>

<!--5016f9ca0eabc3d64e4456063e420707-->
]]></content:encoded>
			<wfw:commentRSS>http://www.austintech.com/2006/08/30/securing-sshd-root-access/feed/</wfw:commentRSS>
		</item>
		<item>
		<title>Printing to Windows from Mac OSX 10.4</title>
		<link>http://www.austintech.com/2006/05/01/printing-to-windows-from-mac-osx-104/</link>
		<comments>http://www.austintech.com/2006/05/01/printing-to-windows-from-mac-osx-104/#comments</comments>
		<pubDate>Mon, 01 May 2006 15:26:58 +0000</pubDate>
		<dc:creator>Patrick</dc:creator>
		
	<category>Mac OSX</category>
		<guid isPermaLink="false">http://www.austintech.com/2006/05/01/printing-to-windows-from-mac-osx-104/</guid>
		<description><![CDATA[Everytime I change my network password, I have to reset the printer password when printing to my windows network. Needless to say, I forget the few steps it takes every time. So here&#8217;s a reminder for myself: 


Open up the printer setup utility and click &#8220;ADD&#8221; 
Hold down the &#8220;OPTION&#8221; key while clicking the &#8220;More [...]]]></description>
			<content:encoded><![CDATA[<p>Everytime I change my network password, I have to reset the printer password when printing to my windows network. Needless to say, I forget the few steps it takes every time. So here&#8217;s a reminder for myself: </p>

<ol>
<li>Open up the printer setup utility and click &#8220;ADD&#8221; </li>
<li>Hold down the &#8220;OPTION&#8221; key while clicking the &#8220;More printers&#8230;&#8221; button on the bottom. This is the most important step. Without clicking on the &#8220;OPTION&#8221; key the &#8220;Advanced&#8221; option in the next step doesn&#8217;t show up and the normal windows printing via network neighborhood doesn&#8217;t work for me.
</li>
<li>From the top combo-box, choose the &#8220;Advanced&#8221; option.
</li>
<li>Choose &#8220;Windows Printer Via SAMBA&#8221; from the device pop-up menu.
</li>
<li>Enter your device name into the appropriate textbox. </li>
<li>Enter the URI to the device using the syntax &#8220;smb://ServerName/ShareName. Note that you may have to add the username and password in the urll as I did. For that, the syntax is &#8220;smb://&lt;username&gt;:&lt;password&gt;@domain/&lt;server&gt;/&lt;share&gt;&#8221;</li>
<li>Pick the printer model from the printer model pop-up menu
</li>
</ol>

<p>Of course, you&#8217;ll need the appropriate drivers, etc. </p>

<p><!--15da0311392b83f6bd21ba4bc776f8bd-->
</p>

<p><!--5d71cd61288bda8d85b7bfee6922df83-->
</p>

<p><!--c09a79801287bd9e4058bd4c97c85771-->
</p>

<p><!--1849a1b8441d23b22344bebb35bba1cd-->
</p>

<!--190f330623c794209679c2f5181f463e-->
]]></content:encoded>
			<wfw:commentRSS>http://www.austintech.com/2006/05/01/printing-to-windows-from-mac-osx-104/feed/</wfw:commentRSS>
		</item>
		<item>
		<title>Returning a RECORD from PL/pgsql</title>
		<link>http://www.austintech.com/2006/03/10/returning-a-single-record-from-a-plpgsql-function/</link>
		<comments>http://www.austintech.com/2006/03/10/returning-a-single-record-from-a-plpgsql-function/#comments</comments>
		<pubDate>Fri, 10 Mar 2006 22:42:36 +0000</pubDate>
		<dc:creator>Patrick</dc:creator>
		
	<category>Miscellaneous</category>
		<guid isPermaLink="false">http://www.austintech.com/2006/03/10/returning-a-single-record-from-a-plpgsql-function/</guid>
		<description><![CDATA[Been a while since I posted, but here&#8217;s a nice tip that I had to figure out the hard way. 

Problem - Using a function in INOUT and OUT parameters to pass information back to another function. This is function I needed to return data from. 




 CREATE OR REPLACE FUNCTION vx_string.get_next_token(p_delimiter IN varchar,
  [...]]]></description>
			<content:encoded><![CDATA[<p>Been a while since I posted, but here&#8217;s a nice tip that I had to figure out the hard way. </p>

<p><strong>Problem</strong> - Using a function in INOUT and OUT parameters to pass information back to another function. This is function I needed to return data from. </p>

<p><code></p>

<pre>
 CREATE OR REPLACE FUNCTION vx_string.get_next_token(p_delimiter IN varchar,
      p_text INOUT varchar, p_return OUT varchar) RETURNS RECORD AS $BODY$
     DECLARE
          v_position   INTEGER;
    BEGIN
        -- Find position of delimiter.
        v_position := vx_utils.instr(p_text,p_delimiter, 1);
       IF v_position > 0 THEN
           p_return := SUBSTR(p_text, 1, v_position - 1);
           p_text := SUBSTR(p_text, v_position + LENGTH(p_delimiter));
       ELSE
           p_return := p_text;
           p_text := '';
       END IF;
       RETURN p_text, p_return;
    END;
    $BODY$
    LANGUAGE 'plpgsql' VOLATILE;
</pre>

<p></code></p>

<p><strong>Solution</strong> - In order to return the values I found I needed to SELECT the values INTO specific vars using the SELECT * INTO &#8230;. syntax as follows: </p>

<pre>
<code>
    DECLARE
        v_line TEXT;
        v_temp TEXT;
    BEGIN
       -- notice we only pass in the first two vars since they
       -- are IN and INOUT respectfully. They OUT parameter is only used
       -- in the returning record.
       SELECT *
       INTO v_line, v_temp
       FROM
       vx_string.get_next_token(';','0001; My Test Line; My Test Line; My Test Line');
       -- at this point, v_line equals "My Test Line; My Test Line; My Test Line"
       -- and v_temp equals "0001"
       -- Now, I can use v_line and v_temp within this procedure
       v_line_nbr = TO_NUMBER(v_temp,'99999');
</code>
</pre>

<p><!--baa3bcb4d34428c3dfd2fcbcd35b0ecd-->
</p>

<p><!--4d9b6bf291f075aee6806d0198be039c-->
</p>

<!--54649534473b4a0ff188b3851affa047-->
]]></content:encoded>
			<wfw:commentRSS>http://www.austintech.com/2006/03/10/returning-a-single-record-from-a-plpgsql-function/feed/</wfw:commentRSS>
		</item>
		<item>
		<title>Reinitializing CPAN</title>
		<link>http://www.austintech.com/2006/02/10/reinitializing-cpan/</link>
		<comments>http://www.austintech.com/2006/02/10/reinitializing-cpan/#comments</comments>
		<pubDate>Fri, 10 Feb 2006 20:14:51 +0000</pubDate>
		<dc:creator>Patrick</dc:creator>
		
	<category>Miscellaneous</category>
		<guid isPermaLink="false">http://www.austintech.com/2006/02/10/reinitializing-cpan/</guid>
		<description><![CDATA[I recently had to reinitialize my cpan repository after about an hour of pulling my hair out due to some modules not loading correctly. Here&#8217;s the call to reinit. 

> perl -MCPAN::FirstTime -e CPAN::FirstTime::init



]]></description>
			<content:encoded><![CDATA[<p>I recently had to reinitialize my cpan repository after about an hour of pulling my hair out due to some modules not loading correctly. Here&#8217;s the call to reinit. </p>

<p>> perl -MCPAN::FirstTime -e CPAN::FirstTime::init
</p>

<!--6bdc40769985f24a0106418a3ba3bc1c-->
]]></content:encoded>
			<wfw:commentRSS>http://www.austintech.com/2006/02/10/reinitializing-cpan/feed/</wfw:commentRSS>
		</item>
		<item>
		<title>YubNub - Command Line for the Web</title>
		<link>http://www.austintech.com/2006/01/16/yubnub-command-line-for-the-web/</link>
		<comments>http://www.austintech.com/2006/01/16/yubnub-command-line-for-the-web/#comments</comments>
		<pubDate>Mon, 16 Jan 2006 12:04:32 +0000</pubDate>
		<dc:creator>Patrick</dc:creator>
		
	<category>Miscellaneous</category>
		<guid isPermaLink="false">http://www.austintech.com/2006/01/16/yubnub-command-line-for-the-web/</guid>
		<description><![CDATA[

In case you haven&#8217;t seen [YubNub](http://yubnub.org), I encourage you to check it out. I saw it during the Rails Day contest and was just reminded again by [Micheal over at TechCrunch](http://www.techcrunch.com/2006/01/15/revisiting-yubnub/). He pointed to a great resource for [some of the more useful commands](http://yubnub.org/documentation/jeremys_picks#Whois) collected by Jeremy Hussell. 








]]></description>
			<content:encoded><![CDATA[<p><a href="http://yubnub.org"><img id="image29" src="http://www.austintech.com/wp-content/uploads/2006/01/yubnub_logo.gif" alt="YubNub" height="57" width="182" align="right" hspace="10" border="0" /></a></p>

<p>In case you haven&#8217;t seen [YubNub](http://yubnub.org), I encourage you to check it out. I saw it during the Rails Day contest and was just reminded again by [Micheal over at TechCrunch](http://www.techcrunch.com/2006/01/15/revisiting-yubnub/). He pointed to a great resource for [some of the more useful commands](http://yubnub.org/documentation/jeremys_picks#Whois) collected by Jeremy Hussell. </p>

<p><!--5d86ceb1f379260380f50a0b4ffd7b35-->
</p>

<p><!--5bee03a323a8aee49720b60123f2c706-->
</p>

<!--268c252b81e71451c957d6a33018cec2-->
]]></content:encoded>
			<wfw:commentRSS>http://www.austintech.com/2006/01/16/yubnub-command-line-for-the-web/feed/</wfw:commentRSS>
		</item>
		<item>
		<title>Symantec &#8216;Rootkit&#8217;</title>
		<link>http://www.austintech.com/2006/01/13/symantec-rootkit/</link>
		<comments>http://www.austintech.com/2006/01/13/symantec-rootkit/#comments</comments>
		<pubDate>Fri, 13 Jan 2006 11:14:13 +0000</pubDate>
		<dc:creator>Patrick</dc:creator>
		
	<category>Miscellaneous</category>
	<category>Operating Systems</category>
		<guid isPermaLink="false">http://www.austintech.com/2006/01/13/symantec-rootkit/</guid>
		<description><![CDATA[Symantec has been [caught putting a simple &#8216;rootkit&#8217;](http://www.eweek.com/article2/0,1895,1910077,00.asp) type feature in the latest version of SystemWorks. Though the idea was much more benevolent than Sony&#8217;s recent attempt at a rootkit, it still stinks of a growing trend of commercial products that just don&#8217;t seem trustworthy anymore. 

I switched from Symantec to Trend Micro last year, [...]]]></description>
			<content:encoded><![CDATA[<p>Symantec has been [caught putting a simple &#8216;rootkit&#8217;](http://www.eweek.com/article2/0,1895,1910077,00.asp) type feature in the latest version of SystemWorks. Though the idea was much more benevolent than Sony&#8217;s recent attempt at a rootkit, it still stinks of a growing trend of commercial products that just don&#8217;t seem trustworthy anymore. </p>

<p>I switched from Symantec to Trend Micro last year, but only because the SystemWorks product seemed to really slow my PC down. </p>

<p>[(Link)](http://www.eweek.com/article2/0,1895,1910077,00.asp) </p>

<p><!--afe722418ab56b25e442b7c1ea32534e-->
</p>

<p><!--8bf19635232922777d9e346132ac4f6e-->
</p>

<p><!--aa76e5bf5f3ac47bdb79745943615659-->
</p>

<!--26cc3ac6b278009af9ad09425c3f1f69-->
]]></content:encoded>
			<wfw:commentRSS>http://www.austintech.com/2006/01/13/symantec-rootkit/feed/</wfw:commentRSS>
		</item>
		<item>
		<title>Compromise Reached On 802.11n Spec</title>
		<link>http://www.austintech.com/2006/01/12/compromise-reached-on-80211n-spec/</link>
		<comments>http://www.austintech.com/2006/01/12/compromise-reached-on-80211n-spec/#comments</comments>
		<pubDate>Thu, 12 Jan 2006 23:02:32 +0000</pubDate>
		<dc:creator>Patrick</dc:creator>
		
	<category>Miscellaneous</category>
		<guid isPermaLink="false">http://www.austintech.com/2006/01/12/compromise-reached-on-80211n-spec/</guid>
		<description><![CDATA[&#8220;The road to next-generation Wi-Fi now appears to lead toward an industry-standard IEEE 802.11n specification, as the competing groups resolved their differences Wednesday.&#8221; - ExtremeTech (Link)
]]></description>
			<content:encoded><![CDATA[<p>&#8220;The road to next-generation Wi-Fi now appears to lead toward an industry-standard IEEE 802.11n specification, as the competing groups resolved their differences Wednesday.&#8221; - <a href="http://www.extremetech.com/article2/0,1558,1910249,00.asp?kc=ETRSS02129TX1K0000532">ExtremeTech (Link)</a></p>
]]></content:encoded>
			<wfw:commentRSS>http://www.austintech.com/2006/01/12/compromise-reached-on-80211n-spec/feed/</wfw:commentRSS>
		</item>
		<item>
		<title>The Last iPod Video Guide You’ll Ever Need</title>
		<link>http://www.austintech.com/2006/01/10/the-last-ipod-video-guide-you%e2%80%99ll-ever-need/</link>
		<comments>http://www.austintech.com/2006/01/10/the-last-ipod-video-guide-you%e2%80%99ll-ever-need/#comments</comments>
		<pubDate>Tue, 10 Jan 2006 21:55:54 +0000</pubDate>
		<dc:creator>Patrick</dc:creator>
		
	<category>Miscellaneous</category>
		<guid isPermaLink="false">http://www.austintech.com/2006/01/10/the-last-ipod-video-guide-you%e2%80%99ll-ever-need/</guid>
		<description><![CDATA[I bought my iPod about a two months ago. To date, it&#8217;s been an audio only experience, except for the silly fireplace video I pulled down just before the Christmas holidays. Don&#8217;t ask, I&#8217;m not sure I know why it was so intriguing now.

This article (The Last iPod Video Guide You&#8217;ll Ever Need) might get [...]]]></description>
			<content:encoded><![CDATA[<p>I bought my iPod about a two months ago. To date, it&#8217;s been an audio only experience, except for the silly fireplace video I pulled down just before the Christmas holidays. Don&#8217;t ask, I&#8217;m not sure I know why it was so intriguing now.</p>

<p><a href="http://plasticbugs.com/?p=305">This article (The Last iPod Video Guide You&#8217;ll Ever Need)</a> might get me inspired enough to actually experiment with the video side of things though.</p>
]]></content:encoded>
			<wfw:commentRSS>http://www.austintech.com/2006/01/10/the-last-ipod-video-guide-you%e2%80%99ll-ever-need/feed/</wfw:commentRSS>
		</item>
		<item>
		<title>Gregarius - RSS Aggregator</title>
		<link>http://www.austintech.com/2006/01/10/gregarius-rss-aggregator/</link>
		<comments>http://www.austintech.com/2006/01/10/gregarius-rss-aggregator/#comments</comments>
		<pubDate>Tue, 10 Jan 2006 21:47:22 +0000</pubDate>
		<dc:creator>Patrick</dc:creator>
		
	<category>Miscellaneous</category>
	<category>Semantic Web</category>
		<guid isPermaLink="false">http://www.austintech.com/2006/01/10/gregarius-rss-aggregator/</guid>
		<description><![CDATA[&#8220;Gregarius is a web-based RSS/RDF/ATOM feed aggregator, designed to run on your web server, allowing you to access your news sources from wherever you want.&#8221;

I love the [bloglines service](http://www.bloglines.com), but lately I&#8217;ve been missing out on some of my feeds due to problems with the service or maintenance downtime of some sort. So, I decided [...]]]></description>
			<content:encoded><![CDATA[<p>&#8220;Gregarius is a web-based RSS/RDF/ATOM feed aggregator, designed to run on your web server, allowing you to access your news sources from wherever you want.&#8221;</p>

<p>I love the [bloglines service](http://www.bloglines.com), but lately I&#8217;ve been missing out on some of my feeds due to problems with the service or maintenance downtime of some sort. So, I decided to try out another service as an alternative. [NewsGator](http://www.newsgator.com) seemed an obvious choice, but the overall feel just didn&#8217;t fit right with me.</p>

<p>In my search, I found [Gregarius](http://www.gregarius.net), a free, web-based aggregator that you run on your own server. I&#8217;ve used [magpie-rss](http://magpierss.sourceforge.net/) before on the [PatrickWard.com](http://www.patrickward.com) site before but I never considered running my own feed aggregator for myself. Gregarius uses magpie, but does so much more.</p>

<p>It has a nice, ajaxian style that lends itself to a very efficient method of reading through the various posts. Coupled with a few of the plugins, such as &#8220;Double-Click to Read&#8221;, &#8220;StickyFlag&#8221;, and &#8220;Mark Feed as Read&#8221;, I&#8217;m now plowing through the feeds with a lot less effort than I ever did with bloglines. It&#8217;s certainly a lot more effort to set up, but the end result matched my needs better.</p>

<p>I&#8217;ve got a couple of plugins in mind that I might contribute soon myself.
</p>

<p><!--dd6c0652be51d47602fa43664a9b8fd1-->
</p>

<p><!--769092cbb06797a7055201dfc3a4c0af-->
</p>

<!--c7b6f40025e8337d80afd6e22e5e6b2f-->
]]></content:encoded>
			<wfw:commentRSS>http://www.austintech.com/2006/01/10/gregarius-rss-aggregator/feed/</wfw:commentRSS>
		</item>
		<item>
		<title>A new beginning&#8230;</title>
		<link>http://www.austintech.com/2005/12/29/hello-world/</link>
		<comments>http://www.austintech.com/2005/12/29/hello-world/#comments</comments>
		<pubDate>Fri, 30 Dec 2005 00:01:06 +0000</pubDate>
		<dc:creator>patrick</dc:creator>
		
	<category>Miscellaneous</category>
		<guid isPermaLink="false"></guid>
		<description><![CDATA[Seems like this is about the 6th iteration of the austintech.com blog. I&#8217;ve had the domain since January 4, 1998. Wow! Of course, the number of posts doesn&#8217;t really reflect that; mainly due to the various purposes the site was used for.

Nonetheless, I think it will remain a sort of general collection bin for snippets, [...]]]></description>
			<content:encoded><![CDATA[<p>Seems like this is about the 6th iteration of the austintech.com blog. I&#8217;ve had the domain since January 4, 1998. Wow! Of course, the number of posts doesn&#8217;t really reflect that; mainly due to the various purposes the site was used for.</p>

<p>Nonetheless, I think it will remain a sort of general collection bin for snippets, reminders, and general notes I keep for my various programming and administrative tasks.
</p>

<p><!--0ee64969fd959ebf773e5fd2b9186ec9-->
</p>

<p><!--b137130076f2f775ade4d9ec65ea60b5-->
</p>

<!--26b26a1eaffa95d732bf6488d00b3601-->
]]></content:encoded>
			<wfw:commentRSS>http://www.austintech.com/2005/12/29/hello-world/feed/</wfw:commentRSS>
		</item>
	</channel>
</rss>
