<?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>About Web Development by Activo &#187; CentOS</title>
	<atom:link href="http://www.activoinc.com/blog/tag/centos/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.activoinc.com/blog</link>
	<description>Web Development in a Web 2.0 World</description>
	<lastBuildDate>Fri, 29 Jan 2010 17:16:07 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Quick Way to Update Fail2ban jail.conf file</title>
		<link>http://www.activoinc.com/blog/2009/09/03/quick-way-to-update-fail2ban-jail-conf-file/</link>
		<comments>http://www.activoinc.com/blog/2009/09/03/quick-way-to-update-fail2ban-jail-conf-file/#comments</comments>
		<pubDate>Thu, 03 Sep 2009 22:19:24 +0000</pubDate>
		<dc:creator>Ron Peled</dc:creator>
				<category><![CDATA[Web Application Hosting]]></category>
		<category><![CDATA[CentOS]]></category>
		<category><![CDATA[fail2ban]]></category>

		<guid isPermaLink="false">http://www.activoinc.com/blog/?p=327</guid>
		<description><![CDATA[There are plenty of settings in that file, especially if you are running CentOS 5.3 with latest patches and fail2ban from atomic repository. Here is a short list of steps that I follow when setting up new servers:
1. Setup sendmail to start on boot. Make sure it can send emails correctly (Reverse DNS records, hostname [...]]]></description>
			<content:encoded><![CDATA[<p>There are plenty of settings in that file, especially if you are running CentOS 5.3 with latest patches and fail2ban from atomic repository. Here is a short list of steps that I follow when setting up new servers:</p>
<p>1. Setup sendmail to start on boot. Make sure it can send emails correctly (Reverse DNS records, hostname config, etc).</p>
<p>2. Make sure that fail2ban starts on boot (I use ntsysv for that).</p>
<p>3. Edit the jail.conf file, type vi /etc/fail2ban/jail.conf</p>
<p>4. Change the time for increased security:</p>
<pre>bantime = 86400
findtime = 3600</pre>
<p>5. After you save and exit, change all the destination emails to go to root which will then be forwarded to you:</p>
<pre>sed -i 's/you@mail.com/root/g' /etc/fail2ban/jail.conf</pre>
<p>6. Add a forward for all emails to root to your email:</p>
<pre>echo "myemailaddress@mydomain.com" &gt; ~/.forward</pre>
<p>7. Restart  fail2ban:</p>
<pre>service fail2ban restart</pre>
<h3  class="related_post_title">Related Posts</h3><ul class="related_post"><li>August 31, 2009 -- <a href="http://www.activoinc.com/blog/2009/08/31/performance-optimized-httpd-conf-for-magento-ecommerce/" title="Performance Optimized httpd.conf for Magento eCommerce">Performance Optimized httpd.conf for Magento eCommerce</a> (0)</li><li>August 24, 2009 -- <a href="http://www.activoinc.com/blog/2009/08/24/howto-setup-iptables-for-www-and-dbmysql-on-linux/" title="Howto setup iptables for www and db(mysql) on linux">Howto setup iptables for www and db(mysql) on linux</a> (0)</li><li>August 23, 2009 -- <a href="http://www.activoinc.com/blog/2009/08/23/centos-5-3-install-essentials/" title="CentOS 5.3 Install Essentials">CentOS 5.3 Install Essentials</a> (0)</li><li>August 3, 2009 -- <a href="http://www.activoinc.com/blog/2009/08/03/block-access-to-your-dedicated-server-automatically-if-more-than-3-failed-logins/" title="Block access to your dedicated server automatically if more than 3 failed logins">Block access to your dedicated server automatically if more than 3 failed logins</a> (0)</li><li>March 27, 2009 -- <a href="http://www.activoinc.com/blog/2009/03/27/recommended-visual-svn-server-now-with-subversion-16/" title="Recommended: Visual SVN Server, now with Subversion 1.6">Recommended: Visual SVN Server, now with Subversion 1.6</a> (1)</li><li>March 25, 2009 -- <a href="http://www.activoinc.com/blog/2009/03/25/tightening-up-iptables-for-a-dedicated-db-server-mysql-and-centos/" title="Tightening up iptables for a dedicated DB server (MySQL and CentOS)">Tightening up iptables for a dedicated DB server (MySQL and CentOS)</a> (1)</li><li>December 25, 2008 -- <a href="http://www.activoinc.com/blog/2008/12/25/pdnsd-decrease-dns-response-time-and-save-bandwidth/" title="pdnsd &#8211; Decrease DNS response time and save bandwidth">pdnsd &#8211; Decrease DNS response time and save bandwidth</a> (0)</li><li>November 30, 2008 -- <a href="http://www.activoinc.com/blog/2008/11/30/centos-for-linux-servers-a-cut-above/" title="CentOS for Linux Servers: a cut above">CentOS for Linux Servers: a cut above</a> (0)</li><li>April 13, 2008 -- <a href="http://www.activoinc.com/blog/2008/04/13/about-linux-distros-ubuntu-and-centos/" title="About Linux Distros: Ubuntu and CentOS">About Linux Distros: Ubuntu and CentOS</a> (9)</li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.activoinc.com/blog/2009/09/03/quick-way-to-update-fail2ban-jail-conf-file/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Performance Optimized httpd.conf for Magento eCommerce</title>
		<link>http://www.activoinc.com/blog/2009/08/31/performance-optimized-httpd-conf-for-magento-ecommerce/</link>
		<comments>http://www.activoinc.com/blog/2009/08/31/performance-optimized-httpd-conf-for-magento-ecommerce/#comments</comments>
		<pubDate>Mon, 31 Aug 2009 09:00:46 +0000</pubDate>
		<dc:creator>Ron Peled</dc:creator>
				<category><![CDATA[Web Application Hosting]]></category>
		<category><![CDATA[CentOS]]></category>
		<category><![CDATA[httpd.conf]]></category>

		<guid isPermaLink="false">http://www.activoinc.com/blog/?p=320</guid>
		<description><![CDATA[If you ever run Magento eCommerce on your servers you know that it requires some serious horse power. It is just the nature of the beast, with XML configuration, the usage of the Zend Framework, and MVC design &#8211; every page load is not trivial. I realize that there are many lighter and various other [...]]]></description>
			<content:encoded><![CDATA[<p>If you ever run Magento eCommerce on your servers you know that it requires some serious horse power. It is just the nature of the beast, with XML configuration, the usage of the Zend Framework, and MVC design &#8211; every page load is not trivial. I realize that there are many lighter and various other forms of web servers, however I always stick to the safest and most reliable which usually happens to be the most popular option out there: httpd. Here is an optimized httpd.conf targeting a dedicated server box for running only httpd (no mysql) and Magento:</p>
<p>A couple of assumptions first:</p>
<ul>
<li> You are running CentOS (I did not test any other distros)</li>
<li>You have httpd installed</li>
<li>You have lots of RAM (this server has 16GB of RAM)</li>
<li>This is a dedicated box</li>
<li>You know what you are doing&#8230;</li>
</ul>
<p>Download the file, copy over your httpd.conf, restart httpd:</p>
<pre>wget http://www.activoinc.com/downloads/httpd.conf-magento
cp /etc/httpd/conf/httpd.conf ./httpd.conf.old
cat httpd.conf-magento &gt; /etc/httpd/conf/httpd.conf</pre>
<p>Once done, you will also need to update the vhosts area of the file near the bottom of it. In case you wanted, here is a direct link to the file: <a href="http://www.activoinc.com/downloads/httpd.conf-magento">http://www.activoinc.com/downloads/httpd.conf-magento</a></p>
<h3  class="related_post_title">Related Posts</h3><ul class="related_post"><li>September 3, 2009 -- <a href="http://www.activoinc.com/blog/2009/09/03/quick-way-to-update-fail2ban-jail-conf-file/" title="Quick Way to Update Fail2ban jail.conf file">Quick Way to Update Fail2ban jail.conf file</a> (0)</li><li>August 24, 2009 -- <a href="http://www.activoinc.com/blog/2009/08/24/howto-setup-iptables-for-www-and-dbmysql-on-linux/" title="Howto setup iptables for www and db(mysql) on linux">Howto setup iptables for www and db(mysql) on linux</a> (0)</li><li>August 23, 2009 -- <a href="http://www.activoinc.com/blog/2009/08/23/centos-5-3-install-essentials/" title="CentOS 5.3 Install Essentials">CentOS 5.3 Install Essentials</a> (0)</li><li>August 3, 2009 -- <a href="http://www.activoinc.com/blog/2009/08/03/block-access-to-your-dedicated-server-automatically-if-more-than-3-failed-logins/" title="Block access to your dedicated server automatically if more than 3 failed logins">Block access to your dedicated server automatically if more than 3 failed logins</a> (0)</li><li>March 27, 2009 -- <a href="http://www.activoinc.com/blog/2009/03/27/recommended-visual-svn-server-now-with-subversion-16/" title="Recommended: Visual SVN Server, now with Subversion 1.6">Recommended: Visual SVN Server, now with Subversion 1.6</a> (1)</li><li>March 25, 2009 -- <a href="http://www.activoinc.com/blog/2009/03/25/tightening-up-iptables-for-a-dedicated-db-server-mysql-and-centos/" title="Tightening up iptables for a dedicated DB server (MySQL and CentOS)">Tightening up iptables for a dedicated DB server (MySQL and CentOS)</a> (1)</li><li>December 25, 2008 -- <a href="http://www.activoinc.com/blog/2008/12/25/pdnsd-decrease-dns-response-time-and-save-bandwidth/" title="pdnsd &#8211; Decrease DNS response time and save bandwidth">pdnsd &#8211; Decrease DNS response time and save bandwidth</a> (0)</li><li>November 30, 2008 -- <a href="http://www.activoinc.com/blog/2008/11/30/centos-for-linux-servers-a-cut-above/" title="CentOS for Linux Servers: a cut above">CentOS for Linux Servers: a cut above</a> (0)</li><li>April 13, 2008 -- <a href="http://www.activoinc.com/blog/2008/04/13/about-linux-distros-ubuntu-and-centos/" title="About Linux Distros: Ubuntu and CentOS">About Linux Distros: Ubuntu and CentOS</a> (9)</li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.activoinc.com/blog/2009/08/31/performance-optimized-httpd-conf-for-magento-ecommerce/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Howto setup iptables for www and db(mysql) on linux</title>
		<link>http://www.activoinc.com/blog/2009/08/24/howto-setup-iptables-for-www-and-dbmysql-on-linux/</link>
		<comments>http://www.activoinc.com/blog/2009/08/24/howto-setup-iptables-for-www-and-dbmysql-on-linux/#comments</comments>
		<pubDate>Tue, 25 Aug 2009 05:06:53 +0000</pubDate>
		<dc:creator>Ron Peled</dc:creator>
				<category><![CDATA[Web Application Hosting]]></category>
		<category><![CDATA[CentOS]]></category>
		<category><![CDATA[iptables]]></category>

		<guid isPermaLink="false">http://www.activoinc.com/blog/?p=303</guid>
		<description><![CDATA[Since I provide fully managed hosting services to my selective clients, I&#8217;ve been setting up iptables more than I can count. After a while I have the tendency to automate common tasks. In the case of setting iptables it can easily be done by downloading and running a shell script. So I created these two [...]]]></description>
			<content:encoded><![CDATA[<p>Since I provide fully managed hosting services to my selective clients, I&#8217;ve been setting up iptables more than I can count. After a while I have the tendency to automate common tasks. In the case of setting iptables it can easily be done by downloading and running a shell script. So I created these two shell scripts each one targets a specific server usage: one for WWW servers and the other is for dedicated DB servers.</p>
<p>Here is a couple of assumptions:</p>
<ul>
<li>Using a linux server</li>
<li>Has iptables installed and running</li>
<li>You have root access to the server (or enough privileges to run these commands)</li>
<li>Not a must, but I only tested these scripts on a CentOS server (and many of them&#8230;)</li>
<li>You know what you are doing!</li>
</ul>
<p>The scripts simply clears the current settings of your iptables, adds open ports as necessary and restarts the iptables service. In the case of WWW it opens the ports 22, 80, and 443 (SSL). In the case of MYSQL it opens the ports 22, and 3306 and if you wish you can uncomment a line in there to restrict access only to a specific set of IPs. In the case of a dedicated server you may only want the corresponding WWW server to be able to access the MYSQL server. Here are the steps, I will divide them by the type of the server:</p>
<p><strong>Setting iptables on a WWW server:</strong></p>
<pre>wget http://www.activoinc.com/downloads/iptables-www
chmod +x iptables-www
./iptables-www</pre>
<p><strong>Setting iptables on a MySQL server:</strong></p>
<pre>wget http://www.activoinc.com/downloads/iptables-mysql
chmod +x iptables-mysql
./iptables-mysql</pre>
<p>Note: there is absolutely no warranty that this will work, it is provided with the sole hope that it may save you a few minutes or a couple of hours.</p>
<h3  class="related_post_title">Related Posts</h3><ul class="related_post"><li>September 3, 2009 -- <a href="http://www.activoinc.com/blog/2009/09/03/quick-way-to-update-fail2ban-jail-conf-file/" title="Quick Way to Update Fail2ban jail.conf file">Quick Way to Update Fail2ban jail.conf file</a> (0)</li><li>August 31, 2009 -- <a href="http://www.activoinc.com/blog/2009/08/31/performance-optimized-httpd-conf-for-magento-ecommerce/" title="Performance Optimized httpd.conf for Magento eCommerce">Performance Optimized httpd.conf for Magento eCommerce</a> (0)</li><li>August 23, 2009 -- <a href="http://www.activoinc.com/blog/2009/08/23/centos-5-3-install-essentials/" title="CentOS 5.3 Install Essentials">CentOS 5.3 Install Essentials</a> (0)</li><li>August 3, 2009 -- <a href="http://www.activoinc.com/blog/2009/08/03/block-access-to-your-dedicated-server-automatically-if-more-than-3-failed-logins/" title="Block access to your dedicated server automatically if more than 3 failed logins">Block access to your dedicated server automatically if more than 3 failed logins</a> (0)</li><li>March 27, 2009 -- <a href="http://www.activoinc.com/blog/2009/03/27/recommended-visual-svn-server-now-with-subversion-16/" title="Recommended: Visual SVN Server, now with Subversion 1.6">Recommended: Visual SVN Server, now with Subversion 1.6</a> (1)</li><li>March 25, 2009 -- <a href="http://www.activoinc.com/blog/2009/03/25/tightening-up-iptables-for-a-dedicated-db-server-mysql-and-centos/" title="Tightening up iptables for a dedicated DB server (MySQL and CentOS)">Tightening up iptables for a dedicated DB server (MySQL and CentOS)</a> (1)</li><li>December 25, 2008 -- <a href="http://www.activoinc.com/blog/2008/12/25/pdnsd-decrease-dns-response-time-and-save-bandwidth/" title="pdnsd &#8211; Decrease DNS response time and save bandwidth">pdnsd &#8211; Decrease DNS response time and save bandwidth</a> (0)</li><li>November 30, 2008 -- <a href="http://www.activoinc.com/blog/2008/11/30/centos-for-linux-servers-a-cut-above/" title="CentOS for Linux Servers: a cut above">CentOS for Linux Servers: a cut above</a> (0)</li><li>April 13, 2008 -- <a href="http://www.activoinc.com/blog/2008/04/13/about-linux-distros-ubuntu-and-centos/" title="About Linux Distros: Ubuntu and CentOS">About Linux Distros: Ubuntu and CentOS</a> (9)</li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.activoinc.com/blog/2009/08/24/howto-setup-iptables-for-www-and-dbmysql-on-linux/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CentOS 5.3 Install Essentials</title>
		<link>http://www.activoinc.com/blog/2009/08/23/centos-5-3-install-essentials/</link>
		<comments>http://www.activoinc.com/blog/2009/08/23/centos-5-3-install-essentials/#comments</comments>
		<pubDate>Mon, 24 Aug 2009 05:13:12 +0000</pubDate>
		<dc:creator>Ron Peled</dc:creator>
				<category><![CDATA[LAMP: Linux Apache MySQL PHP]]></category>
		<category><![CDATA[Web Application Hosting]]></category>
		<category><![CDATA[CentOS]]></category>
		<category><![CDATA[Linux server]]></category>

		<guid isPermaLink="false">http://www.activoinc.com/blog/?p=300</guid>
		<description><![CDATA[When I setup a new server, I typically install it with nothing checked in the packages list of the installation process. I like using yum update first and then running yum install on the packages that I absolutely need. Clean and mean is my favorite way to run a Linux server. Two main reason are [...]]]></description>
			<content:encoded><![CDATA[<p>When I setup a new server, I typically install it with nothing checked in the packages list of the installation process. I like using yum update first and then running yum install on the packages that I absolutely need. Clean and mean is my favorite way to run a Linux server. Two main reason are behind this: one is performance, this is a bit obvious: the less you got on the HD and processes running in the background the faster the server. Two is security: the less software you have installed your vulnerability &#8220;surface area&#8221; is smaller.</p>
<p>While installing it clean is great, I do have a minimum set of tools that I usually need in any server. Most of these tools are small and do not require background services so I install them almost by default. You should check if they suite your needs and use it at your discretion. Hint: the goal here is to copy and paste once a new server is installed.</p>
<p><strong>(correction) Before I can use the next command I need to install wget:</strong></p>
<pre>yum install wget</pre>
<p><strong>Add the Atomic repository (newer versions of LAMP, some security packages):</strong></p>
<pre>wget -q -O - http://www.atomicorp.com/installers/atomic.sh | sh</pre>
<p><strong>Install basic packages:</strong></p>
<pre>yum install unzip sendmail ntsysv fail2ban logrotate pdns</pre>
<h3  class="related_post_title">Related Posts</h3><ul class="related_post"><li>November 30, 2008 -- <a href="http://www.activoinc.com/blog/2008/11/30/centos-for-linux-servers-a-cut-above/" title="CentOS for Linux Servers: a cut above">CentOS for Linux Servers: a cut above</a> (0)</li><li>September 3, 2009 -- <a href="http://www.activoinc.com/blog/2009/09/03/quick-way-to-update-fail2ban-jail-conf-file/" title="Quick Way to Update Fail2ban jail.conf file">Quick Way to Update Fail2ban jail.conf file</a> (0)</li><li>August 31, 2009 -- <a href="http://www.activoinc.com/blog/2009/08/31/performance-optimized-httpd-conf-for-magento-ecommerce/" title="Performance Optimized httpd.conf for Magento eCommerce">Performance Optimized httpd.conf for Magento eCommerce</a> (0)</li><li>August 24, 2009 -- <a href="http://www.activoinc.com/blog/2009/08/24/howto-setup-iptables-for-www-and-dbmysql-on-linux/" title="Howto setup iptables for www and db(mysql) on linux">Howto setup iptables for www and db(mysql) on linux</a> (0)</li><li>August 3, 2009 -- <a href="http://www.activoinc.com/blog/2009/08/03/block-access-to-your-dedicated-server-automatically-if-more-than-3-failed-logins/" title="Block access to your dedicated server automatically if more than 3 failed logins">Block access to your dedicated server automatically if more than 3 failed logins</a> (0)</li><li>March 27, 2009 -- <a href="http://www.activoinc.com/blog/2009/03/27/recommended-visual-svn-server-now-with-subversion-16/" title="Recommended: Visual SVN Server, now with Subversion 1.6">Recommended: Visual SVN Server, now with Subversion 1.6</a> (1)</li><li>March 25, 2009 -- <a href="http://www.activoinc.com/blog/2009/03/25/tightening-up-iptables-for-a-dedicated-db-server-mysql-and-centos/" title="Tightening up iptables for a dedicated DB server (MySQL and CentOS)">Tightening up iptables for a dedicated DB server (MySQL and CentOS)</a> (1)</li><li>December 25, 2008 -- <a href="http://www.activoinc.com/blog/2008/12/25/pdnsd-decrease-dns-response-time-and-save-bandwidth/" title="pdnsd &#8211; Decrease DNS response time and save bandwidth">pdnsd &#8211; Decrease DNS response time and save bandwidth</a> (0)</li><li>April 13, 2008 -- <a href="http://www.activoinc.com/blog/2008/04/13/about-linux-distros-ubuntu-and-centos/" title="About Linux Distros: Ubuntu and CentOS">About Linux Distros: Ubuntu and CentOS</a> (9)</li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.activoinc.com/blog/2009/08/23/centos-5-3-install-essentials/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Block access to your dedicated server automatically if more than 3 failed logins</title>
		<link>http://www.activoinc.com/blog/2009/08/03/block-access-to-your-dedicated-server-automatically-if-more-than-3-failed-logins/</link>
		<comments>http://www.activoinc.com/blog/2009/08/03/block-access-to-your-dedicated-server-automatically-if-more-than-3-failed-logins/#comments</comments>
		<pubDate>Mon, 03 Aug 2009 08:07:26 +0000</pubDate>
		<dc:creator>Ron Peled</dc:creator>
				<category><![CDATA[Web Application Hosting]]></category>
		<category><![CDATA[CentOS]]></category>
		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://www.activoinc.com/blog/?p=284</guid>
		<description><![CDATA[Lately I have been noticing high activity of cyberattacks. In fact, a few of our servers got hit and had to be rebuilt. Of course some of these servers were never built with security in mind. We did manage to save all the data and the redo took less than one day total so the [...]]]></description>
			<content:encoded><![CDATA[<p>Lately I have been noticing high activity of cyberattacks. In fact, a few of our servers got hit and had to be rebuilt. Of course some of these servers were never built with security in mind. We did manage to save all the data and the redo took less than one day total so the end result is great overall with fully patched servers, firewall, email alerts in place, and finally a way to automatically block failed logins. I&#8217;ll show you how to setup the last part, it is actually quite easy.</p>
<p>So, I assume you have a CentOS server. I am using CentOS 5.3 fully updated (yum update) and i have the <a href="http://www.atomicorp.com/channels/">atomicorp repository</a> setup. The atomicorp is not necessary (it seems) but will allow you to use newer versions of PHP and other packages. The package that will do the work is called <a href="http://www.fail2ban.org/wiki/index.php/Main_Page">fail2ban</a>. A simple install seems to take care of it for us:</p>
<pre>yum install fail2ban</pre>
<p>Lets install the service, in case that we restart the server &#8211; the service will automatically start running, I use ntsysv for this:</p>
<pre>ntsysv (hit enter, select the service, make sure it has a start inside the brackets, and click 'ok')</pre>
<p>Lets start the service:</p>
<pre>service fail2ban start</pre>
<p>Here is recommend to setup a auto forward on the root emails to you:</p>
<pre>echo 'youremail@yourdomain.com' &gt; ~/.forward</pre>
<p>You should be all set. Try to check the log files once a week after the install, see if the service actually blocked potential hackers. Let me know if this worked for you or if you are using a better package?</p>
<h3  class="related_post_title">Related Posts</h3><ul class="related_post"><li>November 30, 2008 -- <a href="http://www.activoinc.com/blog/2008/11/30/centos-for-linux-servers-a-cut-above/" title="CentOS for Linux Servers: a cut above">CentOS for Linux Servers: a cut above</a> (0)</li><li>April 13, 2008 -- <a href="http://www.activoinc.com/blog/2008/04/13/about-linux-distros-ubuntu-and-centos/" title="About Linux Distros: Ubuntu and CentOS">About Linux Distros: Ubuntu and CentOS</a> (9)</li><li>September 3, 2009 -- <a href="http://www.activoinc.com/blog/2009/09/03/quick-way-to-update-fail2ban-jail-conf-file/" title="Quick Way to Update Fail2ban jail.conf file">Quick Way to Update Fail2ban jail.conf file</a> (0)</li><li>August 31, 2009 -- <a href="http://www.activoinc.com/blog/2009/08/31/performance-optimized-httpd-conf-for-magento-ecommerce/" title="Performance Optimized httpd.conf for Magento eCommerce">Performance Optimized httpd.conf for Magento eCommerce</a> (0)</li><li>August 24, 2009 -- <a href="http://www.activoinc.com/blog/2009/08/24/howto-setup-iptables-for-www-and-dbmysql-on-linux/" title="Howto setup iptables for www and db(mysql) on linux">Howto setup iptables for www and db(mysql) on linux</a> (0)</li><li>August 23, 2009 -- <a href="http://www.activoinc.com/blog/2009/08/23/centos-5-3-install-essentials/" title="CentOS 5.3 Install Essentials">CentOS 5.3 Install Essentials</a> (0)</li><li>March 27, 2009 -- <a href="http://www.activoinc.com/blog/2009/03/27/recommended-visual-svn-server-now-with-subversion-16/" title="Recommended: Visual SVN Server, now with Subversion 1.6">Recommended: Visual SVN Server, now with Subversion 1.6</a> (1)</li><li>March 25, 2009 -- <a href="http://www.activoinc.com/blog/2009/03/25/tightening-up-iptables-for-a-dedicated-db-server-mysql-and-centos/" title="Tightening up iptables for a dedicated DB server (MySQL and CentOS)">Tightening up iptables for a dedicated DB server (MySQL and CentOS)</a> (1)</li><li>December 25, 2008 -- <a href="http://www.activoinc.com/blog/2008/12/25/pdnsd-decrease-dns-response-time-and-save-bandwidth/" title="pdnsd &#8211; Decrease DNS response time and save bandwidth">pdnsd &#8211; Decrease DNS response time and save bandwidth</a> (0)</li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.activoinc.com/blog/2009/08/03/block-access-to-your-dedicated-server-automatically-if-more-than-3-failed-logins/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Recommended: Visual SVN Server, now with Subversion 1.6</title>
		<link>http://www.activoinc.com/blog/2009/03/27/recommended-visual-svn-server-now-with-subversion-16/</link>
		<comments>http://www.activoinc.com/blog/2009/03/27/recommended-visual-svn-server-now-with-subversion-16/#comments</comments>
		<pubDate>Fri, 27 Mar 2009 16:28:00 +0000</pubDate>
		<dc:creator>Ron Peled</dc:creator>
				<category><![CDATA[Web Development]]></category>
		<category><![CDATA[CentOS]]></category>
		<category><![CDATA[subversion]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://www.activoinc.com/blog/?p=193</guid>
		<description><![CDATA[Sometimes we are so busy with our projects that we miss interesting changes, some may influence us positively. Here is a change that I wanted to share with you: new subversion version 1.6 and Visual SVN Server.
In the last three years we have used both VSS that integrates seamlessly with Microsoft&#8217;s Visual Studio, of-course and [...]]]></description>
			<content:encoded><![CDATA[<p>Sometimes we are so busy with our projects that we miss interesting changes, some may influence us positively. Here is a change that I wanted to share with you: new <a title="Subversion 1.6" href="http://subversion.tigris.org/">subversion version 1.6</a> and <a href="http://www.visualsvn.com/server/">Visual SVN Server</a>.</p>
<p>In the last three years we have used both VSS that integrates seamlessly with Microsoft&#8217;s Visual Studio, of-course and subversion which can be handled simply from the Windows Explorer window under windows or by using the simple but useful subversion client. Through our development years, it was subversion that took over all our source code repositories. It was simple to use, great to manage, and most importantly &#8211; reliable.</p>
<p>Just recently I needed to use the &#8216;merge&#8217; feature and I discovered that it was only available in version 1.5 and on. So, I went on trying to upgrade the subversion binaries to the latest stable on an Ubuntu server. If you have been reading my blog, you already know that I do not like Ubuntu, well this is the only Ubuntu server left in our arsenal. To make a long story short, after trying to upgrade but giving up since it requires a major Ubuntu release upgrade, I decided that I should look somewhere else. This is where I turned to Visual SVN Server.</p>
<p>After purchasing a copy of Visual SVN &#8211; which is a great little plugin to Visual Studio that allows you to integrate with your subversion repository seamlessly and efficiently, we noticed that the same company created Visual SVN Server. Hence, I tried it. I can start by saying that it was well worth it. Yes, Linux is great but for the simple stuff that we do with SVN a windows box will do just fine. Not to mention that with Ubuntu it is a nightmare and waiting for CentOS to adopt the latest version of subversion may take some time, Visual SVN Server is very convenient. If you check their download page, the latest download-able version is already using subversion 1.6. Great!</p>
<p>So, if you are looking to build a subversion repository or in need of upgrading due to need of features/bug fixes &#8211; I strongly recommend upgrading to Visual SVN Server.</p>
<p>By the way &#8211; moving your existing repositories is a no brainer, especially with Visual SVN&#8217;s <strong>repository import</strong> feature.</p>
<h3  class="related_post_title">Related Posts</h3><ul class="related_post"><li>November 30, 2008 -- <a href="http://www.activoinc.com/blog/2008/11/30/centos-for-linux-servers-a-cut-above/" title="CentOS for Linux Servers: a cut above">CentOS for Linux Servers: a cut above</a> (0)</li><li>April 13, 2008 -- <a href="http://www.activoinc.com/blog/2008/04/13/about-linux-distros-ubuntu-and-centos/" title="About Linux Distros: Ubuntu and CentOS">About Linux Distros: Ubuntu and CentOS</a> (9)</li><li>September 3, 2009 -- <a href="http://www.activoinc.com/blog/2009/09/03/quick-way-to-update-fail2ban-jail-conf-file/" title="Quick Way to Update Fail2ban jail.conf file">Quick Way to Update Fail2ban jail.conf file</a> (0)</li><li>August 31, 2009 -- <a href="http://www.activoinc.com/blog/2009/08/31/performance-optimized-httpd-conf-for-magento-ecommerce/" title="Performance Optimized httpd.conf for Magento eCommerce">Performance Optimized httpd.conf for Magento eCommerce</a> (0)</li><li>August 24, 2009 -- <a href="http://www.activoinc.com/blog/2009/08/24/howto-setup-iptables-for-www-and-dbmysql-on-linux/" title="Howto setup iptables for www and db(mysql) on linux">Howto setup iptables for www and db(mysql) on linux</a> (0)</li><li>August 23, 2009 -- <a href="http://www.activoinc.com/blog/2009/08/23/centos-5-3-install-essentials/" title="CentOS 5.3 Install Essentials">CentOS 5.3 Install Essentials</a> (0)</li><li>August 3, 2009 -- <a href="http://www.activoinc.com/blog/2009/08/03/block-access-to-your-dedicated-server-automatically-if-more-than-3-failed-logins/" title="Block access to your dedicated server automatically if more than 3 failed logins">Block access to your dedicated server automatically if more than 3 failed logins</a> (0)</li><li>May 12, 2009 -- <a href="http://www.activoinc.com/blog/2009/05/12/cleaning-an-entire-subversion-working-folder-from-svn-folders/" title="Cleaning an entire subversion working folder from &#8216;.svn&#8217; folders">Cleaning an entire subversion working folder from &#8216;.svn&#8217; folders</a> (2)</li><li>March 30, 2009 -- <a href="http://www.activoinc.com/blog/2009/03/30/will-visual-svn-server-remain-a-for-free-product/" title="Will Visual SVN Server remain a for-Free product?">Will Visual SVN Server remain a for-Free product?</a> (0)</li><li>March 25, 2009 -- <a href="http://www.activoinc.com/blog/2009/03/25/tightening-up-iptables-for-a-dedicated-db-server-mysql-and-centos/" title="Tightening up iptables for a dedicated DB server (MySQL and CentOS)">Tightening up iptables for a dedicated DB server (MySQL and CentOS)</a> (1)</li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.activoinc.com/blog/2009/03/27/recommended-visual-svn-server-now-with-subversion-16/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tightening up iptables for a dedicated DB server (MySQL and CentOS)</title>
		<link>http://www.activoinc.com/blog/2009/03/25/tightening-up-iptables-for-a-dedicated-db-server-mysql-and-centos/</link>
		<comments>http://www.activoinc.com/blog/2009/03/25/tightening-up-iptables-for-a-dedicated-db-server-mysql-and-centos/#comments</comments>
		<pubDate>Thu, 26 Mar 2009 00:40:38 +0000</pubDate>
		<dc:creator>Ron Peled</dc:creator>
				<category><![CDATA[LAMP: Linux Apache MySQL PHP]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[CentOS]]></category>
		<category><![CDATA[security]]></category>

		<guid isPermaLink="false">http://www.activoinc.com/blog/?p=191</guid>
		<description><![CDATA[In a typical high performing web servers environment I have a few web servers running apache/php and a separate DB server to support them. If the need ever comes to increase the capacity of the DB server it can easily be done via the MySQL clustering configuration. In any case, one of the most redundant [...]]]></description>
			<content:encoded><![CDATA[<p>In a typical high performing web servers environment I have a few web servers running apache/php and a separate DB server to support them. If the need ever comes to increase the capacity of the DB server it can easily be done via the MySQL clustering configuration. In any case, one of the most redundant tasks before setting up all servers is to tighten the security. In particular, setting the firewall is a repetitive task. Hence I am setting this page as a guide to myself and anyone who cares, Enjoy!</p>
<ol>
<li>SSH to the server, login as root</li>
<li>type <strong>vi myiptables-mysql</strong></li>
<li>Insert the following commands:<br />
<strong>NOTE: </strong>you will need to insert the web server&#8217;s ip addresses where I placed &lt;ip address#&gt;. These are the ip addresses that MySQL queries will originate from.</p>
<pre>#!/bin/bash
#
# iptables example configuration script
#
# Flush all current rules from iptables
#
iptables -F
#
# Allow SSH connections on tcp port 22
# This is essential when working on remote servers via SSH to prevent locking yourself out of the system
#
iptables -A INPUT -p tcp --dport 22 -j ACCEPT

iptables -I INPUT 1 -i lo -p tcp --dport mysql -j ACCEPT
iptables -I INPUT 2 -i lo -p udp --dport mysql -j ACCEPT
iptables -I INPUT 3 -i eth0 -p tcp --dport mysql -s &lt;ip address1&gt; -j ACCEPT
iptables -I INPUT 3 -i eth0 -p tcp --dport mysql -s &lt;ip address2&gt; -j ACCEPT

#
# Set default policies for INPUT, FORWARD and OUTPUT chains
#
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT
#
# Set access for localhost
#
iptables -A INPUT -i lo -j ACCEPT
#
# Accept packets belonging to established and related connections
#
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
#
# Save settings
#
/sbin/service iptables save
#
# List rules
#
iptables -L -v</pre>
</li>
<li>save and exit</li>
<li>Allow the file to execute by typing this command: <strong>chmod +x myiptables-mysql</strong></li>
<li>Run the file by tying this command: <strong>./myiptables-mysql</strong></li>
<li>Test it and Enjoy!</li>
</ol>
<p>Security notice: yes, for an even tighter security it is possible to change the ports.</p>
<h3  class="related_post_title">Related Posts</h3><ul class="related_post"><li>September 3, 2009 -- <a href="http://www.activoinc.com/blog/2009/09/03/quick-way-to-update-fail2ban-jail-conf-file/" title="Quick Way to Update Fail2ban jail.conf file">Quick Way to Update Fail2ban jail.conf file</a> (0)</li><li>August 31, 2009 -- <a href="http://www.activoinc.com/blog/2009/08/31/performance-optimized-httpd-conf-for-magento-ecommerce/" title="Performance Optimized httpd.conf for Magento eCommerce">Performance Optimized httpd.conf for Magento eCommerce</a> (0)</li><li>August 24, 2009 -- <a href="http://www.activoinc.com/blog/2009/08/24/howto-setup-iptables-for-www-and-dbmysql-on-linux/" title="Howto setup iptables for www and db(mysql) on linux">Howto setup iptables for www and db(mysql) on linux</a> (0)</li><li>August 23, 2009 -- <a href="http://www.activoinc.com/blog/2009/08/23/centos-5-3-install-essentials/" title="CentOS 5.3 Install Essentials">CentOS 5.3 Install Essentials</a> (0)</li><li>August 3, 2009 -- <a href="http://www.activoinc.com/blog/2009/08/03/block-access-to-your-dedicated-server-automatically-if-more-than-3-failed-logins/" title="Block access to your dedicated server automatically if more than 3 failed logins">Block access to your dedicated server automatically if more than 3 failed logins</a> (0)</li><li>March 27, 2009 -- <a href="http://www.activoinc.com/blog/2009/03/27/recommended-visual-svn-server-now-with-subversion-16/" title="Recommended: Visual SVN Server, now with Subversion 1.6">Recommended: Visual SVN Server, now with Subversion 1.6</a> (1)</li><li>December 25, 2008 -- <a href="http://www.activoinc.com/blog/2008/12/25/pdnsd-decrease-dns-response-time-and-save-bandwidth/" title="pdnsd &#8211; Decrease DNS response time and save bandwidth">pdnsd &#8211; Decrease DNS response time and save bandwidth</a> (0)</li><li>December 3, 2008 -- <a href="http://www.activoinc.com/blog/2008/12/03/securing-joomla-cms-based-sites/" title="Securing Joomla! CMS based sites">Securing Joomla! CMS based sites</a> (0)</li><li>November 30, 2008 -- <a href="http://www.activoinc.com/blog/2008/11/30/centos-for-linux-servers-a-cut-above/" title="CentOS for Linux Servers: a cut above">CentOS for Linux Servers: a cut above</a> (0)</li><li>August 19, 2008 -- <a href="http://www.activoinc.com/blog/2008/08/19/hack-attempt-sql-injection-tagreting-ms-sql-servers/" title="Hack attempt: SQL Injection Tagreting MS SQL Servers">Hack attempt: SQL Injection Tagreting MS SQL Servers</a> (0)</li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.activoinc.com/blog/2009/03/25/tightening-up-iptables-for-a-dedicated-db-server-mysql-and-centos/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>pdnsd &#8211; Decrease DNS response time and save bandwidth</title>
		<link>http://www.activoinc.com/blog/2008/12/25/pdnsd-decrease-dns-response-time-and-save-bandwidth/</link>
		<comments>http://www.activoinc.com/blog/2008/12/25/pdnsd-decrease-dns-response-time-and-save-bandwidth/#comments</comments>
		<pubDate>Fri, 26 Dec 2008 07:55:11 +0000</pubDate>
		<dc:creator>Ron Peled</dc:creator>
				<category><![CDATA[LAMP: Linux Apache MySQL PHP]]></category>
		<category><![CDATA[Performance Optimization]]></category>
		<category><![CDATA[Web Application Hosting]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[CentOS]]></category>
		<category><![CDATA[DNS caching]]></category>
		<category><![CDATA[DNS proxy]]></category>
		<category><![CDATA[pdnsd]]></category>

		<guid isPermaLink="false">http://www.activoinc.com/blog/?p=162</guid>
		<description><![CDATA[Sometimes, when you realize that you could have improved the system with so little effort, we blush. This is what happened to me when I realized that most of the neworking delays could have been avoided with this tiny but wity utility. I knew that having a local caching DNS or the like is the [...]]]></description>
			<content:encoded><![CDATA[<p>Sometimes, when you realize that you could have improved the system with so little effort, we blush. This is what happened to me when I realized that most of the neworking delays could have been avoided with this tiny but wity utility. I knew that having a local caching DNS or the like is the answer but I did not want to use a full fletched DNS server. I found <a title="pdnsd - a small proxy DNS server with permanent caching" href="http://www.phys.uu.nl/~rombouts/pdnsd/index.html"><strong>pdnsd</strong></a> &#8211; a small proxy DNS server with permanent caching. Perfect!</p>
<p><img class="alignnone size-full wp-image-166" title="bandwidth-savings-with-pdnsd" src="http://www.activoinc.com/blog/wp-content/uploads/2008/12/bandwidth-savings-with-pdnsd.jpg" alt="" width="470" height="314" /></p>
<p>In a nutshel, <strong>pdnsd</strong> is a small utility that caches DNS translations locally on the HD, hence next time the server queries the address the response time is likely to be minimal. Usually, the server has to query your ISP&#8217;s DNS or whatever DNS server you specified in the /etc/resolve.conf file. In a high performing web servers you are constantly competing with other packets on the network or your network resources. This is a great advantage. By installing pdnsd you achieve the following:</p>
<ul>
<li>Decrease the average DNS response time sharply!</li>
<li>Increase your server performance, especially if this server needs to communicate externally a lot like an eCommerce server which constantly needs to communicate with shipping and credit card servers.</li>
<li>Save on bandwidth.</li>
</ul>
<p>Here is how you go about setting up <strong>pdnsd</strong> on a CentOS server:</p>
<p><strong>1. Download the latest stable rpm</strong>:<br />
go to <a href="http://www.phys.uu.nl/~rombouts/pdnsd/dl.html">pdnsd download page</a> and look for your relevant rpm. For CentOS 5.2 64bit I got the latest version as of yesterday:</p>
<pre>wget http://www.phys.uu.nl/~rombouts/pdnsd/releases/pdnsd-1.2.7-par_sl5.x86_64.rpm</pre>
<p><strong> 2. Install the rpm:</strong></p>
<pre>rpm -i pdnsd-1.2.7-par_sl5.x86_64.rpm</pre>
<p><strong>3. Configure pdnsd to use your current DNS servers:</strong></p>
<pre>vi /etc/pdnsd.conf</pre>
<p>Paste the following, of-course you should use your DNS servers instead:</p>
<pre>server {
label="opendns";
ip = 208.67.222.222,208.67.220.220;
}</pre>
<p><strong>4. Start pdnsd and test that it is actually working</strong></p>
<pre>service pdnsd start</pre>
<pre> dig @127.0.0.1 yahoo.com</pre>
<p>If you get the IP, it is working. Notice the response time, if you try again you will see a sharp decrease in response time. My servers&#8217; second response time is almost always between 1-0 ms.</p>
<p><strong>5. Set pdnsd to start automatically on boot</strong></p>
<pre>vi /etc/default/pdnsd</pre>
<p>Enter the following and save:</p>
<pre>START_DAEMON=yes</pre>
<p>Also make sure the daemon is set to auto start on boot. I use &#8216;ntsysv&#8217;, you can use chkconfig or whatever you are used to.</p>
<p><strong>6. Set your server to use the pdnsd instead of your DNS servers</strong></p>
<pre>vi /etc/resolv.conf</pre>
<p>Make sure that the first nameserver line is &#8216;127.0.0.1&#8242;. Should look like this:</p>
<pre>nameserver 127.0.0.1</pre>
<p><strong>7. Restart your network service:</strong></p>
<pre>service network restart</pre>
<p>How do you know that it is working? try to use any script that needs to go outside to the network, like &#8216;yum update&#8217;. In most cases, you will notice that the second time is much faster. Enjoy!</p>
<h3  class="related_post_title">Related Posts</h3><ul class="related_post"><li>September 3, 2009 -- <a href="http://www.activoinc.com/blog/2009/09/03/quick-way-to-update-fail2ban-jail-conf-file/" title="Quick Way to Update Fail2ban jail.conf file">Quick Way to Update Fail2ban jail.conf file</a> (0)</li><li>August 31, 2009 -- <a href="http://www.activoinc.com/blog/2009/08/31/performance-optimized-httpd-conf-for-magento-ecommerce/" title="Performance Optimized httpd.conf for Magento eCommerce">Performance Optimized httpd.conf for Magento eCommerce</a> (0)</li><li>August 24, 2009 -- <a href="http://www.activoinc.com/blog/2009/08/24/howto-setup-iptables-for-www-and-dbmysql-on-linux/" title="Howto setup iptables for www and db(mysql) on linux">Howto setup iptables for www and db(mysql) on linux</a> (0)</li><li>August 23, 2009 -- <a href="http://www.activoinc.com/blog/2009/08/23/centos-5-3-install-essentials/" title="CentOS 5.3 Install Essentials">CentOS 5.3 Install Essentials</a> (0)</li><li>August 3, 2009 -- <a href="http://www.activoinc.com/blog/2009/08/03/block-access-to-your-dedicated-server-automatically-if-more-than-3-failed-logins/" title="Block access to your dedicated server automatically if more than 3 failed logins">Block access to your dedicated server automatically if more than 3 failed logins</a> (0)</li><li>July 16, 2009 -- <a href="http://www.activoinc.com/blog/2009/07/16/speed-optimized-websites-rank-higher-with-search-engines/" title="Speed Optimized Websites Rank Higher with Search Engines">Speed Optimized Websites Rank Higher with Search Engines</a> (0)</li><li>March 27, 2009 -- <a href="http://www.activoinc.com/blog/2009/03/27/recommended-visual-svn-server-now-with-subversion-16/" title="Recommended: Visual SVN Server, now with Subversion 1.6">Recommended: Visual SVN Server, now with Subversion 1.6</a> (1)</li><li>March 25, 2009 -- <a href="http://www.activoinc.com/blog/2009/03/25/tightening-up-iptables-for-a-dedicated-db-server-mysql-and-centos/" title="Tightening up iptables for a dedicated DB server (MySQL and CentOS)">Tightening up iptables for a dedicated DB server (MySQL and CentOS)</a> (1)</li><li>November 30, 2008 -- <a href="http://www.activoinc.com/blog/2008/11/30/centos-for-linux-servers-a-cut-above/" title="CentOS for Linux Servers: a cut above">CentOS for Linux Servers: a cut above</a> (0)</li><li>November 5, 2008 -- <a href="http://www.activoinc.com/blog/2008/11/05/understanding-mysql-query-caching/" title="Understanding MySQL Query Caching Process">Understanding MySQL Query Caching Process</a> (1)</li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.activoinc.com/blog/2008/12/25/pdnsd-decrease-dns-response-time-and-save-bandwidth/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CentOS for Linux Servers: a cut above</title>
		<link>http://www.activoinc.com/blog/2008/11/30/centos-for-linux-servers-a-cut-above/</link>
		<comments>http://www.activoinc.com/blog/2008/11/30/centos-for-linux-servers-a-cut-above/#comments</comments>
		<pubDate>Mon, 01 Dec 2008 06:44:06 +0000</pubDate>
		<dc:creator>Ron Peled</dc:creator>
				<category><![CDATA[LAMP: Linux Apache MySQL PHP]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[CentOS]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Linux server]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[Xen]]></category>

		<guid isPermaLink="false">http://www.activoinc.com/blog/?p=143</guid>
		<description><![CDATA[It has been almost a year that we are using CentOS for all of our new servers instead of Ubuntu Server, and it is a great success! This article describes the few reasons behind our transition from Ubuntu to CentOS. Of-course, there is always something here and there but 99% of the cases are resolved [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignright size-full wp-image-144" title="centos-baby-penguin" src="http://www.activoinc.com/blog/wp-content/uploads/2008/11/centos-baby-penguin.jpg" alt="" width="308" height="320" />It has been almost a year that we are using <a title="CentOS" href="http://www.centos.org/">CentOS</a> for all of our new servers instead of Ubuntu Server, and it is a great success! <a href="http://www.activoinc.com/blog/2008/04/13/about-linux-distros-ubuntu-and-centos/">This article describes the few reasons behind our transition from Ubuntu to CentOS</a>. Of-course, there is always something here and there but 99% of the cases are resolved easily and actually have nothing to do with CentOS. If time will permit we will transition all of our existing Linux boxes to CentOS 5.2. Oh, and yes, if you are looking for a solid Linux server distro &#8211; it is CentOS hands down.</p>
<p>We noticed that more and more hosting companies offer CentOS as their default distro and recently <a href="http://www.top500.org/stats/list/32/os">CentOS can claim at least 1% of all world supercomputers</a>. The support that is offered for CentOS is abundant at this point and clearly targets the more advanced system administrators out there. All in all it seems like CentOS is maturing as a great distro for Linux server purposes.</p>
<p>If you are curious, we are using CentOS 5.2 64 bit by default with no software installed (at all). If needed we use the LAMP stack and the XEN virtualization software, all from the CentOS default repositories.</p>
<p>So, what is your experience with CentOS out there?</p>
<h3  class="related_post_title">Related Posts</h3><ul class="related_post"><li>April 13, 2008 -- <a href="http://www.activoinc.com/blog/2008/04/13/about-linux-distros-ubuntu-and-centos/" title="About Linux Distros: Ubuntu and CentOS">About Linux Distros: Ubuntu and CentOS</a> (9)</li><li>August 23, 2009 -- <a href="http://www.activoinc.com/blog/2009/08/23/centos-5-3-install-essentials/" title="CentOS 5.3 Install Essentials">CentOS 5.3 Install Essentials</a> (0)</li><li>August 3, 2009 -- <a href="http://www.activoinc.com/blog/2009/08/03/block-access-to-your-dedicated-server-automatically-if-more-than-3-failed-logins/" title="Block access to your dedicated server automatically if more than 3 failed logins">Block access to your dedicated server automatically if more than 3 failed logins</a> (0)</li><li>March 27, 2009 -- <a href="http://www.activoinc.com/blog/2009/03/27/recommended-visual-svn-server-now-with-subversion-16/" title="Recommended: Visual SVN Server, now with Subversion 1.6">Recommended: Visual SVN Server, now with Subversion 1.6</a> (1)</li><li>September 3, 2009 -- <a href="http://www.activoinc.com/blog/2009/09/03/quick-way-to-update-fail2ban-jail-conf-file/" title="Quick Way to Update Fail2ban jail.conf file">Quick Way to Update Fail2ban jail.conf file</a> (0)</li><li>August 31, 2009 -- <a href="http://www.activoinc.com/blog/2009/08/31/performance-optimized-httpd-conf-for-magento-ecommerce/" title="Performance Optimized httpd.conf for Magento eCommerce">Performance Optimized httpd.conf for Magento eCommerce</a> (0)</li><li>August 24, 2009 -- <a href="http://www.activoinc.com/blog/2009/08/24/howto-setup-iptables-for-www-and-dbmysql-on-linux/" title="Howto setup iptables for www and db(mysql) on linux">Howto setup iptables for www and db(mysql) on linux</a> (0)</li><li>March 25, 2009 -- <a href="http://www.activoinc.com/blog/2009/03/25/tightening-up-iptables-for-a-dedicated-db-server-mysql-and-centos/" title="Tightening up iptables for a dedicated DB server (MySQL and CentOS)">Tightening up iptables for a dedicated DB server (MySQL and CentOS)</a> (1)</li><li>December 25, 2008 -- <a href="http://www.activoinc.com/blog/2008/12/25/pdnsd-decrease-dns-response-time-and-save-bandwidth/" title="pdnsd &#8211; Decrease DNS response time and save bandwidth">pdnsd &#8211; Decrease DNS response time and save bandwidth</a> (0)</li><li>September 5, 2008 -- <a href="http://www.activoinc.com/blog/2008/09/05/joomla-vs-ektron/" title="Joomla vs Ektron">Joomla vs Ektron</a> (2)</li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.activoinc.com/blog/2008/11/30/centos-for-linux-servers-a-cut-above/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>About Linux Distros: Ubuntu and CentOS</title>
		<link>http://www.activoinc.com/blog/2008/04/13/about-linux-distros-ubuntu-and-centos/</link>
		<comments>http://www.activoinc.com/blog/2008/04/13/about-linux-distros-ubuntu-and-centos/#comments</comments>
		<pubDate>Sun, 13 Apr 2008 15:47:27 +0000</pubDate>
		<dc:creator>Ron Peled</dc:creator>
				<category><![CDATA[LAMP: Linux Apache MySQL PHP]]></category>
		<category><![CDATA[Web Application Hosting]]></category>
		<category><![CDATA[apt-get]]></category>
		<category><![CDATA[aptitude]]></category>
		<category><![CDATA[CentOS]]></category>
		<category><![CDATA[Fedora]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[RedHat]]></category>
		<category><![CDATA[rpm]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[yum]]></category>

		<guid isPermaLink="false">http://www.activoinc.com/blog/?p=14</guid>
		<description><![CDATA[A few weeks ago, we setup a new production LAMP server to host a few of our client&#8217;s sites, medium size eCommerce websites. I wanted to share our experience as we came across the three big (and free) Linux distributions while we evaluated and setup the machines. We have previously setup Ubuntu Server 7.04 for [...]]]></description>
			<content:encoded><![CDATA[<p>A few weeks ago, we setup a new production LAMP server to host a few of our client&#8217;s sites, medium size eCommerce websites. I wanted to share our experience as we came across the three big (and free) Linux distributions while we evaluated and setup the machines. We have previously setup Ubuntu Server 7.04 for our development and staging environment while researching the related family of North American Linux distributions: RedHat, Fedora and CentOS.</p>
<p><a href="http://www.activoinc.com/blog/wp-content/uploads/2008/04/centos_ubuntu_install_scree.jpg"><img class="aligncenter size-full wp-image-15" title="CentOS vs Ubuntu Install Screenshot" src="http://www.activoinc.com/blog/wp-content/uploads/2008/04/centos_ubuntu_install_scree.jpg" alt="CentOS vs Ubuntu Install Screenshot" width="470" height="160" /></a></p>
<p>I&#8217;ll start with the positive: in the last few years Linux distributions in general have become main stream OS and most of the installation process is user friendly. Almost each distro offers the &#8217;server&#8217; edition of the OS which comes mostly configured with what a production LAMP server needs to have installed already. The installation packages are clearly labeled for i386 or x64 bit, and most even offer a net install which in CentOS case only requires downloading about 7MB of ISO file and the rest is done on the fly.</p>
<p>Now, let&#8217;s delve into the differences that affected our decisions, labeled according to key points and in order of importance to us:</p>
<h2>Setup Efficiency: ROI and Learning Curve</h2>
<p>I had the experience for setting up both Ubuntu server and CentOS server editions on two different machines. Both machines had similar configurations of two 500GB harddrives mirrored in hardware Raid1 with a 3ware card, and Intel Pro dual NIC. The rest of the hardware setup is pretty much the standard Intel based processors. Both Ubuntu and CentOS had no problem in recognizing all the hardware on the machines and the setup process went pretty smoothly. The differences began showing after the initial setup: while CentOS shows an additional very helpful setup (NIC assignments, firewall, and services setup) Ubuntu had no such thing and showed the login prompt right after boot. What I found surprising is that Ubuntu required additional steps in order to download and install SSH using aptitude &#8211; if one chooses a server edition, shouldn&#8217;t it be setup for you by default?</p>
<p>Although aptitude is a great package management software, I have found that the server version of Ubuntu is just not mature enough or simply chooses the minimalistic approach which doesn&#8217;t fit my understanding of a server distro. Many of the tasks that were performed by CentOS by default or had options for that during the install were missing in Ubuntu. At the end of the day, setting up Ubuntu took days while CentOS took hours. Did I say ROI? CentOS is the clear winner.</p>
<h2>Package Management Systems</h2>
<p>Ubuntu prides itself on <strong>apt-get</strong> and <strong>aptitude </strong>which builds itself on top of the debian package management system while CentOS, Fedora and RedHat, use the <strong>rpm</strong> and <strong>yum</strong> package management systems. After using all systems I can clearly say that I favor the yum and rpm package management systems.</p>
<p>First, with apt-get/apt-cache/aptitude I had to constantly refer back to the documentation on Ubuntu&#8217;s site and I still cannot remember which one do I use for searching, installing, upgrading, describing, or removing packages &#8211; do we really need the separation? With both yum and rpm simply provide a separate option and you are good to go, all the information is flowing into the terminal and it took me only one glance of &#8216;man yum&#8217; to understand what and where.</p>
<p>Second, in the particular case of apache, vhosts, and extensinos, aptitude allows flexibility at the price of re-arranging the apache.conf and vhosts.conf into a collection of files and folders. Yum does a similar thing as well, however I still found yum&#8217;s method to keep the original httpd.conf mostly intact which allowed my familiarity with the basic apache configuration skill to take over and finalize install in no time. In my opinion, the deviation from the standard has no benefit whatsoever. The price of flexibility comes over familiarity but yet yum had the upper hand and ease of use.</p>
<p>Third, setting up a package that requires dependencies is equally good in both systems: they both do a very good job of finding the dependencies, looking their download sources, installing and setting it all up. However, I did find that <strong>yum</strong> had the best reporting system and after it gathered all the information it showed a useful status report while asking permission to proceed &#8211; this is valuable for sys admins and it does save time. Once more, <strong>yum</strong> feels like a more mature package management system.</p>
<h2>Production OS? Stability vs Cutting Edge</h2>
<p>Here is where I wanted to introduce a bit of the feeling we all shared after setting it up, plus the feeling of some colleagues of mine who I consider to be Linux Admin Gurus. At the end of the day, when all is setup and configured, the feeling from the CentOS system was much more secure and I knew exactly what is installed and what is not. Conversely, Ubuntu server did not give me that worm fuzzy feeling that &#8216;all is good&#8217; and if I needed to make a change, I would have to refer to documentation first before I touch the server.</p>
<p>When I ask some Linux Guru colleages who manage production linux clusters on a regular basis, they all point to CentOS or RedHat due to stability and performance record. In other words, you won&#8217;t get the latest cutting edge packages like Ubuntu or Fedora &#8211; but it is guaranteed to be much less flawed.</p>
<h2>Conclusion</h2>
<p>The bottom line is that distro preference is a personal decision. Personal to the individual who administers the systems and personal to the organization. We&#8217;ve chosen CentOS over Ubuntu, Fedora, and RedHat. The only option I see that might change is adopting RedHat due to the technical support that is offered for a fee. Hands down, CentOS provided the fastest configuration time, lowest learning curve, better ROI, superior package management system, and a good fuzzy feeling of stability. Thanks to CentOS, we can get back to our main passion: Web Development&#8230;</p>
<h3  class="related_post_title">Related Posts</h3><ul class="related_post"><li>November 30, 2008 -- <a href="http://www.activoinc.com/blog/2008/11/30/centos-for-linux-servers-a-cut-above/" title="CentOS for Linux Servers: a cut above">CentOS for Linux Servers: a cut above</a> (0)</li><li>August 3, 2009 -- <a href="http://www.activoinc.com/blog/2009/08/03/block-access-to-your-dedicated-server-automatically-if-more-than-3-failed-logins/" title="Block access to your dedicated server automatically if more than 3 failed logins">Block access to your dedicated server automatically if more than 3 failed logins</a> (0)</li><li>March 27, 2009 -- <a href="http://www.activoinc.com/blog/2009/03/27/recommended-visual-svn-server-now-with-subversion-16/" title="Recommended: Visual SVN Server, now with Subversion 1.6">Recommended: Visual SVN Server, now with Subversion 1.6</a> (1)</li><li>September 3, 2009 -- <a href="http://www.activoinc.com/blog/2009/09/03/quick-way-to-update-fail2ban-jail-conf-file/" title="Quick Way to Update Fail2ban jail.conf file">Quick Way to Update Fail2ban jail.conf file</a> (0)</li><li>August 31, 2009 -- <a href="http://www.activoinc.com/blog/2009/08/31/performance-optimized-httpd-conf-for-magento-ecommerce/" title="Performance Optimized httpd.conf for Magento eCommerce">Performance Optimized httpd.conf for Magento eCommerce</a> (0)</li><li>August 24, 2009 -- <a href="http://www.activoinc.com/blog/2009/08/24/howto-setup-iptables-for-www-and-dbmysql-on-linux/" title="Howto setup iptables for www and db(mysql) on linux">Howto setup iptables for www and db(mysql) on linux</a> (0)</li><li>August 23, 2009 -- <a href="http://www.activoinc.com/blog/2009/08/23/centos-5-3-install-essentials/" title="CentOS 5.3 Install Essentials">CentOS 5.3 Install Essentials</a> (0)</li><li>March 25, 2009 -- <a href="http://www.activoinc.com/blog/2009/03/25/tightening-up-iptables-for-a-dedicated-db-server-mysql-and-centos/" title="Tightening up iptables for a dedicated DB server (MySQL and CentOS)">Tightening up iptables for a dedicated DB server (MySQL and CentOS)</a> (1)</li><li>December 25, 2008 -- <a href="http://www.activoinc.com/blog/2008/12/25/pdnsd-decrease-dns-response-time-and-save-bandwidth/" title="pdnsd &#8211; Decrease DNS response time and save bandwidth">pdnsd &#8211; Decrease DNS response time and save bandwidth</a> (0)</li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.activoinc.com/blog/2008/04/13/about-linux-distros-ubuntu-and-centos/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
	</channel>
</rss>
