<?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>Netflow Developments &#187; Internet</title>
	<atom:link href="http://blog.netflowdevelopments.com/category/internet-2/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.netflowdevelopments.com</link>
	<description>The latest and greatest happenings in the world of Science, Technology and everything else Geek</description>
	<lastBuildDate>Wed, 22 Feb 2012 20:53:45 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Updating/Installing wordpress themes or plugins without having to enter FTP info</title>
		<link>http://blog.netflowdevelopments.com/2012/02/22/updatinginstalling-wordpress-themes-or-plugins-without-having-to-enter-ftp-info/</link>
		<comments>http://blog.netflowdevelopments.com/2012/02/22/updatinginstalling-wordpress-themes-or-plugins-without-having-to-enter-ftp-info/#comments</comments>
		<pubDate>Wed, 22 Feb 2012 20:53:45 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Linux / Freebsd]]></category>
		<category><![CDATA[ftp]]></category>
		<category><![CDATA[install]]></category>
		<category><![CDATA[plugins]]></category>
		<category><![CDATA[themes]]></category>
		<category><![CDATA[upgrade]]></category>
		<category><![CDATA[wordpress]]></category>
		<guid isPermaLink="false">http://blog.netflowdevelopments.com/?p=865</guid>
		<description><![CDATA[I first saw this in action when I setup wordpress on a shared host after running it on my dedicated server for years.  All of a sudden when I clicked &#8216;install&#8217; there was no FTP prompt, the bloody thing just installed!  I was amazed at this new development and looked into how it was done. [...]]]></description>
			<content:encoded><![CDATA[<p>I first saw this in action when I setup wordpress on a shared host after running it on my dedicated server for years.  All of a sudden when I clicked &#8216;install&#8217; there was no FTP prompt, the bloody thing just installed!  I was amazed at this new development and looked into how it was done.</p>
<p>Simple enough if you don&#8217;t mind editing a file and changing some perms.</p>
<ol>
<li>First you need to make sure that the wp-content(and plugins and themes) directories are owned by your apache process.. in FreeBSD it&#8217;s httpd in linux it&#8217;s www-data</li>
<li>Next you should chmod the wp-content, plugins and themes directory to 755.  For some reason WP hates things at 777</li>
<li>Lastly you need to add this little line of code to the bottom of your wp-config.php file: <strong>define(&#8216;FS_METHOD&#8217;, &#8216;direct&#8217;);</strong></li>
</ol>
<div>And that does it, from now on no more ftp credentials.. Huzzah!</div>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.netflowdevelopments.com/2012/02/22/updatinginstalling-wordpress-themes-or-plugins-without-having-to-enter-ftp-info/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPress Multisite and Nginx don&#8217;t play nice together</title>
		<link>http://blog.netflowdevelopments.com/2012/02/20/wordpress-multisite-and-nginx-dont-play-nice-together/</link>
		<comments>http://blog.netflowdevelopments.com/2012/02/20/wordpress-multisite-and-nginx-dont-play-nice-together/#comments</comments>
		<pubDate>Mon, 20 Feb 2012 15:39:33 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Linux / Freebsd]]></category>
		<category><![CDATA[broken images]]></category>
		<category><![CDATA[multisite]]></category>
		<category><![CDATA[nginx]]></category>
		<category><![CDATA[theme]]></category>
		<category><![CDATA[wordpress]]></category>
		<guid isPermaLink="false">http://blog.netflowdevelopments.com/?p=857</guid>
		<description><![CDATA[So you&#8217;ve just installed or upgraded to WordPress Multisite and upon checking out your first network site you are greeted with a page full of broken images.  Wondering why?  Well if you are using Nginx and apache chances are you&#8217;ll need to tell nginx to stop running on that domain, or at leaset tone it [...]]]></description>
			<content:encoded><![CDATA[<p>So you&#8217;ve just installed or upgraded to WordPress Multisite and upon checking out your first network site you are greeted with a page full of broken images.  Wondering why?  Well if you are using Nginx and apache chances are you&#8217;ll need to tell nginx to stop running on that domain, or at leaset tone it down to a bare min.  For me I have nginx detect which kinds of files are being loaded and if it&#8217;s one of a select few like images or css files it goes through nginx, everything else and it goes through apache.  All I had to do to fix my broken image problem was to go into my vhost file and limit nginx to simply .ico files for the domain in question.</p>
<p>&nbsp;</p>
<p>Hope that helps</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.netflowdevelopments.com/2012/02/20/wordpress-multisite-and-nginx-dont-play-nice-together/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The best deal on wordpress themes</title>
		<link>http://blog.netflowdevelopments.com/2012/02/05/the-best-deal-on-wordpress-themes/</link>
		<comments>http://blog.netflowdevelopments.com/2012/02/05/the-best-deal-on-wordpress-themes/#comments</comments>
		<pubDate>Sun, 05 Feb 2012 23:29:23 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[beautiful]]></category>
		<category><![CDATA[best]]></category>
		<category><![CDATA[blog]]></category>
		<category><![CDATA[premium]]></category>
		<category><![CDATA[themes]]></category>
		<category><![CDATA[wordpress]]></category>
		<guid isPermaLink="false">http://blog.netflowdevelopments.com/?p=838</guid>
		<description><![CDATA[Well I just purchased a year subscription to Elegant Themes and I had to write a little blurb about how bloody impressed I am.  As much as this would sound like a simple advert for these guys it&#8217;s not.  It&#8217;s me looking at the 73 themes I just bought for $39.99.  That&#8217;s just over $0.50 [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.elegantthemes.com/affiliates/idevaffiliate.php?id=13717_0_1_3"><img class="alignright" title="elegant" src="http://www.elegantthemes.com/affiliates/banners/125x125-2.gif" alt="" width="125" height="125" /></a>Well I just purchased a year subscription to <a href="http://www.elegantthemes.com/affiliates/idevaffiliate.php?id=13717">Elegant Themes </a>and I had to write a little blurb about how bloody impressed I am.  As much as this would sound like a simple advert for these guys it&#8217;s not.  It&#8217;s me looking at the 73 themes I just bought for $39.99.  That&#8217;s just over $0.50 per theme and I am willing to bet you aren&#8217;t going to find this many amazing looking themes for this price.  I set out to find the best looking theme of 2012 and I found over 50 of them.</p>
<h3>But in the words of Lavar Burton: Don&#8217;t take my word for it, check it out for yourself <a href="http://www.elegantthemes.com/affiliates/idevaffiliate.php?id=13717">HERE</a></h3>
<p>Some samples of their themes</p>
<p><a href="http://www.elegantthemes.com/affiliates/idevaffiliate.php?id=13717"><img class="alignnone" title="theme1" src="http://www.elegantthemes.com/images/thumbnail2-convertible.jpg" alt="" width="250" height="200" /></a><a href="http://www.elegantthemes.com/affiliates/idevaffiliate.php?id=13717"><img class="alignnone" title="theme2" src="http://www.elegantthemes.com/images/thumbnail2-evolution.jpg" alt="" width="250" height="200" /></a><a href="http://www.elegantthemes.com/affiliates/idevaffiliate.php?id=13717"><img class="alignnone" title="theme3" src="http://www.elegantthemes.com/images/thumbnail2-mycuisine.jpg" alt="" width="250" height="200" /></a></p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.netflowdevelopments.com/2012/02/05/the-best-deal-on-wordpress-themes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MapMyUser.com wordpress &#8216;hack&#8217; means new theme for the site!</title>
		<link>http://blog.netflowdevelopments.com/2012/01/05/mapmyuser-com-wordpress-hack/</link>
		<comments>http://blog.netflowdevelopments.com/2012/01/05/mapmyuser-com-wordpress-hack/#comments</comments>
		<pubDate>Fri, 06 Jan 2012 03:37:49 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Random Musings]]></category>
		<category><![CDATA[hack]]></category>
		<category><![CDATA[jayson hahn]]></category>
		<category><![CDATA[mapmyuser]]></category>
		<category><![CDATA[wordpress]]></category>
		<guid isPermaLink="false">http://blog.netflowdevelopments.com/?p=799</guid>
		<description><![CDATA[I call this a &#8216;hack&#8217; but in reality there was no breach of security, it was a clever little trojan of sorts put into my old theme by it&#8217;s creators.   What I&#8217;m talking about is the sudden appearance of a little tab on the right hand side of the page that messed up my [...]]]></description>
			<content:encoded><![CDATA[<p>I call this a &#8216;hack&#8217; but in reality there was no breach of security, it was a clever little trojan of sorts put into my old theme by it&#8217;s creators.   What I&#8217;m talking about is the sudden appearance of a little tab on the right hand side of the page that messed up my entire layout.  It was a little advert for a website called mapmyusers, which in itself seems pretty tame and safe, nothing too nefarious looking but the point is that it was put on my site without me knowing about it..</p>
<p>In the end I found that it was being called from the footer.php page and it wasn&#8217;t the only thing being called.. An entire subpage was being pasted on the bottom of my blog:</p>
<p>Internet Marketing Reviews by Jayson Hahn is what it was called and the theme was called &#8216;Life Cycle 1.00 by themepriview&#8217;</p>
<p>So if yuo&#8217;ve gotten this, change your theme and the problem will go away</p>
<div></div>
<div>Finally got me to change themes on this site, lordy lordy the old one was 3-4 years old.. Not that the new one is all that modern, but it was the next inline in the installed themes I had handy.. too lazy to go find a new fancy theme for this blog</div>
]]></content:encoded>
			<wfw:commentRss>http://blog.netflowdevelopments.com/2012/01/05/mapmyuser-com-wordpress-hack/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Error 101 upload (net::ERR_CONNECTION_RESET)  when Uploading large files on Drupal</title>
		<link>http://blog.netflowdevelopments.com/2011/11/08/error-101-upload-neterr_connection_reset-when-uploading-large-files-on-drupal/</link>
		<comments>http://blog.netflowdevelopments.com/2011/11/08/error-101-upload-neterr_connection_reset-when-uploading-large-files-on-drupal/#comments</comments>
		<pubDate>Wed, 09 Nov 2011 05:37:49 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Linux / Freebsd]]></category>
		<category><![CDATA[connection reset]]></category>
		<category><![CDATA[drupal]]></category>
		<category><![CDATA[error 101]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[upload]]></category>
		<guid isPermaLink="false">http://blog.netflowdevelopments.com/?p=744</guid>
		<description><![CDATA[Wow, now this was one of those problems that really makes you want to put your head through a wall. Soo, I was uploading a large file to my CMS through drupal and at about 35%(of a 40MB file) I would get booted to an error page with the following message.  I looked high and [...]]]></description>
			<content:encoded><![CDATA[<p>Wow, now this was one of those problems that really makes you want to put your head through a wall.</p>
<p>Soo, I was uploading a large file to my CMS through drupal and at about 35%(of a 40MB file) I would get booted to an error page with the following message.  I looked high and low and while I found a solution that told me to go into mysql and set the wait_timeout like this: &#8220;set wait_timeout = 28800&#8243; (for some reason my host had it set to 45) it was still occurring.</p>
<p>The other thing was to put this: mysqli.reconnect = On in my php.ini file which didn&#8217;t work but then I tried this isntead: mysql.reconnect = On and I&#8217;m not 100% sure if that was what did it but the last thing I did was I bypassed my router and plugged the cable modem into the laptop directly and guess what?  Bloody file went through..</p>
<p>2 hours later I get my life back</p>
<p>Funny enough now I&#8217;v</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.netflowdevelopments.com/2011/11/08/error-101-upload-neterr_connection_reset-when-uploading-large-files-on-drupal/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The difference between a tuned performance BSD webserver and a stock linux webserver</title>
		<link>http://blog.netflowdevelopments.com/2011/11/08/the-difference-between-a-tuned-performance-bsd-webserver-and-a-stock-linux-webserver/</link>
		<comments>http://blog.netflowdevelopments.com/2011/11/08/the-difference-between-a-tuned-performance-bsd-webserver-and-a-stock-linux-webserver/#comments</comments>
		<pubDate>Wed, 09 Nov 2011 04:04:59 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Linux / Freebsd]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[freebsd]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[memory]]></category>
		<category><![CDATA[performance]]></category>
		<category><![CDATA[ram]]></category>
		<category><![CDATA[tune]]></category>
		<category><![CDATA[webserver]]></category>
		<guid isPermaLink="false">http://blog.netflowdevelopments.com/?p=741</guid>
		<description><![CDATA[First up we have a tuned FreeBSD 8.1 server running Apache 2.2(clearly working up a sweat) 56MB of virtual memory and 40MB of resident memory usage PID USERNAME THR PRI NICE SIZE RES STATE C TIME WCPU COMMAND 55392 www 1 106 0 56460K 39664K CPU2 2 15:43 50.49% httpd &#160; Follow that up with [...]]]></description>
			<content:encoded><![CDATA[<p>First up we have a tuned FreeBSD 8.1 server running Apache 2.2(clearly working up a sweat)</p>
<p>56MB of virtual memory and 40MB of resident memory usage</p>
<p><strong>PID USERNAME THR PRI NICE SIZE RES STATE C TIME WCPU COMMAND</strong><br />
<strong> 55392 www 1 106 0 56460K 39664K CPU2 2 15:43 50.49% httpd</strong></p>
<p>&nbsp;</p>
<p>Follow that up with what is probably a pretty stock linux server running apache 2.2.</p>
<p>98MB or virtual memory usage and 73MB of resident.</p>
<p><strong>PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND</strong><br />
<strong> 7546 nobody 15 0 98648 73m 2040 S 0.7 1.0 0:00.53 httpd</strong></p>
<p>&nbsp;</p>
<p>That&#8217;s nearly <strong>HALF </strong>the memory usage for 2 servers doing exactly the same thing running exactly the same software minus the OS.  See kids, it pays to play with your httpd.conf <img src='http://blog.netflowdevelopments.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />   The irony of course is that the tuned server has 2GB of ram and the stock server has 16GB.  Oh well <img src='http://blog.netflowdevelopments.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Search the blog for tuning tips but one of the key things is knowing what every apache module does and ditching absolutely every single one you don&#8217;t absolutely need.  Trim the fat off apache and then you can work on tuning the actual settings in apache.</p>
<pre>PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND</pre>
]]></content:encoded>
			<wfw:commentRss>http://blog.netflowdevelopments.com/2011/11/08/the-difference-between-a-tuned-performance-bsd-webserver-and-a-stock-linux-webserver/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Lessons learned about speeding up WordPress and an apache webserver in general</title>
		<link>http://blog.netflowdevelopments.com/2011/11/08/lessons-learned-about-speeding-up-wordpress-and-an-apache-webserver-in-general/</link>
		<comments>http://blog.netflowdevelopments.com/2011/11/08/lessons-learned-about-speeding-up-wordpress-and-an-apache-webserver-in-general/#comments</comments>
		<pubDate>Tue, 08 Nov 2011 22:00:35 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Linux / Freebsd]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[cache]]></category>
		<category><![CDATA[minify]]></category>
		<category><![CDATA[nginx]]></category>
		<category><![CDATA[optimize]]></category>
		<category><![CDATA[plugins]]></category>
		<category><![CDATA[wordpress]]></category>
		<guid isPermaLink="false">http://blog.netflowdevelopments.com/?p=739</guid>
		<description><![CDATA[Alright so I&#8217;ve been struggling with this for quite some time.  I run 60-70 wordpress blogs that make up a large network of travel websites providing information on news, restaurants, hotels, events and job postings for every major city in north america.  Chances are if you&#8217;ve searched one of those things for a particular city [...]]]></description>
			<content:encoded><![CDATA[<p>Alright so I&#8217;ve been struggling with this for quite some time.  I run 60-70 wordpress blogs that make up a large network of travel websites providing information on news, restaurants, hotels, events and job postings for every major city in north america.  Chances are if you&#8217;ve searched one of those things for a particular city you&#8217;ve hit one of my sites(or at least that&#8217;s the idea).  Now the problem is that there are a LOT of hotels, restaurants, news articles and job postings in north america, 100&#8242;s of thousands of them.  This means that my blogs have 100&#8242;s of thousands of posts on them and this number grows every day as they are updated to reflect new jobs, news and everything else going on in your city.</p>
<p>The big problem arises now because I have 60 blogs all with 10&#8242;s of thousands of posts being accessed by 100&#8242;s and 1000&#8242;s of people every day, clearly this isn&#8217;t somethign wordpress was built for but I have a flavoured history of bending software to my will.  My CPU usage was constantly at 100% and it&#8217;s only recently that I&#8217;ve gotten around to fixing this, or so the germans would have me believe <img src='http://blog.netflowdevelopments.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />   Here&#8217;s what you need to do</p>
<ol>
<li>Make sure eAccelerator is installed on your server</li>
<li>Tweak your apache settings.. Right now this is what I have my httpd.conf set to:</li>
<li>
<pre>MaxKeepAliveRequests 20
KeepAliveTimeout 2
Timeout 45
MaxClients 20
MinSpareServers 2
MaxSpareServers 7
StartServers  4</pre>
</li>
<li>Make sure that you have wp-super-cache installed.. I researched the crap out of caching plugins and this one consistently came out on top</li>
<ul>
<li>Now here&#8217;s the kicker..  I had a script that installs and sets up new websites for me and much to my chagrin after 6 months I <strong>just</strong> noticed that none of my blogs were caching properly.. the reason was because wordpress didn&#8217;t have write access to wp-content/cache/supercache.  Make SURE the wp-content/cache directory and ALL subdirs are writable by apache</li>
</ul>
<li>Increase your expiry time substantially.  The default is 3600 seconds(1/2 hour) but why do I want all of my sites rebuilding their cached pages every 30 minutes when I only update the sites every 4 hours?  So change the expiry time to something more in line with the frequency of your updates so you&#8217;re server isn&#8217;t constantly rebuilding pages all the time</li>
<li><strong>Preload, preload preload</strong>: This one was huge for me because of the number of posts I have.  Go into the preload section and turn on preload mode.  After you&#8217;ve updated the settings click on preload cache now.  This will systematically go through and precache your entire website..  The beauty about preload mode is that the precached posts done here never expire or are ever recached.  The preloading processes is fairly slow so you can do a few sites at a time without worrying that it&#8217;s going to melt your server into the ground</li>
<li><strong>WP-Minify: </strong>This wonderful little plugin takes your CSS and JS files and compresses the hell out of them, as much as it can without breaking them so that instead of your people having to load 10 50k CSS files it crunches it down to 1 50k  CSS file or something ridiculous like that.  Definitely some tweaking to look at with that</li>
<li><strong>Remove all unnecessary plugins:</strong> The less that loads the less your load. Figure out what you absolutely don&#8217;t need and scrap it</li>
<li><strong>Disable all Apache logging:  </strong>In total I have a few hundred websites on the server and recently I&#8217;ve turned off all domain specific apache logging.  If I need to trouble shoot a domain I&#8217;ll just re-enable it and the repeat the problem to see what&#8217;s going on but disabling this has also reduced my cpu consumption by leaps and bounds.</li>
<li><strong>Nginx: </strong>Whatever you do don&#8217;t have all of your traffic flowing solely through apache, get something like nginx on there.</li>
</ol>
<div>I&#8217;ve never seen high CPU usage from mysql with any of my blogs so I&#8217;ve given up trying to optimize that..I&#8217;ve gone through the process of trying to optimize mysql but never noticed a difference so I just leave that as stock.  Hopefully that helps you out, my server isn&#8217;t the flashiest or the beefiest of girls but she&#8217;s a well oiled and highly tuned machine.  With these tweaks I should be able to get a few more years out of the ole girl yet <img src='http://blog.netflowdevelopments.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </div>
]]></content:encoded>
			<wfw:commentRss>http://blog.netflowdevelopments.com/2011/11/08/lessons-learned-about-speeding-up-wordpress-and-an-apache-webserver-in-general/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Is your wordpress home page displaying a 404 error all of a sudden?</title>
		<link>http://blog.netflowdevelopments.com/2011/11/07/is-your-wordpress-home-page-displaying-a-404-error-all-of-a-sudden/</link>
		<comments>http://blog.netflowdevelopments.com/2011/11/07/is-your-wordpress-home-page-displaying-a-404-error-all-of-a-sudden/#comments</comments>
		<pubDate>Tue, 08 Nov 2011 02:57:19 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[404]]></category>
		<category><![CDATA[home page]]></category>
		<category><![CDATA[no posts]]></category>
		<category><![CDATA[reading settings]]></category>
		<category><![CDATA[static page]]></category>
		<category><![CDATA[wordpress]]></category>
		<guid isPermaLink="false">http://blog.netflowdevelopments.com/?p=735</guid>
		<description><![CDATA[Just went through troubleshooting this for a friends site and thought I&#8217;d post teh fixes..There are two main possibilities here: You have no posts(ie: you even deleted the default post wordpress comes with In the &#8216;Reading Settings&#8217; you&#8217;ve changed the front page from &#8216;display latest posts&#8217; to &#8216;A Static Page (select below) The key with [...]]]></description>
			<content:encoded><![CDATA[<p>Just went through troubleshooting this for a friends site and thought I&#8217;d post teh fixes..There are two main possibilities here:</p>
<ol>
<li>You have no posts(ie: you even deleted the default post wordpress comes with</li>
<li>In the &#8216;Reading Settings&#8217; you&#8217;ve changed the front page from &#8216;display latest posts&#8217; to &#8216;A Static Page (select below)</li>
<ul>
<li>The key with the above problme is that you failed to read the (select below) portion and if you look at &#8216;Front Page&#8217; the drop down box probably has &#8211;Select&#8211; selected, which means nothing is selected.. Pick a god damn page and you&#8217;re off the the races!</li>
</ul>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://blog.netflowdevelopments.com/2011/11/07/is-your-wordpress-home-page-displaying-a-404-error-all-of-a-sudden/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Timthumb Exploit causing plethora of sites to redirect to Russia</title>
		<link>http://blog.netflowdevelopments.com/2011/10/13/timthumb-exploit-causing-plethora-of-sites-to-redirect-to-russia/</link>
		<comments>http://blog.netflowdevelopments.com/2011/10/13/timthumb-exploit-causing-plethora-of-sites-to-redirect-to-russia/#comments</comments>
		<pubDate>Thu, 13 Oct 2011 07:32:45 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[htaccess]]></category>
		<category><![CDATA[redirect]]></category>
		<category><![CDATA[ru]]></category>
		<category><![CDATA[timthumb]]></category>
		<category><![CDATA[wordpress]]></category>
		<guid isPermaLink="false">http://blog.netflowdevelopments.com/?p=702</guid>
		<description><![CDATA[UPDATE: Site hacked again, teaches me for not removing the backdoors.  Details on how to find those below Well what a delight that I checked on one of my old unused sites to find malware warnings and it redirecting me to http://placecollocation.ru/ .  This of course made me look a little closer as it&#8217;s folly [...]]]></description>
			<content:encoded><![CDATA[<p><strong>UPDATE: Site hacked again, teaches me for not removing the backdoors</strong>.  Details on how to find those below</p>
<p>Well what a delight that I checked on one of my old unused sites to find malware warnings and it redirecting me to http://placecollocation.ru/ .  This of course made me look a little closer as it&#8217;s folly to assume a breach is contained to one little area and sure enough I found wordpress and drupal sites alike redirecting.  So being the good server admin I cleaned it out only to wake up the next morning with one of my users telling me that the server was hacked and then pointing me to this very page saying &#8216;here&#8217;s how to fix it <img src='http://blog.netflowdevelopments.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> &#8217;, obviously he doesn&#8217;t know this is my blog but I had to lasugh</p>
<p>So after a few hours of scripting I&#8217;ve cleaned it all out again but I wanted to post up a little help for those going through the same thing.</p>
<p>First off a big thanks goes out to Hack Sparrow for this post: http://www.hacksparrow.com/wordpress-hacked-getting-forwarded-to-distributioncorporate-ru-solution.html  as that pointed me in the right direction immediately.  Although if I could be a little critical of our hacking/flying/chirping friend I would say you shuold have looked more closely at those backdoors.. Obviously they could go by many names so you need to be able to find them if their location or name changes.</p>
<p>So first step: <strong>Make a list of all infected .htaccess file</strong></p>
<ul>
<li>Go find one that know is infected, it will contain a whole lot of ^M or linebreaks in it and then show you some nice little code that redirects your users to some russian site.  The 3 I&#8217;ve heard of are placecollocation.ru , flyghtairline.ru or distributioncorporate.ru.  Copy that url</li>
<li>Go to your home root directory, or /usr/www  or whatever your webroot dir is and run: find . -name .htaccess -exec grep -H {RUSSIANDOMAIN GOES HERE} &gt; infected.txt</li>
<li>Clean out all the undeeded data in that file so it&#8217;s just a list of files: <strong></strong></li>
<ul>
<li>In linux: <strong>sed -i &#8216;s/:.*//g&#8217; infected.txt</strong></li>
<li>In BSD: <strong>sed -i &#8221; -e &#8216;s/:.*//g&#8217; infected.txt</strong></li>
</ul>
<li>Clean out duplicate listings: uniq infected.txt &gt; infected.new &amp;&amp; mv infected.new infected.txt</li>
</ul>
<p>Second Step: <strong>Clean the infected files</strong></p>
<ul>
<li>Lucky for us this guy announces himself by putting a shitload of linebreaks which awk can easily recognize.. What we want to do is tell awk to look for two of these line after line and delete everything below their occurence, output that to a new htaccess and then copy that over the infected one.  *It wouldn&#8217;t hurt to back up your .htaccess files*</li>
<li>Run:<strong> awk &#8216;p $0 == &#8220;\r\r&#8221;{exit} $0 != &#8220;\r&#8221;{print $0}{p=$0}&#8217; .htaccess &gt; htaccess &amp;&amp; mv htaccess .htaccess</strong> for each of the .htaccess files in your infected or alternatively just write a script that reads that file line by line, going through and performing the above command</li>
</ul>
<p>Step 3: <strong>Finding the Backdoors</strong></p>
<ul>
<li>As a good sneaky fucking russian this guy leaves backdoors so that he can re-infect you hours after cleaning this out in the form of the following files: <code>_wp_cache.php</code><code> sm3.php</code> or <code>wp.php.  If you look at these files you'll see they start with something like this:<br />
</code></li>
<ul>
<ul>
<li><code>&lt;?php # Web Shell by oRb</code><br />
<code></code><code>$auth_pass = "";<br />
$color = "#df5";<br />
$default_action = 'FilesMan';<br />
$default_use_ajax = true;<br />
$default_charset = 'Windows-1251'</code></li>
</ul>
</ul>
<li>So the prudent thing to do would be to scan all .php files(or all files in general if yuo were really wanting to be careful) and search for smoething unique about this file, ie: Windows-1251 or Web Shell by oRb like so:  find . -name &#8220;*.php&#8221; -exec grep -H &#8216;Web Shell by oRb&#8217; ;\ -exec rm {} \;</li>
</ul>
<p>Final Step: <strong>Upgrade all outdated timthumb files</strong></p>
<ul>
<li>This whole mess was caused by an exploit in timthumbs, which goes by thumbs.php or timthumbs.php.  It&#8217;s very important to realize though that there could likely be other, non timthumbs files on yuor server called thumbs.php as it&#8217;s a pretty ambigious filename.  So you need to find all of your timthumb files and replace them with updated ones</li>
<li>So let&#8217;s grab the updated timthumb: <strong>wget http://timthumb.googlecode.com/svn/trunk/timthumb.php</strong></li>
<li>find . -name &#8220;*thumb*.php&#8221;  -exec grep -H timthumb {} \; -exec cp timthumb.php {}</li>
</ul>
<p>&nbsp;</p>
<p>And that&#8217;s that!  You should be all good to go..<br />
PS &#8211; One last thing I did was to chown root all of my .htaccess files and leave them chmodded to 444.  Make sure this doesn&#8217;t screw anything up on your end but hopefully it should prevent them from being overwritten in the future<code></code></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.netflowdevelopments.com/2011/10/13/timthumb-exploit-causing-plethora-of-sites-to-redirect-to-russia/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Automatically blocking brute-force attacks on your FreeBSD server</title>
		<link>http://blog.netflowdevelopments.com/2011/08/01/automatically-blocking-brute-force-attacks-on-your-freebsd-server/</link>
		<comments>http://blog.netflowdevelopments.com/2011/08/01/automatically-blocking-brute-force-attacks-on-your-freebsd-server/#comments</comments>
		<pubDate>Mon, 01 Aug 2011 18:23:21 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Linux / Freebsd]]></category>
		<category><![CDATA[attack]]></category>
		<category><![CDATA[block]]></category>
		<category><![CDATA[brute force]]></category>
		<category><![CDATA[cron]]></category>
		<category><![CDATA[firewall]]></category>
		<category><![CDATA[hack]]></category>
		<category><![CDATA[ifpw]]></category>
		<category><![CDATA[invalid login]]></category>
		<category><![CDATA[IP]]></category>
		<category><![CDATA[password]]></category>
		<category><![CDATA[script]]></category>
		<category><![CDATA[ssh]]></category>
		<guid isPermaLink="false">http://blog.netflowdevelopments.com/?p=696</guid>
		<description><![CDATA[I was going through my auth.log today and noticed that a simple brute-force attack was underway.  a few hundred attacks from IP&#8217;s originating out of HANKUK UNIVERSITY OF FOREIGN STUDIES in Korea(220.67.126.35), Sun Network in China(121.127.231.251) and finally from Vodaphone in Italy(2.40.63.99).  I&#8217;m not concerned about them actually breaking through as there are no open accounts [...]]]></description>
			<content:encoded><![CDATA[<p>I was going through my auth.log today and noticed that a simple brute-force attack was underway.  a few hundred attacks from IP&#8217;s originating out of HANKUK UNIVERSITY OF FOREIGN STUDIES in Korea(220.67.126.35), Sun Network in China(121.127.231.251) and finally from Vodaphone in Italy(2.40.63.99).  I&#8217;m not concerned about them actually breaking through as there are no open accounts or guessable passwords anywhere on my system however they are causing a bit of overhead on my server with 60-80 login attempts.</p>
<p>So I went googling around to find a good way to monitor login activity and ban IP&#8217;s for people who have more than 7 failed logins.  I should note here that the best bet would be to have an IP whitelist that only allows ssh connections from specified IP&#8217;s but I&#8217;m jumping all over the place so often that that&#8217;s a bit of a pain in the ass, which leads me to the following solution found herE:</p>
<p style="text-align: center;"><a href="http://www.freebsdwiki.net/index.php/Block_repeated_illegal_or_failed_SSH_logins">http://www.freebsdwiki.net/index.php/Block_repeated_illegal_or_failed_SSH_logins</a></p>
<p style="text-align: center;">&nbsp;</p>
<p style="text-align: left;">First thing to do is setup some precautionary measures with sshd:</p>
<h2>Limiting SSH login sessions</h2>
<p>In your <a title="Sshd config" href="http://www.freebsdwiki.net/index.php/Sshd_config">sshd_config</a> file the following settings can also help slow down such attacks.</p>
<ul>
<li>LoginGraceTime</li>
</ul>
<dl>
<dd>
<dl>
<dd>The server disconnects after this time if the user has not successfully logged in. If the value is 0, there is no time limit. The default is 120 seconds.</dd>
</dl>
</dd>
</dl>
<ul>
<li>MaxStartups</li>
</ul>
<dl>
<dd>
<dl>
<dd>Specifies the maximum number of concurrent unauthenticated connections to the sshd daemon. Additional connections will be dropped until authentication succeeds or the LoginGraceTime expires for a connection. The default is 10. Alternatively, random early drop can be enabled by specifying the three colon separated values &#8220;start:rate:full&#8221; (e.g.,&#8221;10:30:60&#8243;). sshd will refuse connection attempts with a probability of &#8220;rate/100&#8243; (30%) if there are currently &#8220;start&#8221; (10) unauthenticated connections. The probability increases linearly and all connection attempts are refused if the number of unauthenticated connections reaches &#8220;full&#8221; </dd>
<dd> </dd>
<p>Next you want to make sure your log files are up to snuff and then setup a real basic script that scans those files(via a cron) and blocks IP&#8217;s based on the results.  I find IPFW invaluable for the work I do, so that&#8217;s the route I&#8217;m going but if you use PF or IPF there are instructions in the link above for them.</p>
<p><a id=".2Fetc.2Fsyslog.conf" name=".2Fetc.2Fsyslog.conf"></a></p>
<h3>/etc/syslog.conf</h3>
<p>You need an <em>auth.*</em> line in your <a title="Syslog.conf (page does not exist)" href="http://www.freebsdwiki.net/index.php?title=Syslog.conf&amp;action=edit&amp;redlink=1">syslog.conf</a> file in order to log all authentications.</p>
<pre>auth.*                                          /var/log/auth.log</pre>
<p><a id="Using_IPFW" name="Using_IPFW"></a></p>
<h3>Using IPFW</h3>
<p><a id="sshd-fwscan.sh" name="sshd-fwscan.sh"></a></p>
<h4>Create sshd-fwscan.sh and put it somewhere handy like /usr/local/sbin/</h4>
<pre>#!/bin/sh
if ipfw show | awk '{print $1}' | grep -q 20000 ; then
        ipfw delete 20000
fi
# This catches repeated attempts for both legal and illegal users
# No check for duplicate entries is performed, since the rule
# has been deleted.
awk '/sshd/ &amp;&amp; (/Invalid user/ || /authentication error/) {try[$(NF)]++}
END {for (h in try) if (try[h] &gt; 5) print h}' /var/log/auth.log |
while read ip
do
        ipfw -q add 20000 deny tcp from $ip to any in
done</pre>
<p><strong>Note:</strong> To make sure IP&#8217;s expire we delete and add rule <em>20000</em> of the firewall each time, thus if the IP&#8217;s are no longer <em>duplicates</em> in the auth.log they are no longer firewalled.</p>
<p>&nbsp;</p>
<p>That&#8217;s that, I just ran the script as a test and viola, I&#8217;ve got 3 new rules in IPFW blocking those IP&#8217;s.. hoorah! <img src='http://blog.netflowdevelopments.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
</dl>
</dd>
</dl>
]]></content:encoded>
			<wfw:commentRss>http://blog.netflowdevelopments.com/2011/08/01/automatically-blocking-brute-force-attacks-on-your-freebsd-server/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

