<?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>Michael Kolb Fulda&#187; Web Engineering</title>
	<atom:link href="http://www.michael-kolb.co.uk/tag/linux/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.michael-kolb.co.uk</link>
	<description>Web Engineering</description>
	<lastBuildDate>Mon, 01 Mar 2010 05:58:27 +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>How to enable USB support in VirtualBox on a linux host</title>
		<link>http://www.michael-kolb.co.uk/linuxbasics/how-to-enable-usb-support-in-virtualbox-on-a-linux-host/</link>
		<comments>http://www.michael-kolb.co.uk/linuxbasics/how-to-enable-usb-support-in-virtualbox-on-a-linux-host/#comments</comments>
		<pubDate>Sun, 02 Aug 2009 10:27:46 +0000</pubDate>
		<dc:creator>mk_michael</dc:creator>
				<category><![CDATA[Linux Basics]]></category>
		<category><![CDATA[Linux Daemons]]></category>
		<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://www.michael-kolb.co.uk/?p=1146</guid>
		<description><![CDATA[There is a common problem to get USB support running in VirtualBox on a debian or ubuntu linux host system. If there is a Windows XP (maybe also other system) installed as the guest system, the USB devices will be shown in the VirtualBox menue &#8211; but they are disabled. The devices are recognized but [...]]]></description>
			<content:encoded><![CDATA[<p>There is a common problem to get USB support running in VirtualBox on a debian or ubuntu linux host system. If there is a Windows XP (maybe also other system) installed as the guest system, the USB devices will be shown in the VirtualBox menue &#8211; but they are disabled. The devices are recognized but the reason for the disabled function is the unsufficient permission.</p>
<p>In this post, I will explain how to solve this problem by a few tricks.</p>
<p><span id="more-1146"></span></p>
<p>You need to open the file mountkernfs.sh<br />
<code><br />
# vi /etc/init.d/mountkernfs.sh<br />
</code></p>
<p>Inside this file, look for this line:<br />
<code><br />
domount proc "" /proc proc -onodev,noexec,nosuid<br />
</code></p>
<p>Please insert directly below the line above this following statement. You need to replace xxx with the groupID of the vboxuser. You can find this ID in your /etc/groups file<br />
<code><br />
domount usbfs usbdevfs /proc/bus/usb usbfs -onodev,noexec,nosuid,devgid=xxx,devmode=664<br />
</code></p>
<p>Furthermore, open your fstab file:<br />
<code><br />
# vi /etc/fstab<br />
</code></p>
<p>and add this line as the very first statement. Replace xxx like above.<br />
<code><br />
none /proc/bus/usb usbfs auto,busgid=122,busmode=0775,devgid=xxx,devmode=0664 0 0<br />
</code></p>
<p>That&#8217;s it. Have a lot of fun. Please don&#8217;t hestitate to add any comments to this post.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.michael-kolb.co.uk/linuxbasics/how-to-enable-usb-support-in-virtualbox-on-a-linux-host/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Mounting an ISO image with linux</title>
		<link>http://www.michael-kolb.co.uk/linuxbasics/mounting-an-iso-image-with-linux/</link>
		<comments>http://www.michael-kolb.co.uk/linuxbasics/mounting-an-iso-image-with-linux/#comments</comments>
		<pubDate>Sat, 25 Jul 2009 11:53:19 +0000</pubDate>
		<dc:creator>mk_michael</dc:creator>
				<category><![CDATA[Linux Basics]]></category>
		<category><![CDATA[basics]]></category>
		<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://www.michael-kolb.co.uk/?p=1140</guid>
		<description><![CDATA[By using linux, you are able to mount an ISO image by the loop network device, which is quite easy. You can do this only as user root. Follow the steps below:
Change to user root:

# su

Mounting the ISO image to a directory or your choice, for example /mnt

# mount -o loop disk1.iso /mnt


Don&#8217;t forget to [...]]]></description>
			<content:encoded><![CDATA[<p>By using linux, you are able to mount an ISO image by the loop network device, which is quite easy. You can do this only as user root. Follow the steps below:</p>
<p>Change to user root:<br />
<code><br />
# su<br />
</code></p>
<p>Mounting the ISO image to a directory or your choice, for example /mnt<br />
<code><br />
# mount -o loop disk1.iso /mnt<br />
</code></p>
<p><span id="more-1140"></span></p>
<p>Don&#8217;t forget to umount the ISO image after using:<br />
<code><br />
# umount /mnt<br />
</code></p>
<p><strong>More about loop device </strong><br />
A loop device is a virtual network device which makes a file accessible as a block device. Loop devices are typically used for CD ISO images. Mounting a file containing a whole filesystem by a loop mount makes the files within that filesystem accessible. The content of the ISO image appears in the mount point directory using above commands.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.michael-kolb.co.uk/linuxbasics/mounting-an-iso-image-with-linux/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to uninstall VMWare from a Linux System</title>
		<link>http://www.michael-kolb.co.uk/linuxbasics/how-to-uninstall-vmware-from-a-linux-system/</link>
		<comments>http://www.michael-kolb.co.uk/linuxbasics/how-to-uninstall-vmware-from-a-linux-system/#comments</comments>
		<pubDate>Sat, 25 Jul 2009 11:03:10 +0000</pubDate>
		<dc:creator>mk_michael</dc:creator>
				<category><![CDATA[Linux Basics]]></category>
		<category><![CDATA[basics]]></category>
		<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://www.michael-kolb.co.uk/?p=1133</guid>
		<description><![CDATA[To uninstall the VMWare Software from a Linux System is quite easy. VMWware comes with a pearl script for this. Just open a console and change to user root.

localhost:/# su
localhost:/# vmware-uninstall.pl


Or directly by the sudo command:

localhost:/# sudo vmware-uninstall.pl

Don&#8217;t forget to delete your images from disk if you want to. Typically the images will be stored [...]]]></description>
			<content:encoded><![CDATA[<p>To uninstall the VMWare Software from a Linux System is quite easy. VMWware comes with a pearl script for this. Just open a console and change to user root.</p>
<p><code><br />
localhost:/# su<br />
localhost:/# vmware-uninstall.pl<br />
</code></p>
<p><span id="more-1133"></span></p>
<p>Or directly by the sudo command:<br />
<code><br />
localhost:/# sudo vmware-uninstall.pl<br />
</code></p>
<p>Don&#8217;t forget to delete your images from disk if you want to. Typically the images will be stored in /var/lib</p>
]]></content:encoded>
			<wfw:commentRss>http://www.michael-kolb.co.uk/linuxbasics/how-to-uninstall-vmware-from-a-linux-system/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Make your linux prompt more colorful</title>
		<link>http://www.michael-kolb.co.uk/linuxbasics/make-your-linux-prompt-more-colorful/</link>
		<comments>http://www.michael-kolb.co.uk/linuxbasics/make-your-linux-prompt-more-colorful/#comments</comments>
		<pubDate>Sun, 08 Mar 2009 12:18:44 +0000</pubDate>
		<dc:creator>mk_michael</dc:creator>
				<category><![CDATA[Linux Basics]]></category>
		<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://www.michael-kolb.co.uk/?p=886</guid>
		<description><![CDATA[Changing the color of your linux prompt is a quite easy thing. Different prompt colors may be useful to distinguish different machines more easy, or just for fun.

export PS1='\e[0;32m\u\e[0;32m@\h:\e[0;0m\w\e[0;0m$\e[0m '

Just put the lines above in your /etc/profile and in the ~/.bashrc


The color codecs are:

GRAY="\[\033[1;30m\]"
LIGHT_GRAY="\[\033[0;37m\]"
CYAN="\[\033[0;36m\]"
LIGHT_CYAN="\[\033[1;36m\]"
NO_COLOUR="\[\033[0m\]"
BLUE="\[\033[0;34m\]"
LIGHT_BLUE="\[\033[1;34m\]"
RED="\[\033[0;31m\]"
LIGHT_RED="\[\033[1;31m\]"
GREEN="\[\033[0;32m\]"
LIGHT_GREEN="\[\033[1;32m\]"
PURPLE="\[\033[0;35m\]"
LIGHT_PURPLE="\[\033[1;35m\]"
BROWN="\[\033[0;33m\]"
YELLOW="\[\033[1;33m\]"
BLACK="\[\033[0;30m\]"
WHITE="\[\033[1;37m\]"

]]></description>
			<content:encoded><![CDATA[<p>Changing the color of your linux prompt is a quite easy thing. Different prompt colors may be useful to distinguish different machines more easy, or just for fun.</p>
<p><code><br />
export PS1='\e[0;32m\u\e[0;32m@\h:\e[0;0m\w\e[0;0m$\e[0m '<br />
</code></p>
<p>Just put the lines above in your /etc/profile and in the ~/.bashrc<br />
<img src="http://www.michael-kolb.co.uk/wp-content/uploads/2009/03/console.jpg" alt="console" title="console" width="350" height="137" class="alignnone size-full wp-image-1210" /></p>
<p><span id="more-886"></span></p>
<p>The color codecs are:<br />
<code><br />
GRAY="\[\033[1;30m\]"<br />
LIGHT_GRAY="\[\033[0;37m\]"<br />
CYAN="\[\033[0;36m\]"<br />
LIGHT_CYAN="\[\033[1;36m\]"<br />
NO_COLOUR="\[\033[0m\]"<br />
BLUE="\[\033[0;34m\]"<br />
LIGHT_BLUE="\[\033[1;34m\]"<br />
RED="\[\033[0;31m\]"<br />
LIGHT_RED="\[\033[1;31m\]"<br />
GREEN="\[\033[0;32m\]"<br />
LIGHT_GREEN="\[\033[1;32m\]"<br />
PURPLE="\[\033[0;35m\]"<br />
LIGHT_PURPLE="\[\033[1;35m\]"<br />
BROWN="\[\033[0;33m\]"<br />
YELLOW="\[\033[1;33m\]"<br />
BLACK="\[\033[0;30m\]"<br />
WHITE="\[\033[1;37m\]"<br />
</code></p>
]]></content:encoded>
			<wfw:commentRss>http://www.michael-kolb.co.uk/linuxbasics/make-your-linux-prompt-more-colorful/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Free webhosting control panels</title>
		<link>http://www.michael-kolb.co.uk/webhosting/free-webhosting-control-panels/</link>
		<comments>http://www.michael-kolb.co.uk/webhosting/free-webhosting-control-panels/#comments</comments>
		<pubDate>Thu, 01 Jan 2009 15:05:51 +0000</pubDate>
		<dc:creator>mk_michael</dc:creator>
				<category><![CDATA[Webhosting]]></category>
		<category><![CDATA[hosting]]></category>
		<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://www.michael-kolb.co.uk/?p=438</guid>
		<description><![CDATA[If you&#8217;re going to become a webhoster &#8211; the control panel will be one of most important decisions. If the control panel doesn&#8217;t work reasonable, you will loose your customers. 
So, it&#8217;s not easy to choose an apropriate system. In this article I will present a few free webhosting control panels, which runs on linux. [...]]]></description>
			<content:encoded><![CDATA[<p>If you&#8217;re going to become a webhoster &#8211; the control panel will be one of most important decisions. If the control panel doesn&#8217;t work reasonable, you will loose your customers. </p>
<p>So, it&#8217;s not easy to choose an apropriate system. In this article I will present a few free <a href="http://www.michael-kolb.co.uk/tag/hosting/">webhosting</a> control panels, which runs on <a href="http://www.michael-kolb.co.uk/tag/linux/">linux</a>. In a future post, I will also present some commercial panels. </p>
<ul>
<li><a href="http://www.michael-kolb.co.uk/webhosting/free-webhosting-control-panels/#asm">ASM Account Service Manager</a></li>
<li><a href="http://www.michael-kolb.co.uk/webhosting/free-webhosting-control-panels/#dtc">DTC Domain Technology Control</a></li>
<li><a href="http://www.michael-kolb.co.uk/webhosting/free-webhosting-control-panels/#webcp">Web-CP</a></li>
<li><a href="http://www.michael-kolb.co.uk/webhosting/free-webhosting-control-panels/#syscp">SysCP</a></li>
<li><a href="http://www.michael-kolb.co.uk/webhosting/free-webhosting-control-panels/#vhcs">VHCS</a></li>
</ul>
<p><span id="more-438"></span></p>
<hr />
<a name="asm"></p>
<h2>The ASM (Account Service Manager) project</h2>
<p>The ASM project is a nice control panel to serve some relatives or friends. The panel is well sorted and offers the most required features. Because of the styling and layout, I would disadvice that panel for commercial services.</p>
<p>The last activities are long time ago, so I suppose the developer has stopped the project. What a shame.</p>
<table class="table_screenshots">
<tr>
<td>
<img src="http://www.michael-kolb.co.uk/wp-content/uploads/2008/12/asm1.jpg" alt="Account Service Manager" title="asm1" width="200" height="200" class="alignnone size-full wp-image-898" />
</td>
<td>
<img src="http://www.michael-kolb.co.uk/wp-content/uploads/2008/12/asm2.jpg" alt="Account Service Manager" title="asm2" width="200" height="200" class="alignnone size-full wp-image-899" />
</td>
</tr>
<tr>
<td>
<img src="http://www.michael-kolb.co.uk/wp-content/uploads/2008/12/asm3.jpg" alt="Account Service Manager" title="asm3" width="200" height="200" class="alignnone size-full wp-image-900" />
</td>
<td>
<img src="http://www.michael-kolb.co.uk/wp-content/uploads/2008/12/asm4.jpg" alt="Account Service Manager" title="asm4" width="200" height="200" class="alignnone size-full wp-image-901" />
</td>
</tr>
</table>
<p></p>
<div class="border_box">
<strong>Important points:</strong></p>
<ul>
<li>Perl based system</li>
<li><a href="http://www.michael-kolb.co.uk/tag/security/">Secure</a> login &#8211; locks sessions by IP and hostname</li>
<li>Changing theme properties by config file</li>
<li>Modular architecture &#8211; easy customizing</li>
<li>API library</li>
<li>Easy configuration by a single file</li>
<li>Own configuration file for each customer to define limits</li>
<li>Language: english only</li>
</ul>
</div>
<p>&nbsp;<br />
Finding project here: <a href="http://www.acctmgr.com/" target="_blank">http://www.acctmgr.com/</a></p>
<p><a name="dtc"></p>
<h2>The DTC (Domain Technology Control) project</h2>
<p>This project seems to be more active than the above one. DTC is a nice looking control panel and supports the most required features and is sponsored by at least two companies. It&#8217;s advisable for commercial environments.<br />&nbsp;<br />
<em>DTC can delegate the task of creating subdomains, email, ssh, database, mailing lists, and FTP accounts to users for the domain names they own.</em><br />&nbsp;<br />
Furthermore you can find a comprehensive wiki and install instructions.</p>
<table class="table_screenshots">
<tr>
<td>
<img src="http://www.michael-kolb.co.uk/wp-content/uploads/2008/12/gpl1.jpg" alt="Domain Technology Control Panel" title="GPLHost1" width="200" height="168" class="alignnone size-full wp-image-912" />
</td>
<td>
<img src="http://www.michael-kolb.co.uk/wp-content/uploads/2008/12/gpl2.jpg" alt="Domain Technology Control Panel" title="GPLHost2" width="200" height="199" class="alignnone size-full wp-image-913" />
</td>
</tr>
<tr>
<td>
<img src="http://www.michael-kolb.co.uk/wp-content/uploads/2008/12/dtc3.jpg" alt="Domain Technology Webhosting Panel" title="DTC" width="200" height="134" class="alignnone size-full wp-image-981" /></td>
<td><img src="http://www.michael-kolb.co.uk/wp-content/uploads/2008/12/dtc4.jpg" alt="Domain Technology Webhosting Panel" title="dtc4" width="200" height="150" class="alignnone size-full wp-image-982" />
</td>
</tr>
</table>
<p></p>
<div class="border_box">
<strong>Important points:</strong></p>
<ul>
<li>Real-time bandwidth monitor for all server on each user basis</li>
<li>Antivirus and anti-spam with spam quarantine (&#8220;spam&#8221; imap folder) for mail</li>
<li>Automated backup NS and MX between 2 or more control panels (with domain list exchange over HTTPS)</li>
<li>Unix type independency (can run on FreeBSD, redhat, debian, OS-X&#8230;)</li>
<li>Store-front integration with registration form and payment gateway option</li>
<li>Mailing lists with many options</li>
<li>Package installer (like fantastico) to be able to install many <a href="http://www.michael-kolb.co.uk/tag/cms/">apps</a> (phpBB, osCommerce, Drupal, etc&#8230;)</li>
<li>Full internationalization: translated to many languages </li>
<li>Management of all types of hosting: Shared, Dedicated or VPS</li>
<li>Full billing system, including customer invoicing and renewals, and company book keeping with multiple company support</li>
<li>Integrated support ticket system</li>
<li>Chrooted cgi-bin with execution limitation to protect your server</li>
<li>No ugly daemon running: we use apache directly</li>
<li>Choice of running daemon: apache 1.3 or 2, mysql 3.23, 4 or even 5, from php 4.1.2 to php5, proftpd or pure-ftpd, qmail or postfix, etc&#8230;</li>
<li>Commercial support available</li>
</ul>
<p><strong>Supported distributions:</strong></p>
<ul>
<li>Debian</li>
<li>FreeBSD</li>
<li>RedHat</li>
<li>MAC OSX Server</li>
<li>Gentoo</li>
</ul>
</div>
<p>&nbsp;<br />
Finding project here: <a href="http://www.gplhost.com/software-dtc.html" target="_blank">http://www.gplhost.com/software-dtc.html</a></p>
<p><a name="webcp"></p>
<h2>The Web-CP (Webhosting Control Panel) project</h2>
<p>Web-CP is a nice control panel, but not really advisable for commercial use. The look and feel could be more modern &#8211; but it&#8217;s open source &#8211; so you can adapt it for your needs.<br />&nbsp;<br />
The panel has less features inside customer section. I am missing:</p>
<ul>
<li>FTP account management</li>
<li>htaccess menue</li>
<li>error page management</li>
<li><a href="http://www.michael-kolb.co.uk/tag/mysql/">mysql</a> management (create and backup databases) / You can create customer databases only in the serverCP section, but not as customer. phpMyAdmin is available</li>
<li>SSL management</li>
</ul>
<p>Maybe there are some more features in the future. The current version is more useful for own website projects on a vserver / dedicated server, than for commercial webhosting control panel. </p>
<table class="table_screenshots">
<tr>
<td>
<img src="http://www.michael-kolb.co.uk/wp-content/uploads/2008/12/webcp1.jpg" alt="Web Control Panel" title="webcp1" width="200" height="135" class="alignnone size-full wp-image-915" />
</td>
<td>
<img src="http://www.michael-kolb.co.uk/wp-content/uploads/2008/12/webcp2.jpg" alt="Web Control Panel" title="webcp2" width="200" height="135" class="alignnone size-full wp-image-916" />
</td>
</tr>
</table>
<p>&nbsp;</br></p>
<div class="border_box">
<strong>Important points:</strong></p>
<ul>
<li>Skinnable</li>
<li>Configurable Levels of Access</li>
<li>Task Automation</li>
<li>Advanced Reseller Management</li>
<li>Reseller, Domain, User Creation</li>
<li>Advanced User Management</li>
<li>E-Mail Settings; manage catch-all, aliase, autoresponder &#038; forward</li>
<li>Access Restrictions</li>
<li>Flexible Domain Settings: IP Address, Hostname, Domain Name, Hostname Aliases, Domain, wildcard and redirect options, HD, User, Data Transfer, Database, Subdomain, Pointer Quota, PHP, ASP, Perl, Python, SSL, SSI, etc.</li>
<li>Database Management</li>
<li>Mailing list Management</li>
</ul>
</div>
<p>&nbsp;<br />
Finding project here: <a href="http://www.web-cp.net/" target="_blank">http://www.web-cp.net/</a></p>
<p><a name="syscp"></p>
<h2>The SysCP project</h2>
<p>SysCP and VHCS are the most popular free webhosting control panels. With SysCP I have a lot experience &#8211; I&#8217;ve used this for a few hundred customers in several environments.<br />&nbsp;<br />
SysCP is very flexible an easy to adapt to your own needs. But be carefully, because of update compatibility. The system doesn&#8217;t have a template engine and is divided into typical three sections: Admin, Reseller, User.<br />
I can advise the system for commercial use, it&#8217;s supports all necessary features.</p>
<table class="table_screenshots">
<tr>
<td>
<img src="http://www.michael-kolb.co.uk/wp-content/uploads/2008/12/syscp1.jpg" alt="SysCP Control Panel" title="syscp1" width="200" height="128" class="alignnone size-full wp-image-918" />
</td>
<td>
<img src="http://www.michael-kolb.co.uk/wp-content/uploads/2008/12/syscp2.jpg" alt="SysCP Control Panel" title="syscp2" width="200" height="128" class="alignnone size-full wp-image-919" />
</td>
</tr>
<tr>
<td>
<img src="http://www.michael-kolb.co.uk/wp-content/uploads/2008/12/syscp3.jpg" alt="SysCP Control Panel" title="syscp3" width="200" height="128" class="alignnone size-full wp-image-921" />
</td>
<td>
<img src="http://www.michael-kolb.co.uk/wp-content/uploads/2008/12/syscp4.jpg" alt="SysCP Control Panel" title="syscp4" width="200" height="128" class="alignnone size-full wp-image-922" />
</td>
</tr>
</table>
<p>&nbsp;</p>
<div class="border_box">
<strong>Supported <a href="http://www.michael-kolb.co.uk/tag/daemon/">daemons</a>:</strong></p>
<ul>
<li>Apache, Apache 2.x, Lighttpd</li>
<li>Bind9, PowerDNS</li>
<li>Courier, Dovecot</li>
<li>Postfix, Exim4</li>
<li>ProFTP, PureFTP</li>
<li>Awstats, Webalizer</li>
</ul>
<p><strong>Important points:</strong></p>
<ul>
<li>Mail, FTP &#038; Webspace management</li>
<li>Traffic-, Billing- and Ticketsystem</li>
<li>(Software as a Service) one click application installer (APS-Standard)</li>
<li>15 languages supported</li>
<li>DKIM &#038; individual DNS/SPF Records</li>
<li>SSL for SysCP Panel and Customers</li>
<li>Full FastCGI/fcgid support</li>
<li>Full IPv4 and IPv6 support</li>
<li>Safemode and open_basedir chosable</li>
<li>Editable email-templates</li>
<li>Panel logging</li>
<li>Custom errorpages and path settings</li>
<li>
</ul>
<p><strong>Supported distributions:</strong></p>
<ul>
<li>Debian 4.0 (Etch)</li>
<li>Debian 3.1 (Sarge)</li>
<li>Ubuntu 8.04 (Hardy Heron)</li>
<li>Gentoo Linux</li>
<li>OpenSuSE Linux 10.0</li>
<li>FreeBSD</li>
</ul>
</div>
<p>&nbsp;<br />
Finding project here: <a href="http://www.syscp.org/home.html" target="_blank">http://www.syscp.org/home.html</a></p>
<p><a name="vhcs"></p>
<h2>The VHCS project</h2>
<p>VHCS is also an very common control panel and often used in commercial hosting environments. Without any doubt, I can advise this project.<br />&nbsp;<br />The panel contains the three typical sections for admins, resellers and users. In addition to SysCP, VHCS contains an own WebFTP and WebMail interface. The project is well documented.</p>
<table class="table_screenshots">
<tr>
<td>
<img src="http://www.michael-kolb.co.uk/wp-content/uploads/2008/12/vhcs1.jpg" alt="vhcs1" title="vhcs1" width="200" height="150" class="alignnone size-full wp-image-925" />
</td>
<td>
<img src="http://www.michael-kolb.co.uk/wp-content/uploads/2008/12/vhcs2.jpg" alt="vhcs2" title="vhcs2" width="200" height="142" class="alignnone size-full wp-image-926" />
</td>
</tr>
<tr>
<td>
<img src="http://www.michael-kolb.co.uk/wp-content/uploads/2008/12/vhcs3.jpg" alt="vhcs3" title="vhcs3" width="200" height="144" class="alignnone size-full wp-image-927" />
</td>
<td>
<img src="http://www.michael-kolb.co.uk/wp-content/uploads/2008/12/vhcs4.jpg" alt="vhcs4" title="vhcs4" width="200" height="216" class="alignnone size-full wp-image-928" />
</td>
</tr>
</table>
<div class="border_box">
<strong>Important points:</strong></p>
<ul>
<li>Hosting services plan management &#8211; create your own hosting plans</li>
<li>Аutomated creation of users and domains</li>
<li><a href="http://www.michael-kolb.co.uk/tag/design/">Graphical</a> evaluation of every reseller&#8217;s and user&#8217;s traffic</li>
<li>Virtual hosts management (Name-based, IP-based)</li>
<li>CO-Domains (Domain alias) and sub domains management</li>
<li>DNS (BIND 8 and 9) management</li>
<li>Managing FTP, EMail adresses, POP3 and IMAP accounts, autoresponders</li>
<li>CGI, PHP,SSI configuration and management</li>
<li>MySQL user databases, backup, restore</li>
<li>SSL-secured domains</li>
<li>password protection (.htaccess files)</li>
<li>Custom error files &#8211; 401, 403, 404 and 500</li>
<li>Multilanguage support</li>
<li>Skin-based graphic user interface &#8211; 4 pre-installed skins</li>
</ul>
<p><strong>Supported distributions:</strong></p>
<ul>
<li>SuSE Linux 7.x 8.x and 9.x</li>
<li>Red Hat Linux 7.x and 9.0</li>
<li>Debian Linux sid, woody and sarge</li>
<li>Fedora Core1, Core2 and Core 3</li>
</ul>
<p><strong>Used <a href="http://www.michael-kolb.co.uk/tag/daemon/">daemons</a>:</strong></p>
<ul>
<li>Apache</li>
<li>Postfix MTA</li>
<li>ProFTP</li>
<li>PHP 4.x, Perl</li>
<li>MySQL</li>
<li>Courier POP3, IMAP</li>
<li>OpenSSL or mod_ssl for SSL-Webs</li>
<li>BIND8 / BIND9 (DNS Server)</li>
</ul>
</div>
<p>&nbsp;<br />
Finding the project here: <a href="http://www.vhcs.net/new/" target="_blank">http://www.vhcs.net/new/</a><br />
</p>
<p>Please feel free to comment any further free control panels or forgotten features if you know.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.michael-kolb.co.uk/webhosting/free-webhosting-control-panels/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>ProFTPd authentification with MySQL</title>
		<link>http://www.michael-kolb.co.uk/webhosting/proftpd-authentification-with-mysql/</link>
		<comments>http://www.michael-kolb.co.uk/webhosting/proftpd-authentification-with-mysql/#comments</comments>
		<pubDate>Sat, 06 Dec 2008 07:06:11 +0000</pubDate>
		<dc:creator>mk_michael</dc:creator>
				<category><![CDATA[Linux Daemons]]></category>
		<category><![CDATA[Webhosting]]></category>
		<category><![CDATA[daemon]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[mysql]]></category>

		<guid isPermaLink="false">http://www.michael-kolb.co.uk/?p=69</guid>
		<description><![CDATA[It&#8217;s very helpful to use the mysql authentification for proftpd. Especially if you manage a quite number of users. So you&#8217;re able to use a central database which manages the accounts.



First thing you need is an appropriate mysql schema that belongs your needs. This is my example:

CREATE TABLE ftp_users (
  username varchar(60) binary default [...]]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s very helpful to use the <a href="http://www.michael-kolb.co.uk/tag/mysql">mysql</a> authentification for proftpd. Especially if you manage a quite number of users. So you&#8217;re able to use a central database which manages the accounts.</p>
<p><img class="size-medium wp-image-202 aligncenter"  src="http://www.michael-kolb.co.uk/wp-content/uploads/2008/12/proftpd.jpg" alt="proftpd with mysql" title="proftpd with mysql" width="301" height="241" class="alignnone size-medium wp-image-505" /></p>
<p><span id="more-69"></span></p>
<p>
First thing you need is an appropriate <a href="http://www.michael-kolb.co.uk/tag/mysql">mysql</a> schema that belongs your needs. This is my example:<br />
<br />
<code>CREATE TABLE ftp_users (<br />
  username varchar(60) binary default NULL,<br />
  uid int(11) default NULL,<br />
  gid int(11) default NULL,<br />
  password varchar(30) default NULL,<br />
  homedir varchar(250) default NULL,<br />
  count int(11) default NULL,<br />
  ui bigint(20) NOT NULL auto_increment,<br />
  shell varchar(60) default NULL,<br />
  last datetime default NULL,<br />
  allow char(1) default NULL,<br />
  PRIMARY KEY  (ui)<br />
) TYPE=ISAM PACK_KEYS=1;<br />
<br />
CREATE TABLE xfer_stat (<br />
  username tinytext,<br />
  filename text,<br />
  size bigint(20) default NULL,<br />
  host tinytext,<br />
  ip tinytext,<br />
  action tinytext,<br />
  durability tinytext,<br />
  local_time datetime default NULL,<br />
  success char(1) default NULL,<br />
  ui bigint(20) NOT NULL auto_increment,<br />
  PRIMARY KEY  (ui)<br />
) TYPE=MyISAM;<br />
</code></p>
<p>
Be sure to have installed all required <a href="http://www.michael-kolb.co.uk/tag/linux/">linux</a> packages:<br />
</p>
<p><code>apt-get -y install mysql-client-5.0<br />
apt-get -y install mysql-server-5.0<br />
apt-get -y install mysql-common<br />
apt-get -y install proftpd-mysql</code></p>
<p>Last thing to do is adapting the /etc/proftpd.conf for acessing <a href="http://www.michael-kolb.co.uk/tag/mysql">mysql</a> tables. You will find the lines at end of the configuration file. Please insert your passwords:</p>
<p><code><br />
DefaultRoot ~<br />
RequireValidShell off<br />
<br />
SQLAuthTypes            Plaintext Crypt<br />
SQLAuthenticate         users* groups*<br />
SQLConnectInfo          mysqluser@127.0.0.1 mysqluser mysqlpassword<br />
SQLUserInfo               ftp_users username password uid gid homedir shell<br />
SQLGroupInfo             ftp_groups groupname gid members<br />
SQLUserWhereClause      "login_enabled = 'Y'"<br />
<br />
SQLLogFile /var/log/ftp/proftpd.sql.log<br />
<br />
SQLLog PASS login<br />
SQLNamedQuery login UPDATE "last_login=now(), login_count=login_count+1 WHERE username='%u'" ftp_users<br />
<br />
SQLLog RETR download<br />
SQLNamedQuery download UPDATE "down_count=down_count+1, down_bytes=down_bytes+%b WHERE username='%u'" ftp_users<br />
<br />
SQLLog STOR upload<br />
SQLNamedQuery upload UPDATE "up_count=up_count+1, up_bytes=up_bytes+%b WHERE username='%u'" ftp_users<br />
</code></p>
<p>Helpful link:<br />
<a href="http://www.proftpd.de/HowTo-SQL.29.0.html" target="_blank">http://www.proftpd.de/HowTo-SQL.29.0.html</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.michael-kolb.co.uk/webhosting/proftpd-authentification-with-mysql/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Editing &#8220;message of the day&#8221; &#8211; motd</title>
		<link>http://www.michael-kolb.co.uk/linuxbasics/editing-message-of-the-day-motd/</link>
		<comments>http://www.michael-kolb.co.uk/linuxbasics/editing-message-of-the-day-motd/#comments</comments>
		<pubDate>Sun, 30 Nov 2008 12:26:02 +0000</pubDate>
		<dc:creator>mk_michael</dc:creator>
				<category><![CDATA[Linux Basics]]></category>
		<category><![CDATA[basics]]></category>
		<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://www.michael-kolb.co.uk/?p=65</guid>
		<description><![CDATA[The message of the day is a nice thing to show informations to a user, who is connecting via console. You can put funny ascii figures there, or important informations and how-to&#8217;s.
The message will be shown prompltly after authentification:


To get these basic messages, just put it into /etc/motd (and in /etc/motd.tail for Debian and Ubuntu). [...]]]></description>
			<content:encoded><![CDATA[<p>The message of the day is a nice thing to show informations to a user, who is connecting via console. You can put funny ascii figures there, or important informations and how-to&#8217;s.</p>
<p>The message will be shown prompltly after authentification:</p>
<p><img src="http://www.michael-kolb.co.uk/wp-content/uploads/2008/11/motd-499x3081.jpg" alt="motd-499x308" title="motd-499x308" width="400" height="247" class="alignnone size-full wp-image-1217" /></p>
<p><span id="more-65"></span></p>
<p>To get these <a href="http://www.michael-kolb.co.uk/tag/basics">basic</a> messages, just put it into /etc/motd (and in /etc/motd.tail for Debian and Ubuntu). For example the /etc/motd:</p>
<p><code>_______________________________________________________<br />
WELCOME TO LOCALHOST<br />
<br />
[localhost.org] FILE SERVER<br />
To start or stop fileserver:<br />
/etc/init.d/nfsd start/stop<br />
</code></p>
<p>Finding ascii art at:<br />
<a href="http://www.ascii-art.de/ascii/index2.shtml" target="_blank">http://www.ascii-art.de/ascii/index2.shtml</a><br />
<a href="http://www.ascii-art.de/ascii/def/demon.txt" target="_blank">http://www.ascii-art.de/ascii/def/demon.txt</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.michael-kolb.co.uk/linuxbasics/editing-message-of-the-day-motd/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Changing ssh port to improve security</title>
		<link>http://www.michael-kolb.co.uk/linuxdaemons/changing-ssh-port/</link>
		<comments>http://www.michael-kolb.co.uk/linuxdaemons/changing-ssh-port/#comments</comments>
		<pubDate>Fri, 28 Nov 2008 13:55:44 +0000</pubDate>
		<dc:creator>mk_michael</dc:creator>
				<category><![CDATA[Linux Daemons]]></category>
		<category><![CDATA[daemon]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[security]]></category>

		<guid isPermaLink="false">http://www.michael-kolb.co.uk/?p=327</guid>
		<description><![CDATA[For security reasons, it&#8217;s advisable to change the ssh standard port 22 into something else. So you will get less attacks to sshd. This improves the security for your server. Furthermore, you should block root from connecting via ssh.
Open your /etc/ssh/sshd_config
Changing the port:

# This is the sshd server system-wide configuration file.  See sshd(8)
# for [...]]]></description>
			<content:encoded><![CDATA[<p>For <a href="http://www.michael-kolb.co.uk/tag/security">security</a> reasons, it&#8217;s advisable to change the ssh standard port 22 into something else. So you will get less attacks to sshd. This improves the security for your server. Furthermore, you should block root from connecting via ssh.</p>
<p>Open your /etc/ssh/sshd_config<br />
Changing the port:<br />
<code><br />
# This is the sshd server system-wide configuration file.  See sshd(8)<br />
# for more information.</code></p>
<p># change the port configuration &#8211; for example to 2233<br />
Port 2233<br />
Protocol 2</p>
<p><span id="more-327"></span></p>
<p>And blocking user root<br />
<code><br />
#<br />
PermitRootLogin without-password<br />
PermitRootLogin no<br />
#<br />
</code><br />
You need to restart the sshd <a href="http://www.michael-kolb.co.uk/tag/script/">script</a> with <strong>/etc/init.d/sshd restart</strong> Please stay logged in as root, before you&#8217;ve tested the new ssh &#8211; connect with a second console.</p>
<p>Now create an user account with lower permissions than root. Use this account to connect your server via ssh, followed by the &#8220;su&#8221; command to get root permissions.</p>
<p><code><br />
useradd -u 999 -g 100 remotessh -d /home/remotessh -s /bin/bash<br />
</code></p>
<p>Connecting your server with the new port:<br />
<code><br />
ssh -P 2233 yourserver.com -l remotessh<br />
</code></p>
<p>Setting up a firewall with iptables to improve systems security will bei shown in this <a href="http://www.michael-kolb.co.uk/linuxdaemons/scripting-a-firewall-with-iptables/" alt="iptables" target="_top">article</a></p>
<p><strong>Helpful links:</strong></p>
<ul>
<li>
Using keychains to avoid typing passwords again and again.<br />
<a href="http://blog.synatic.net/2008/3/29/easy-ssh-authentication-with-keychain" target="_blank">http://blog.synatic.net/2008/3/29/easy-ssh-authentication-with-keychain</a>.
</li>
<li>
A nice how-to for creating strong passwords:<br />
<a href="http://www.thegeekstuff.com/2008/06/the-ultimate-guide-for-creating-strong-passwords/" target="_blank">http://www.thegeekstuff.com/2008/06/the-ultimate-guide-for-creating-strong-passwords/</a>
</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.michael-kolb.co.uk/linuxdaemons/changing-ssh-port/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Scripting a firewall with iptables</title>
		<link>http://www.michael-kolb.co.uk/linuxdaemons/scripting-a-firewall-with-iptables/</link>
		<comments>http://www.michael-kolb.co.uk/linuxdaemons/scripting-a-firewall-with-iptables/#comments</comments>
		<pubDate>Wed, 26 Nov 2008 17:42:59 +0000</pubDate>
		<dc:creator>mk_michael</dc:creator>
				<category><![CDATA[Linux Daemons]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[script]]></category>
		<category><![CDATA[security]]></category>

		<guid isPermaLink="false">http://www.michael-kolb.co.uk/?p=61</guid>
		<description><![CDATA[IPTables is a text based frontend for the ipchains kernel module. The ipchains support is compiled into most kernels of todays distributions. With iptables you don&#8217;t have to use a graphical tool. So it&#8217;s very suitable for scritpting.
First thing to do is installing neccessary packages, for Ubuntu / Debian:
apt-get update
apt-get install iptables
When the package is [...]]]></description>
			<content:encoded><![CDATA[<p>IPTables is a text based frontend for the ipchains kernel module. The ipchains support is compiled into most kernels of todays distributions. With iptables you don&#8217;t have to use a graphical tool. So it&#8217;s very suitable for <a href="http://www.michael-kolb.co.uk/tag/script/">scritpting</a>.</p>
<p>First thing to do is installing neccessary packages, for Ubuntu / Debian:<br />
<code>apt-get update<br />
apt-get install iptables</code></p>
<p>When the package is installed, create a file inside /etc/init.d/ called iptables (or whatever you want). Copy paste the lines below into.</p>
<p><span id="more-61"></span></p>
<p><code><br />
########################################<br />
#!/bin/sh<br />
# iptables start/stop script<br />
# location /etc/init.d/iptables<br />
########################################</p>
<p>PATH=/bin:/sbin:/usr/bin:/usr/sbin<br />
TABLEBIN=/sbin/iptables</p>
<p>#<br />
# INPUT - SERVICES<br />
#<br />
IN_TCP_SERVICES="80 443 25 110 995 21" # http https smtp pop3 SSL/TLS ftp<br />
IN_UDP_SERVICES=""</p>
<p>#<br />
# OUTPUT - SERVICES<br />
#<br />
OUT_TCP_SERVICES="80 443 25 43 2703 21" # http https smtp whois razor ftp<br />
OUT_UDP_SERVICES="53 123" # DNS ntp</p>
<p>if ! [ -x $TABLEBIN ]; then<br />
echo "IPTABLES does not exists"<br />
exit 0<br />
fi<br />
</code></p>
<p>With the INPUT/OUTPUT section, you&#8217;re able to define your services like http or smtp for remote access. Chmod file to 755 and ensure root to be the owner.</p>
<p><code><br />
chmod 755 /etc/init.d/iptables<br />
chown root:root /etc/init.d/iptables</code></p>
<p>Check and try the script. If iptables isn&#8217;t installed correctly, you wil get an error statement. Next step, calling iptables statements. Append following lines into the iptables script:</p>
<p><code><br />
#<br />
# start firewall<br />
#<br />
fw_start ()<br />
{<br />
# deny all<br />
$TABLEBIN -P INPUT DROP<br />
$TABLEBIN -P OUTPUT DROP<br />
# common<br />
$TABLEBIN -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT<br />
$TABLEBIN -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT</p>
<p># allow mysql from special IP adresses<br />
$TABLEBIN -A INPUT -p tcp -s  xxx.xxx.xxx.xxx --dport 3306 -j ACCEPT # MYSQL for clients<br />
$TABLEBIN -A OUTPUT -p tcp -s xxx.xxx.xxx.xxx --dport 3306 -j ACCEPT # MYSQL for clients</p>
<p># allow always<br />
$TABLEBIN -A INPUT -p tcp --dport 2222 -j ACCEPT # ssh on port 2233<br />
$TABLEBIN -A INPUT -i lo -j ACCEPT<br />
$TABLEBIN -I INPUT -s 127.0.0.1 -j ACCEPT<br />
$TABLEBIN -I OUTPUT -s 127.0.0.1 -j ACCEPT</p>
<p># deny special bad ip adresses<br />
$TABLEBIN -I INPUT -s xxx.xxx.xxx.xxx -j DROP # deny, because of ...<br />
$TABLEBIN -I INPUT -s xxx.xxx.xxx.xxx -j DROP # deny, because of ...<br />
$TABLEBIN -I INPUT -s xxx.xxx.xxx.xxx -j DROP # deny, because of ...</p>
<p># INPUTS<br />
if [ -n "$IN_TCP_SERVICES" ] ; then<br />
for PORT in $IN_TCP_SERVICES; do<br />
$TABLEBIN -A INPUT -p tcp --dport ${PORT} -j ACCEPT<br />
done<br />
fi</p>
<p>if [ -n "$IN_UDP_SERVICES" ] ; then<br />
for PORT in $IN_UDP_SERVICES; do<br />
$TABLEBIN -A INPUT -p udp --dport ${PORT} -j ACCEPT<br />
done<br />
fi</p>
<p># OUTPUTS<br />
if [ -n "$OUT_TCP_SERVICES" ] ; then<br />
for PORT in $OUT_TCP_SERVICES; do<br />
$TABLEBIN -A OUTPUT -p tcp --dport ${PORT} -j ACCEPT<br />
done<br />
fi</p>
<p>if [ -n "$OUT_UDP_SERVICES" ] ; then<br />
for PORT in $OUT_UDP_SERVICES; do<br />
$TABLEBIN -A OUTPUT -p udp --dport ${PORT} -j ACCEPT<br />
done<br />
fi<br />
}<br />
</code></p>
<p>The <a href="http://www.michael-kolb.co.uk/linuxdaemons/changing-ssh-port/" target="_top" alt="ssh port">ssh port</a> is binded to another one, because of improving security.<br />
The last step to complete the script is the stopping call:</p>
<p><code><br />
#<br />
# stop firewall<br />
#<br />
fw_stop ()<br />
{<br />
$TABLEBIN -F<br />
$TABLEBIN -t nat -F<br />
$TABLEBIN -t mangle -F<br />
$TABLEBIN -P INPUT ACCEPT<br />
$TABLEBIN -P FORWARD ACCEPT<br />
$TABLEBIN -P OUTPUT ACCEPT<br />
}</p>
<p>case "$1" in<br />
start)<br />
echo -n "starting firewall.."<br />
fw_stop<br />
fw_start<br />
echo "done."<br />
;;<br />
stop)<br />
echo -n "stopping firewall.."<br />
fw_stop<br />
echo "done."<br />
;;<br />
*)<br />
echo "Usage: $0 {start|stop}"<br />
exit 1<br />
;;<br />
esac<br />
exit 0<br />
</code></p>
<p>Now you start your iptables script with<br />
<strong>/etc/init.d/iptables start<br />
/etc/init.d/iptables stop<br />
</strong></p>
<p>To start the <a href="http://www.michael-kolb.co.uk/tag/script/">script</a> on booting process, put into the runlevel configuration (Debian/Ubuntu):</p>
<p><code><br />
update-rc.d timWall start 40 S . stop 89 0 6 .<br />
</code></p>
<p>Be careful!! Test it before manually, because you could block yourself out of the system. Firewall architecture with a DMZ:</p>
<p><img class="alignnone size-medium wp-image-365" title="reseau-dmz" src="http://www.michael-kolb.co.uk/wp-content/uploads/2008/11/reseau-dmz.jpg" alt="Firewall with DMZ" width="400" height="400" /><br />
Source: <a href="http://www.basic-security.com/MEDIA/US/RESEAU-DMZ.jpg" target="_blank">http://www.basic-security.com/MEDIA/US/RESEAU-DMZ.jpg</a></p>
<div class="download_banner">
Note: There is a file embedded within this post, please visit this post to download the file.</div>
<p><strong>Useful links:</strong></p>
<ul>
<li><em>(iptables &#8211; Die Firewall des Kernel 2.4 von Wolfgang Kinkeldei)</em><br />
<a href="http://www.pro-linux.de/NB3/artikel/2/print/761/6,6iptables-die-firewall-des-kernels-24.html" target="_blank">http://www.pro-linux.de/NB3/artikel/2/print/761/6,6iptables-die-firewall-des-kernels-24.html</a></li>
<li> <em>(iptables script generator from Tarjei Mandt)</em><br />
<a href="http://www.mista.nu/iptables/" target="_blank">http://www.mista.nu/iptables/</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.michael-kolb.co.uk/linuxdaemons/scripting-a-firewall-with-iptables/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
