<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Kiranjith&#039;s Blog</title>
	<atom:link href="http://kiranjith.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://kiranjith.wordpress.com</link>
	<description>Just another WordPress.com weblog</description>
	<lastBuildDate>Fri, 09 Sep 2011 13:02:53 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='kiranjith.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Kiranjith&#039;s Blog</title>
		<link>http://kiranjith.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://kiranjith.wordpress.com/osd.xml" title="Kiranjith&#039;s Blog" />
	<atom:link rel='hub' href='http://kiranjith.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Install Packages Via yum Command Using DVD / CD as Repo &#8211; CentOS (RHEL Based)</title>
		<link>http://kiranjith.wordpress.com/2011/01/14/install-packages-via-yum-command-using-dvd-cd-as-repo-centos-rhel-based/</link>
		<comments>http://kiranjith.wordpress.com/2011/01/14/install-packages-via-yum-command-using-dvd-cd-as-repo-centos-rhel-based/#comments</comments>
		<pubDate>Fri, 14 Jan 2011 19:25:00 +0000</pubDate>
		<dc:creator>kiranjith</dc:creator>
				<category><![CDATA[SysAdminUtilities]]></category>
		<category><![CDATA[Tips n tricks]]></category>

		<guid isPermaLink="false">http://kiranjith.wordpress.com/2011/01/14/install-packages-via-yum-command-using-dvd-cd-as-repo-centos-rhel-based</guid>
		<description><![CDATA[CentOS Linux comes with CentOS-Media.repo which is used to mount the default locations for a CDROM / DVD on CentOS-5.*. You can use this repo and yum to install items directly off the DVD ISO that we release.Open /etc/yum.repos.d/CentOS-Media.repo file, enter: # vi /etc/yum.repos.d/CentOS-Media.repoMake sure enabled is set to 1:enabled=1 Save and close the file. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kiranjith.wordpress.com&amp;blog=10300096&amp;post=193&amp;subd=kiranjith&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><!--.command {    padding: 1em;    border: 1px dashed #2f6fab;    color: black;    background-color: #f9f9f9;    line-height: 1.1em;        font-family: Courier New, Courier, mono;        font-size: 12px;        font-style: italic;}.system {    color: black;        font-family: Courier New, Courier, mono;        font-size: 12px;        font-style: italic;}.highlight {    color: #FF0000;                font-family: Georgia, "Times New Roman", Times, serif;                font-size: 12px;                text-decoration: underline;}--></p>
<p>CentOS Linux comes with CentOS-Media.repo which is used to mount the default locations for a CDROM / DVD on CentOS-5.*. You can use this repo and yum to install items directly off the DVD ISO that we release.<br />Open /etc/yum.repos.d/CentOS-Media.repo file, enter:
<div class="command"><i><b># vi /etc/yum.repos.d/CentOS-Media.repo</i></b><br />Make sure enabled is set to 1:<br /><b><i>enabled=1</b></i></div>
<p>Save and close the file. To use repo put your DVD and along with the other repos, enter:
<div class="command"><b><i># yum &#8211;enablerepo=c5-media install pacakge-name</i></b></div>
<p>To only use the DVDmedia repo, do this:
<div class="command"><b><i># yum &#8211;disablerepo=\* &#8211;enablerepo=c5-media install pacakge-name</i></b></div>
<p>OR use groupinstall command
<div class="command"><b><i># yum &#8211;disablerepo=\* &#8211;enablerepo=c5-media groupinstall &#8216;Virtualization&#8217;</i></b></div>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/kiranjith.wordpress.com/193/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/kiranjith.wordpress.com/193/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/kiranjith.wordpress.com/193/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/kiranjith.wordpress.com/193/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/kiranjith.wordpress.com/193/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/kiranjith.wordpress.com/193/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/kiranjith.wordpress.com/193/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/kiranjith.wordpress.com/193/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/kiranjith.wordpress.com/193/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/kiranjith.wordpress.com/193/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/kiranjith.wordpress.com/193/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/kiranjith.wordpress.com/193/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/kiranjith.wordpress.com/193/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/kiranjith.wordpress.com/193/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kiranjith.wordpress.com&amp;blog=10300096&amp;post=193&amp;subd=kiranjith&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://kiranjith.wordpress.com/2011/01/14/install-packages-via-yum-command-using-dvd-cd-as-repo-centos-rhel-based/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/378c99d97ee65e156464ca7664e9425b?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">kiranjith</media:title>
		</media:content>
	</item>
		<item>
		<title>Installing and configuring mod_security-Ubuntu 9.04</title>
		<link>http://kiranjith.wordpress.com/2010/12/26/installing-and-configuring-mod_security-ubuntu-9-04/</link>
		<comments>http://kiranjith.wordpress.com/2010/12/26/installing-and-configuring-mod_security-ubuntu-9-04/#comments</comments>
		<pubDate>Sun, 26 Dec 2010 18:49:00 +0000</pubDate>
		<dc:creator>kiranjith</dc:creator>
				<category><![CDATA[Apache]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://kiranjith.wordpress.com/2010/12/26/installing-and-configuring-mod_security-ubuntu-9-04</guid>
		<description><![CDATA[This how-to is reported to work in Ubuntu 8.04-10.10 as well. What is mod_security you ask ? Mod Security can significantly increase the security of your Apache installation. What Is ModSecurity? ModSecurity is a web application firewall that can work either embedded or as a reverse proxy. It provides protection from a range of attacks [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kiranjith.wordpress.com&amp;blog=10300096&amp;post=172&amp;subd=kiranjith&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>This how-to is reported to work in Ubuntu 8.04-10.10 as well. <br /><span style="font-size:large;"><b>What is <a href="http://www.modsecurity.org/">mod_security</a> you ask ?</b></span></p>
<p>Mod Security can significantly increase the security of your Apache installation.</p>
<p><b>What Is ModSecurity?</b></p>
<p><b><i>ModSecurity is a web application firewall that can work either embedded or as a reverse proxy. It provides protection from a range of attacks against web applications and allows for HTTP traffic monitoring, logging and real-time analysis.</p>
<p>It is also an open source project that aims to make the web application firewall technology available to everyone.</i></b></p>
<p>Do not think you need this ? Follow along with the examples and decide for yourself (This tutorial assumes you already have Apache and php5 installed).</p>
<p>First, let us look at the default Apache behavior. I will use “ubuntuVPS” as the server of interest.</p>
<ul>
<li><b>“Insecure” Example 1 – curl</b></li>
</ul>
<p>Use curl to obtain information on the server (bodhi@home is a remote machine connecting to “ubutnuVPS”. You can test all this with any browser if you wish, simply use your server’s home page).</p>
<p><b><i>bodhi@home# curl -i ubuntuVPS</i></b><br />HTTP/1.1 200 OK<br />Date: Tue, 28 Apr 2009 22:06:21 GMT<br />Server: Apache/2.2.11 (Ubuntu) PHP/5.2.6-3ubuntu4.1 with Suhosin-Patch<br />Last-Modified: Tue, 28 Apr 2009 21:39:54 GMT<br />ETag: &#8220;50d4a-2d-468a44dadbe80&#8243;<br />Accept-Ranges: bytes<br />Content-Length: 45<br />Vary: Accept-Encoding<br />Content-Type: text/html<br />
<h1>It works!</h1>
<p>Looks like this in your browser (the famous It works! page)<br />It works!</p>
<p>See how with a single command we already know the server is Ubuntu running Apache 2.2.11 and PHP 5.2.6 ?</p>
<ul>
<li><b>“Insecure” Example 2 – bad .php</b></li>
</ul>
<p>For this I will ask you to create a file “/var/www/insecure.php”</p>
<p>Put the following code in the file :</p>
<p>&lt; ? $secret_file = $_GET[&#039;secret_file&#039;];</p>
<p>include ( $secret_file); ? &gt;;</p>
<p>Note: I had to put a space at the front of the php tag “&lt;; ?”, remove it.</p>
<p>Now what ? Open a browser and enter http://ubuntuVPS/insecure.php?secret_file=/etc/passwd<br />I shall use curl in this example:</p>
<p><b><i>bodhi@home# curl -i &#8220;http://ubuntuVPS/insecure.php?secret_file=/etc/passwd&#8221;</i></b><br />HTTP/1.1 200 OK<br />Date: Tue, 28 Apr 2009 22:24:11 GMT<br />Server: Apache/2.2.11 (Ubuntu) PHP/5.2.6-3ubuntu4.1 with Suhosin-Patch<br />X-Powered-By: PHP/5.2.6-3ubuntu4.1<br />Vary: Accept-Encoding<br />Content-Length: 860<br />Content-Type: text/html<br />root:x:0:0:root:/root:/bin/bash<br />daemon:x:1:1:daemon:/usr/sbin:/bin/sh<br />bin:x:2:2:bin:/bin:/bin/sh<br />sys:x:3:3:sys:/dev:/bin/sh<br />sync:x:4:65534:sync:/bin:/bin/sync<br />games:x:5:60:games:/usr/games:/bin/sh<br />man:x:6:12:man:/var/cache/man:/bin/sh<br />lp:x:7:7:lp:/var/spool/lpd:/bin/sh<br />mail:x:8:8:mail:/var/mail:/bin/sh<br />news:x:9:9:news:/var/spool/news:/bin/sh<br />uucp:x:10:10:uucp:/var/spool/uucp:/bin/sh<br />proxy:x:13:13:proxy:/bin:/bin/sh<br />www-data:x:33:33:www-data:/var/www:/bin/sh<br />backup:x:34:34:backup:/var/backups:/bin/sh<br />list:x:38:38:Mailing List Manager:/var/list:/bin/sh<br />irc:x:39:39:ircd:/var/run/ircd:/bin/sh<br />gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/bin/sh<br />nobody:x:65534:65534:nobody:/nonexistent:/bin/sh<br />libuuid:x:100:101::/var/lib/libuuid:/bin/sh<br />sshd:x:101:65534::/var/run/sshd:/usr/sbin/nologin<br />postfix:x:104:107::/var/spool/postfix:/bin/false</p>
<p>YIKES !!!<br /><span style="font-size:large;"><b>Install and configure mod_secure</b></span></p>
<p>There was a time when installing mod_security was a bit difficult, now it is as easy as :</p>
<p><b><i>sudo apt-get -y install libapache-mod-security</i></b></p>
<p>The “hard part” is that we need to configure mod_security and obtain a few rules.</p>
<p><span style="font-size:large;"><b>Configure mod_security</b></span></p>
<p>Using any editor, make a file “/etc/apache2/conf.d/modsecurity2.conf” and put the following contents in the file.</p>
<p><i></p>
<p>Include conf.d/modsecurity/*.conf</i><br /><i></i></p>
<p>Note: I had to add a space at the front of the tag “” and “”, remove them.</p>
<p>By default, mod_security logs to /etc/apache2/logs, the following commands will put the log in /var/log/apache2/mod_security and create a symbolic link back to /etc/apache2/logs</p>
<p><b><i>sudo mkdir /var/log/apache2/mod_security<br />sudo ln -s /var/log/apache2/mod_security/ /etc/apache2/logs</i></b><br /><span style="font-size:large;"><b>Download and install rules</b></span></p>
<p>Download rules from <a href="http://www.modsecurity.org/download/index.html">here</a></p>
<p>As of this writing, the rule set was “modsecurity-core-rules_2.5-1.6.1.tar.gz”, you may need to adjust accordingly as new rules are released.<br /><b><i><br />sudo mkdir /etc/apache2/conf.d/modsecurity<br />cd /etc/apache2/conf.d/modsecurity<br />sudo wget http://www.modsecurity.org/download/modsecurity-core-rules_2.5-1.6.1.tar.gz</i></b><br /><i><b>sudo tar xzvf modsecurity-core-rules_2.5-1.6.1.tar.gz</b></i><br /><b><i>sudo rm CHANGELOG LICENSE README modsecurity-core-rules_2.5-1.6.1.tar.gz</i></b></p>
<p><span style="font-size:large;"><b>Enable mod_security:</b></span></p>
<p><b><i>sudo a2enmod mod-security</i></b></p>
<p><span style="font-size:large;"><b>Now restart Apache</b></span></p>
<p><b><i>sudo /etc/init.d/apache2 restart</i></b></p>
<p>That’s it <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><span style="font-size:large;"><b>Testing mod_security</b></span></p>
<p>
<ul>
<li><b>“Secure” Example 1 – curl</b></li>
</ul>
<p><b><i> bodhi@home# curl -i http://ubuntuVPS</i></b><br />HTTP/1.1 200 OK<br />Date: Tue, 28 Apr 2009 22:44:42 GMT<br />Server: Apache/2.2.0 (Fedora)<br />Last-Modified: Tue, 28 Apr 2009 21:39:54 GMT<br />ETag: &#8220;50d4a-2d-468a44dadbe80&#8243;<br />Accept-Ranges: bytes<br />Content-Length: 45<br />Vary: Accept-Encoding<br />Content-Type: text/html<br />
<h1>It works!</h1>
<p>Look no more server or php information (Fedora apache 2.2.0 , LOL !!! )</p>
<p>
<ul>
<li><b>“Secure” Example 2 – bad .php</b></li>
</ul>
<p><b><i>bodhi@home# curl -i &#8220;http://ubuntuVPS/insecure.php?secret_file=/etc/passwd&#8221;</i></b><br />HTTP/1.1 501 Method Not Implemented<br />Date: Tue, 28 Apr 2009 22:47:38 GMT<br />Server: Apache/2.2.0 (Fedora)<br />Allow: TRACE<br />Vary: Accept-Encoding<br />Content-Length: 291<br />Connection: close<br />Content-Type: text/html; charset=iso-8859-1</p>
<p>
<h1>Method Not Implemented</h1>
<p>
<p>GET to /insecure.php not supported.</p>
<p>
<hr />
<address>Apache/2.2.0 (Fedora) Server at ubuntuvps Port 80</address>
<p>Looks like this in your browser:</p>
<p>501 Method Not Implemented<br />Method Not Implemented</p>
<p>GET to /insecure.php not supported.Apache/2.2.0 (Fedora) Server at ubuntuvps Port 80</p>
<p>Ah 501 Error looks much better then the contents of /etc/passwd <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> <br />Where to go from here ?</p>
<p><span style="font-size:large;"><b>1. Monitor your logs :</b></span></p>
<p><b><i>tail /var/log/apache2/mod_security/modsec_audit.log</i></b></p>
<p>2. Learn / edit your mod_security rules : <a href="http://www.modsecurity.org/documentation/modsecurity-apache/2.1.0/html-multipage/index.html">ModSecurity Reference Manual</a></p>
<p>3. Delete bad.php, LOL</p>
<p><b><i>sudo rm -rf /var/www/insecure.php</i></b></p>
<p>I hope you enjoyed and learned from this tutorial <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Reference:<br />&#8220;This is just a copy cat of the post from <a href="http://blog.bodhizazen.net/linux/how-to-mod_security-ubuntu-904/">http://blog.bodhizazen.net/linux/how-to-mod_security-ubuntu-904/</a><br />All credit should go to the respective author. I tried the method in Ubuntu 10.10 and it works fine.&#8221;</p>
<p>Note:-<br />Some of the rules may deny the access to you applications (eg: phpmyadmin/drupal etc). Test the rules well before you implement.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/kiranjith.wordpress.com/172/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/kiranjith.wordpress.com/172/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/kiranjith.wordpress.com/172/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/kiranjith.wordpress.com/172/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/kiranjith.wordpress.com/172/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/kiranjith.wordpress.com/172/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/kiranjith.wordpress.com/172/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/kiranjith.wordpress.com/172/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/kiranjith.wordpress.com/172/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/kiranjith.wordpress.com/172/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/kiranjith.wordpress.com/172/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/kiranjith.wordpress.com/172/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/kiranjith.wordpress.com/172/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/kiranjith.wordpress.com/172/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kiranjith.wordpress.com&amp;blog=10300096&amp;post=172&amp;subd=kiranjith&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://kiranjith.wordpress.com/2010/12/26/installing-and-configuring-mod_security-ubuntu-9-04/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/378c99d97ee65e156464ca7664e9425b?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">kiranjith</media:title>
		</media:content>
	</item>
		<item>
		<title>HowTo: 10 Steps to Configure tftpboot Server in UNIX / Linux (For installing Linux from Network using PXE)</title>
		<link>http://kiranjith.wordpress.com/2010/07/22/howto-10-steps-to-configure-tftpboot-server-in-unix-linux-for-installing-linux-from-network-using-pxe/</link>
		<comments>http://kiranjith.wordpress.com/2010/07/22/howto-10-steps-to-configure-tftpboot-server-in-unix-linux-for-installing-linux-from-network-using-pxe/#comments</comments>
		<pubDate>Thu, 22 Jul 2010 09:08:00 +0000</pubDate>
		<dc:creator>kiranjith</dc:creator>
				<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://kiranjith.wordpress.com/2010/07/22/howto-10-steps-to-configure-tftpboot-server-in-unix-linux-for-installing-linux-from-network-using-pxe</guid>
		<description><![CDATA[In this article, let us discuss about how to setup tftpboot, including installation of necessary packages, and tftpboot configurations. TFTP boot service is primarily used to perform OS installation on a remote machine for which you don’t have the physical access. In order to perform the OS installation successfully, there should be a way to [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kiranjith.wordpress.com&amp;blog=10300096&amp;post=173&amp;subd=kiranjith&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><span class="Apple-style-span" style="font-family:Arial;font-size:small;"><span class="Apple-style-span" style="font-size:13px;"><br /></span></span><span class="Apple-style-span" style="color:#111111;font-family:'Helvetica Neue', Helvetica, Arial, sans-serif;font-size:14px;line-height:22px;"></span>
<div class="format_text entry-content" style="font-size:1.4em;line-height:1.571em;margin:0;padding:0;">
<div style="margin:0 0 1.571em;padding:0;">In this article, let us discuss about how to setup tftpboot, including installation of necessary packages, and tftpboot configurations.</div>
<div style="margin:0 0 1.571em;padding:0;">TFTP boot service is primarily used to perform OS installation on a remote machine for which you don’t have the physical access. In order to perform the OS installation successfully, there should be a way to reboot the remote server — either using <a href="http://www.thegeekstuff.com/2008/11/wol-wakeonlan-guide-remotely-turn-on-servers-without-physical-access/" style="color:#2361a1;outline-color:initial;outline-style:none;outline-width:initial;text-decoration:underline;margin:0;padding:0;">wakeonlan</a> or someone manually rebooting it or some other ways.</div>
<div style="margin:0 0 1.571em;padding:0;">In those scenarios, you can setup the tftpboot services accordingly and the OS installation can be done remotely (you need to have the autoyast configuration file to automate the OS installation steps).<br style="margin:0;padding:0;" /><span id="more-5141" style="margin:0;padding:0;"></span><br style="margin:0;padding:0;" />Step by step procedure is presented in this article for the SLES10-SP3 in 64bit architecture. However, these steps are pretty much similar to any other Linux distributions.</div>
<h3 style="font-size:1.286em;font-weight:normal;line-height:1.222em;margin:1.833em 0 .611em;padding:0;">Required Packages</h3>
<div style="margin:0 0 1.571em;padding:0;">The following packages needs to be installed for the tftpboot setup.</div>
<ul style="list-style-image:initial;list-style-position:initial;list-style-type:square;margin:0 0 1.571em 1.571em;padding:0;">
<li style="margin:0;padding:0;">dhcp services packages: dhcp-3.0.7-7.5.20.x86_64.rpm and dhcp-server-3.0.7-7.5.20.x86_64.rpm</li>
<li style="margin:0;padding:0;">tftpboot package: tftp-0.48-1.6.x86_64.rpm</li>
<li style="margin:0;padding:0;">pxeboot package: syslinux-3.11-20.14.26.x86_64.rpm</li>
</ul>
<h3 style="font-size:1.286em;font-weight:normal;line-height:1.222em;margin:1.833em 0 .611em;padding:0;">Package Installation</h3>
<div style="margin:0 0 1.571em;padding:0;">Install the packages for the dhcp server services:</div>
<pre style="background-attachment:initial;background-color:#eeeeee;background-image:initial;background-position:initial initial;background-repeat:initial initial;clear:both;font-family:Consolas, 'Andale Mono', Monaco, Courier, 'Courier New', Verdana, sans-serif;font-size:.857em;line-height:1.5em;border-color:rgb(221,221,221);border-style:solid;border-width:1px;margin:0 0 1.833em;padding:.667em .917em;">$ rpm -ivh dhcp-3.0.7-7.5.20.x86_64.rpmPreparing...                ########################################### [100%]   1:dhcp                   ########################################### [100%]

$ rpm -ivh dhcp-server-3.0.7-7.5.20.x86_64.rpmPreparing...                ########################################### [100%]   1:dhcp                   ########################################### [100%]

$ rpm -ivh tftp-0.48-1.6.x86_64.rpm

$ rpm -ivh syslinux-3.11-20.14.26.x86_64.rpm</pre>
<div style="margin:0 0 1.571em;padding:0;">After installing the syslinux package, pxelinux.0 file will be created under /usr/share/pxelinux/ directory. This is required to load install kernel and initrd images on the client machine.</div>
<div style="margin:0 0 1.571em;padding:0;">Verify that the packages are successfully installed.</div>
<pre style="background-attachment:initial;background-color:#eeeeee;background-image:initial;background-position:initial initial;background-repeat:initial initial;clear:both;font-family:Consolas, 'Andale Mono', Monaco, Courier, 'Courier New', Verdana, sans-serif;font-size:.857em;line-height:1.5em;border-color:rgb(221,221,221);border-style:solid;border-width:1px;margin:0 0 1.833em;padding:.667em .917em;">$ rpm -qa | grep dhcp$ rpm -qa | grep tftp</pre>
<div style="margin:0 0 1.571em;padding:0;">Download the appropriate tftpserver from the repository of your respective Linux distribution.</div>
<h3 style="font-size:1.286em;font-weight:normal;line-height:1.222em;margin:1.833em 0 .611em;padding:0;">Steps to setup tftpboot</h3>
<h3 style="font-size:1.286em;font-weight:normal;line-height:1.222em;margin:1.833em 0 .611em;padding:0;">Step 1: Create /tftpboot directory</h3>
<div style="margin:0 0 1.571em;padding:0;">Create the tftpboot directory under root directory ( / ) as shown below.</div>
<pre style="background-attachment:initial;background-color:#eeeeee;background-image:initial;background-position:initial initial;background-repeat:initial initial;clear:both;font-family:Consolas, 'Andale Mono', Monaco, Courier, 'Courier New', Verdana, sans-serif;font-size:.857em;line-height:1.5em;border-color:rgb(221,221,221);border-style:solid;border-width:1px;margin:0 0 1.833em;padding:.667em .917em;"># mkdir /tftpboot/</pre>
<h3 style="font-size:1.286em;font-weight:normal;line-height:1.222em;margin:1.833em 0 .611em;padding:0;">Step 2: Copy the pxelinux image</h3>
<div style="margin:0 0 1.571em;padding:0;">PXE Linux image will be available once you installed the syslinux package. Copy this to /tftpboot path as shown below.</div>
<pre style="background-attachment:initial;background-color:#eeeeee;background-image:initial;background-position:initial initial;background-repeat:initial initial;clear:both;font-family:Consolas, 'Andale Mono', Monaco, Courier, 'Courier New', Verdana, sans-serif;font-size:.857em;line-height:1.5em;border-color:rgb(221,221,221);border-style:solid;border-width:1px;margin:0 0 1.833em;padding:.667em .917em;"># cp /usr/share/syslinux/pxelinux.0 /tftpboot</pre>
<h3 style="font-size:1.286em;font-weight:normal;line-height:1.222em;margin:1.833em 0 .611em;padding:0;">Step 3: Create the mount point for ISO and mount the ISO image</h3>
<div style="margin:0 0 1.571em;padding:0;">Let us assume that we are going to install the SLES10 SP3 Linux distribution on a remote server. If you have the SUSE10-SP3 DVD insert it in the drive or mount the ISO image which you have. Here, the iso image has been mounted as follows:</div>
<pre style="background-attachment:initial;background-color:#eeeeee;background-image:initial;background-position:initial initial;background-repeat:initial initial;clear:both;font-family:Consolas, 'Andale Mono', Monaco, Courier, 'Courier New', Verdana, sans-serif;font-size:.857em;line-height:1.5em;border-color:rgb(221,221,221);border-style:solid;border-width:1px;margin:0 0 1.833em;padding:.667em .917em;"># mkdir /tftpboot/sles10_sp3

# mount -o loop SLES-10-SP3-DVD-x86_64.iso /tftpboot/sles10_sp3</pre>
<div style="margin:0 0 1.571em;padding:0;">Refer to our earlier article on <a href="http://www.thegeekstuff.com/2009/06/how-to-mount-view-iso-file-as-root-and-non-root-user-in-unix/" style="color:#2361a1;outline-color:initial;outline-style:none;outline-width:initial;text-decoration:underline;margin:0;padding:0;">How to mount and view ISO files</a>.</div>
<h3 style="font-size:1.286em;font-weight:normal;line-height:1.222em;margin:1.833em 0 .611em;padding:0;">Step 4: Copy the vmlinuz and initrd images into /tftpboot</h3>
<div style="margin:0 0 1.571em;padding:0;">Copy the initrd to the tftpboot directory as shown below.</div>
<pre style="background-attachment:initial;background-color:#eeeeee;background-image:initial;background-position:initial initial;background-repeat:initial initial;clear:both;font-family:Consolas, 'Andale Mono', Monaco, Courier, 'Courier New', Verdana, sans-serif;font-size:.857em;line-height:1.5em;border-color:rgb(221,221,221);border-style:solid;border-width:1px;margin:0 0 1.833em;padding:.667em .917em;"># cd /tftpboot/sles10_sp3/boot/x86_64/loader

# cp initrd linux /tftpboot/</pre>
<h3 style="font-size:1.286em;font-weight:normal;line-height:1.222em;margin:1.833em 0 .611em;padding:0;">Step 5: Create pxelinux.cfg Directory</h3>
<div style="margin:0 0 1.571em;padding:0;">Create the directory pxelinux.cfg under /tftpboot and define the pxe boot definitions for the client.</div>
<pre style="background-attachment:initial;background-color:#eeeeee;background-image:initial;background-position:initial initial;background-repeat:initial initial;clear:both;font-family:Consolas, 'Andale Mono', Monaco, Courier, 'Courier New', Verdana, sans-serif;font-size:.857em;line-height:1.5em;border-color:rgb(221,221,221);border-style:solid;border-width:1px;margin:0 0 1.833em;padding:.667em .917em;"># mkdir /tftpboot/pxelinux.cfg

# cat &gt;/tftpboot/pxelinux.cfg/defaultdefault linuxlabel linuxkernel linuxappend initrd=initrd showopts instmode=nfs install=nfs://192.168.1.101/tftpboot/sles10_sp3/</pre>
<div style="margin:0 0 1.571em;padding:0;">The following options are used for,</div>
<ul style="list-style-image:initial;list-style-position:initial;list-style-type:square;margin:0 0 1.571em 1.571em;padding:0;">
<li style="margin:0;padding:0;">kernel – specifies where to find the Linux install kernel on the TFTP server.</li>
<li style="margin:0;padding:0;">install – specifies boot arguments to pass to the install kernel.</li>
</ul>
<div style="margin:0 0 1.571em;padding:0;">As per the entries above, the nfs install mode is used for serving install RPMs and configuration files. So, have the nfs setup in this machine with the /tftpboot directory in the exported list. You can add the “autoyast” option with the autoyast configuration file to automate the OS installation steps otherwise you need to do run through the installation steps manually.</div>
<h3 style="font-size:1.286em;font-weight:normal;line-height:1.222em;margin:1.833em 0 .611em;padding:0;">Step 6: Change the owner and permission for /tftpboot directory</h3>
<div style="margin:0 0 1.571em;padding:0;">Assign nobody:nobody to /tftpboot directory.</div>
<pre style="background-attachment:initial;background-color:#eeeeee;background-image:initial;background-position:initial initial;background-repeat:initial initial;clear:both;font-family:Consolas, 'Andale Mono', Monaco, Courier, 'Courier New', Verdana, sans-serif;font-size:.857em;line-height:1.5em;border-color:rgb(221,221,221);border-style:solid;border-width:1px;margin:0 0 1.833em;padding:.667em .917em;"># chown nobody:nobody /tftpboot

# chmod 777 /tftpboot</pre>
<h3 style="font-size:1.286em;font-weight:normal;line-height:1.222em;margin:1.833em 0 .611em;padding:0;">Step 7: Modify /etc/dhcpd.conf</h3>
<div style="margin:0 0 1.571em;padding:0;">Modify the /etc/dhcpd.conf as shown below.</div>
<pre style="background-attachment:initial;background-color:#eeeeee;background-image:initial;background-position:initial initial;background-repeat:initial initial;clear:both;font-family:Consolas, 'Andale Mono', Monaco, Courier, 'Courier New', Verdana, sans-serif;font-size:.857em;line-height:1.5em;border-color:rgb(221,221,221);border-style:solid;border-width:1px;margin:0 0 1.833em;padding:.667em .917em;"># cat /etc/dhcpd.conf

ddns-update-style none;default-lease-time 14400;filename "pxelinux.0"; 

# IP address of the dhcp server nothing but this machine.next-server 192.168.1.101;subnet 192.168.1.0 netmask 255.255.255.0 {  # ip distribution range between 192.168.1.1 to 192.168.1.100  range 192.168.1.1 192.168.1.100;  default-lease-time 10;  max-lease-time 10;}</pre>
<div style="margin:0 0 1.571em;padding:0;">Specify the interface in /etc/syslinux/dhcpd to listen dhcp requests coming from clients.</div>
<pre style="background-attachment:initial;background-color:#eeeeee;background-image:initial;background-position:initial initial;background-repeat:initial initial;clear:both;font-family:Consolas, 'Andale Mono', Monaco, Courier, 'Courier New', Verdana, sans-serif;font-size:.857em;line-height:1.5em;border-color:rgb(221,221,221);border-style:solid;border-width:1px;margin:0 0 1.833em;padding:.667em .917em;"># cat /etc/syslinux/dhcpd | grep DHCPD_INTERFACEDHCPD_INTERFACE=”eth1”;</pre>
<div style="margin:0 0 1.571em;padding:0;">Here, this machine has the ip address of 192.168.1.101 on the eth1 device. So, specify eth1 for the DHCPD_INTERFACE as shown above.</div>
<div style="margin:0 0 1.571em;padding:0;">On a related note, refer to our earlier article about <a href="http://www.thegeekstuff.com/2009/03/ifconfig-7-examples-to-configure-network-interface/" style="color:#2361a1;outline-color:initial;outline-style:none;outline-width:initial;text-decoration:underline;margin:0;padding:0;">7 examples to configure network interface using ifconfig</a>.</div>
<h3 style="font-size:1.286em;font-weight:normal;line-height:1.222em;margin:1.833em 0 .611em;padding:0;">Step 8: Modify /etc/xinetd.d/tftp</h3>
<div style="margin:0 0 1.571em;padding:0;">Modify the /etc/xinetd.d/tftp file to reflect the following. By default the value for disable parameter is “yes”, please make sure you modify it to “no” and you need to change the server_args entry to -s /tftpboot.</div>
<pre style="background-attachment:initial;background-color:#eeeeee;background-image:initial;background-position:initial initial;background-repeat:initial initial;clear:both;font-family:Consolas, 'Andale Mono', Monaco, Courier, 'Courier New', Verdana, sans-serif;font-size:.857em;line-height:1.5em;border-color:rgb(221,221,221);border-style:solid;border-width:1px;margin:0 0 1.833em;padding:.667em .917em;"># cat /etc/xinetd.d/tftp service tftp {                       socket_type     = dgram                       protocol          = udp                       wait               = yes                       user               = root                       server            = /usr/sbin/in.tftpd                       server_args     = -s /tftpboot                       disable           = no            }</pre>
<h3 style="font-size:1.286em;font-weight:normal;line-height:1.222em;margin:1.833em 0 .611em;padding:0;">Step 9: No changes in /etc/xinetd.conf</h3>
<div style="margin:0 0 1.571em;padding:0;">There is no need to modify the etc/xinetd.conf file. Use the default values specified in the xinetd.conf file.</div>
<h3 style="font-size:1.286em;font-weight:normal;line-height:1.222em;margin:1.833em 0 .611em;padding:0;">Step 10: Restart xinetd, dhcpd and nfs services</h3>
<div style="margin:0 0 1.571em;padding:0;">Restart these services as shown below.</div>
<pre style="background-attachment:initial;background-color:#eeeeee;background-image:initial;background-position:initial initial;background-repeat:initial initial;clear:both;font-family:Consolas, 'Andale Mono', Monaco, Courier, 'Courier New', Verdana, sans-serif;font-size:.857em;line-height:1.5em;border-color:rgb(221,221,221);border-style:solid;border-width:1px;margin:0 0 1.833em;padding:.667em .917em;"># /etc/init.d/xinetd restart

# /etc/init.d/dhcpd restart

# /etc/init.d/nfsserver restart</pre>
<div style="margin:0 0 1.571em;padding:0;">After restarting the nfs services, you can view the exported directory list(/tftpboot) by the following command,</div>
<pre style="background-attachment:initial;background-color:#eeeeee;background-image:initial;background-position:initial initial;background-repeat:initial initial;clear:both;font-family:Consolas, 'Andale Mono', Monaco, Courier, 'Courier New', Verdana, sans-serif;font-size:.857em;line-height:1.5em;border-color:rgb(221,221,221);border-style:solid;border-width:1px;margin:0 0 1.833em;padding:.667em .917em;"># showmount -e</pre>
<div style="margin:0 0 1.571em;padding:0;">Finally, the tftpboot setup is ready and now the client machine can be booted after changing the first boot device as “network” in the BIOS settings.</div>
<div style="margin:0 0 1.571em;padding:0;">If you encounter any tftp error, you can do the troubleshooting by retrieving some files through tftpd service.</div>
<div style="margin:0 0 1.571em;padding:0;">Retrieve some file from the tftpserver to make sure tftp service is working properly using the tftp client. Let us that assume that sample.txt file is present under /tftpboot directory.</div>
<pre style="background-attachment:initial;background-color:#eeeeee;background-image:initial;background-position:initial initial;background-repeat:initial initial;clear:both;font-family:Consolas, 'Andale Mono', Monaco, Courier, 'Courier New', Verdana, sans-serif;font-size:.857em;line-height:1.5em;border-color:rgb(221,221,221);border-style:solid;border-width:1px;margin:0 0 1.833em;padding:.667em .917em;">$ tftp -v 192.168.1.101 -c get sample.txt</pre>
<div class="social-bar" style="background-attachment:initial;background-color:#f2f0e8;background-image:initial;background-position:initial initial;background-repeat:initial initial;clear:left;margin:0;padding:10px 10px 48px;">The above article is copied from <a href="http://www.thegeekstuff.com/2010/07/tftpboot-server/?utm_source=feedburner&amp;utm_medium=email&amp;utm_campaign=Feed:+TheGeekStuff+(The+Geek+Stuff)">http://www.thegeekstuff.com/2010/07/tftpboot-server/?utm_source=feedburner&amp;utm_medium=email&amp;utm_campaign=Feed:+TheGeekStuff+(The+Geek+Stuff)</a>.</div>
</div>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/kiranjith.wordpress.com/173/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/kiranjith.wordpress.com/173/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/kiranjith.wordpress.com/173/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/kiranjith.wordpress.com/173/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/kiranjith.wordpress.com/173/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/kiranjith.wordpress.com/173/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/kiranjith.wordpress.com/173/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/kiranjith.wordpress.com/173/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/kiranjith.wordpress.com/173/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/kiranjith.wordpress.com/173/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/kiranjith.wordpress.com/173/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/kiranjith.wordpress.com/173/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/kiranjith.wordpress.com/173/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/kiranjith.wordpress.com/173/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kiranjith.wordpress.com&amp;blog=10300096&amp;post=173&amp;subd=kiranjith&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://kiranjith.wordpress.com/2010/07/22/howto-10-steps-to-configure-tftpboot-server-in-unix-linux-for-installing-linux-from-network-using-pxe/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/378c99d97ee65e156464ca7664e9425b?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">kiranjith</media:title>
		</media:content>
	</item>
		<item>
		<title>Bash Tip</title>
		<link>http://kiranjith.wordpress.com/2010/04/27/bash-tip/</link>
		<comments>http://kiranjith.wordpress.com/2010/04/27/bash-tip/#comments</comments>
		<pubDate>Tue, 27 Apr 2010 20:27:00 +0000</pubDate>
		<dc:creator>kiranjith</dc:creator>
				<category><![CDATA[Bash]]></category>

		<guid isPermaLink="false">http://kiranjith.wordpress.com/2010/04/27/bash-tip</guid>
		<description><![CDATA[http://searchenterpriselinux.techtarget.com/tip/0,289483,sid39_gci1510560,00.html?track=NL-795&#38;ad=763043&#38;asrc=EM_NLN_11432908<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kiranjith.wordpress.com&amp;blog=10300096&amp;post=174&amp;subd=kiranjith&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><a href="http://searchenterpriselinux.techtarget.com/tip/0,289483,sid39_gci1510560,00.html?track=NL-795&amp;ad=763043&amp;asrc=EM_NLN_11432908">http://searchenterpriselinux.techtarget.com/tip/0,289483,sid39_gci1510560,00.html?track=NL-795&amp;ad=763043&amp;asrc=EM_NLN_11432908</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/kiranjith.wordpress.com/174/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/kiranjith.wordpress.com/174/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/kiranjith.wordpress.com/174/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/kiranjith.wordpress.com/174/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/kiranjith.wordpress.com/174/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/kiranjith.wordpress.com/174/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/kiranjith.wordpress.com/174/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/kiranjith.wordpress.com/174/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/kiranjith.wordpress.com/174/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/kiranjith.wordpress.com/174/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/kiranjith.wordpress.com/174/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/kiranjith.wordpress.com/174/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/kiranjith.wordpress.com/174/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/kiranjith.wordpress.com/174/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kiranjith.wordpress.com&amp;blog=10300096&amp;post=174&amp;subd=kiranjith&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://kiranjith.wordpress.com/2010/04/27/bash-tip/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/378c99d97ee65e156464ca7664e9425b?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">kiranjith</media:title>
		</media:content>
	</item>
		<item>
		<title>12. Postfix Installing and configuring Courier-Auth Libs, Courier-IMAP and POP3</title>
		<link>http://kiranjith.wordpress.com/2010/03/15/12-postfix-installing-and-configuring-courier-auth-libs-courier-imap-and-pop3/</link>
		<comments>http://kiranjith.wordpress.com/2010/03/15/12-postfix-installing-and-configuring-courier-auth-libs-courier-imap-and-pop3/#comments</comments>
		<pubDate>Mon, 15 Mar 2010 14:33:00 +0000</pubDate>
		<dc:creator>kiranjith</dc:creator>
				<category><![CDATA[Postfix]]></category>

		<guid isPermaLink="false">http://kiranjith.wordpress.com/2010/03/15/12-postfix-installing-and-configuring-courier-auth-libs-courier-imap-and-pop3</guid>
		<description><![CDATA[    The Courier mail transfer agent (MTA) is an integrated mail/groupware server based on open commodity protocols, such as ESMTP, IMAP, POP3, LDAP, SSL, and HTTP. Courier provides ESMTP, IMAP, POP3, webmail, and mailing list services within a single, consistent, framework. Individual components can be enabled or disabled at will. The Courier mail server now [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kiranjith.wordpress.com&amp;blog=10300096&amp;post=175&amp;subd=kiranjith&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><!--.command {    padding: 1em;    border: 1px dashed #2f6fab;    color: black;    background-color: #f9f9f9;    line-height: 1.1em;        font-family: Courier New, Courier, mono;        font-size: 12px;        font-style: italic;}.system {    color: black;        font-family: Courier New, Courier, mono;        font-size: 12px;        font-style: italic;}.highlight {    color: #FF0000;                font-family: Georgia, "Times New Roman", Times, serif;                font-size: 12px;                text-decoration: underline;}--><br />    The Courier mail transfer agent (MTA) is an integrated mail/groupware server based on open commodity protocols, such as ESMTP, IMAP, POP3, LDAP, SSL, and HTTP. Courier provides ESMTP, IMAP, POP3, webmail, and mailing list services within a single, consistent, framework. Individual components can be enabled or disabled at will. The Courier mail server now implements basic web-based calendaring and scheduling services integrated in the webmail module.<br /><span style="font-size:large;"><b>Installing Courier Auth Lib:</b></span><br />    The Courier Authentication Library is a generic authentication API that encapsulates the process of validating account passwords. In addition to reading the traditional account passwords from /etc/passwd, the account information can alternatively be obtained from an LDAP directory; a MySQL or a PostgreSQL database; or a GDBM or a DB file. The Courier authentication library must be installed before building any Courier packages that needs direct access to mailboxes (in other words, all packages except for courier-sox  and courier-analog).<br />    Here we will download compile and install the courier-authlib source code for authentication daemon. This will provides the backend authentication that is required by both POP3 and IMAP. The source code can be  downloaded from http://www.courier-mta.org/. The courier can be used with Sendmail, Qmail or Postfix. The courier-mta supports the retrieval of mail from Maildir format and it doesn&#8217;t support the old MBOX format. <b>Authentication mechanism using courier authlib:</b><br />    MUA sends the authentication to IMAP/POP3. The IMPA/POP3 hands over the request to courier-auth libs. Now the courier auth libs quires the user database (/etc/passwd, LDAP, MySQL)
<div class="command"><b>MUA -&gt; IMPA/POP3 -&gt; Courier authlib -&gt; userdb</b></div>
<p><b>Installing courier auth libs</b><br />    Here we are interested in installing the courier IMAP and POP3 servers. to accomplish this initially we have to install the courier-auth libraries. <br />So download the authlib seperately and install it.
<div class="command"><i><b># wget http://sourceforge.net/projects/courier/files/authlib/0.63.0/courier-authlib-0.63.0.tar.bz2/download<br /># tar -jxvf courier-authlib-0.63.0.tar.bz2<br /># cd courier-authlib<br /># su user<br />$ ./configure<br />$ make<br />$ su root<br /># make install<br /># make install-configure</b></i></div>
<p>    The entire process installs the binaries and configuration files. Binary named &#8220;authdaemond&#8221; under &#8220;/usr/local/sbin&#8221; directory is executing as the authlib daemon. This consults the /usr/local/etc/authlib/authdaemonrc configuration file.<br /><b>Starting the authlib daemon</b>
<div class="command"><i><b># /usr/local/sbin/authdaemond start<br /># ps -ef |grep authdaemond</b></i></div>
<p>    Auth daemon is not bounded to any tcp or udp ports. But it is ready to accept any of authentication requests from IMAP or POP3. &#8220;If the auth daemon is not running the authentication process in IMAP and POP3 will not work&#8221;. <br /><span style="font-size:large;"><b>Installing courier imap (Installs the IMAP and POP3 service)</b></span><br />    Both the pop3 and imap service is installed with the package courier-imap.  <br />Download the package from http://www.courier-mta.org/download.php#imap and install the package
<div class="command"><i><b># wget https://sourceforge.net/projects/courier/files/imap/4.7.0/courier-imap-4.7.0.tar.bz2/download<br /># tar -jxvf courier-imap-4.7.0.tar.bz2<br /># cd courier-imap<br /># su user</b></i></div>
<p>If we need to have the SSL support, we need to have installed the openssl and openssl-devel packages <span style="color:black;">installed.</span><i><b><br /></b></i>
<div class="command"><i><b>$ ./configure<br />$ make<br />$ su root<br /># make install<br /># make install-configure</b></i></div>
<p>    These steps finishes courier-imap installaion. &#8220;/usr/lib/courier-imap&#8221; is the directory location of the courier-imap installation. &#8220;/usr/lib/courier-imap&#8221; contains binaries, libraries, shared libraries and configuration files.<br />    Note: The default facility in syslog used by courier-imap is &#8220;mail&#8221;. This can be chaged while compiling the binary</p>
<p><span style="font-size:large;"><b>Configuring and Running Courier-POP3</b></span><br />    Now we will configure the Courier-pop3 for retrieval of mail.<br />Inside &#8220;/usr/lib/courier-imap/libexec&#8221; directory has the startup script named pop3.rc and pop3-ssl.rc to start  the pop3 and  pop3 ssl services respectively.<br /><b>Starting the pop3 service</b>
<div class="command"><i><b># cd /usr/lib/courier-imap/libexec<br /># ./pop3.rc start</b></i></div>
<p>    This will start the pop3 service and bind to 110. Now check the service runs by the following command
<div class="command"><i><b># netstat -ntlp | grep 110</b></i></div>
<p>    Now test the retrieval of msg using any MUA from outside using the pop3 protocol. By default courier will retrieve the msgs from user mailbox (Maildir). Usually pop3 retrieves the mails from the &#8220;new&#8221; directory of Maildir struchure.</p>
<p><b>Implementing pop3-ssl</b><br />    Normal pop3 transmits the msg in clear text format over the wire.In order to implemented the secured transfer of mails (encrypted) we have to run pop3-ssl.To Inorder to accomplish this we have to generate the self  signed certificate or purchase a signed certificate from a trusted certificate authority that our email client trust.</p>
<p><b>Generating own self signed certificate:</b><br />    Courier-mta includes the scripts to generate self signed certificate using openssl.
<div class="command"><i><b># cd /usr/lib/courier-imap/etc</b></i></div>
<p>    In this directory we have a file called pop3d.cnf which contains the answers to the questions usually asked while attempt to generate the self signed certificate using the script inbuilt in courier-mta
<div class="command"><i><b># vim pop3d.cnf</b></i></div>
<p>    Change the parameters to suite our enviornment. eg:- Locality, organization, organization unit, host, email address etc Save the file and navigate to the folder which contains the script to generate the certificate.
<div class="command"><i><b># cd ../share<br /># ./mkpop3dcert</b></i><br /><i><b># ls pop3.pem</b></i></div>
<p>    This will generate the certificate with respect to the pop3d.cnf created before in current location.<br />Now navigate to libexec folder and start the pop3d-ssl script to start pop3 in secure mode. This will bind the port 995
<div class="command"><i><b># cd /usr/lib/courier-imap/libexec<br /># ./pop3d-ssl.rc start<br /># netstat -tulpn |grep 995</b></i></div>
<p>    Now we can see that the pop3s server started and running on port 995.<br />Test it in MUA by changing the incoming mail pop3 to use a secure connection (ssl).Now send and receive mails by accepting the certificate.</p>
<p><b>Making the pop3 and pop3s service available at startup</b><br />Make a symbolic link to /etc/init.d.
<div class="command"><i><b># ln -s /usr/lib/courier-imap/libexec/pop3d.rc    /etc/init.d/<br /># ln -s /usr/lib/courier-imap/libexec/pop3d-ssl.rc    /etc/init.d/<br /># cd /etc/init.d</b></i></div>
<p>Now point to the runlevel where to start the script. To start in runlevel 3
<div class="command"><i><b># cd /etc/init.d/rc3.d<br /># ln -s ../pop3d.rc S20pop3d<br /># ln -s ../pop3d-ssl.rc S20pop3-ssld</b></i></div>
<p>    This will create a startup script for the given runlevel. Make sure that we will create a Kill script in same method to kill/stop the service when system changes its runlevel.</p>
<p><span style="font-size:large;"><b>Configuring and running Courier-imap service</b></span><br />    The Courier-imap service startup script reside at the same location, where courier-pop3 locates<br />Starting the imap service
<div class="command"><i><b># cd /usr/lib/courier-imap/libexec<br /># ./impad.rc start<br /># netstat -ntlp | grep 143</b></i></div>
<p>    This will show the imap service running and listening to the port 143<br /><b>Configuring Courier-imap</b><br />    The configuration file is located at &#8220;/usr/lib/courier-imap/etc&#8221; named &#8220;imapd&#8221;
<div class="command"><i><b># vim /usr/lib/courier-imap/etc/imapd</b></i></div>
<p>    All derivatives are self explanatory. This file used to configure the listening address, port and number of daemons to start upon the binary starts etc.<br />    Test the mail retrievel by configuring the MUA with IMAP. The credentials given is matched by the server with the /etc/passwd by default. And /etc/passwd is the file that tells where the Maildir resides (Courier checks the mails in the  Maildir of users mail directory). IMAP communicates with clear text format by default.</p>
<p><b>Configuring Courier-imaps</b><br />    This enables the communication by encryption with the help of SSL.
<div class="command"><i><b># vim /usr/lib/courier-imap/etc/imapd.cnf</b></i></div>
<p>    Edit the above file for generate the certificate properly. Change the Country, State, Locality, Organization unit, Common name email address etc. Now generate the certificate
<div class="command"><b><i># ./usr/lib/courier-imap/share/mkimapdcert</i></b></div>
<p>    This will create a certificate named imapd.pem.<br />Now start the imapd-ssl service
<div class="command"><i><b># ./usr/lib/courier-imap/libexec/imap-ssl.rc start<br /># netstat -ntlp |grep 993</b></i></div>
<p>    Most client that support Imap with ssl will connect default to the port 993. This port is configurable in &#8220;courier-imap/etc/imapd-ssl&#8221; . Test the configuration by changing the Incoming mail server as imap with ssl. Restart the application and this will prompt to accept the certification for further communication.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/kiranjith.wordpress.com/175/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/kiranjith.wordpress.com/175/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/kiranjith.wordpress.com/175/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/kiranjith.wordpress.com/175/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/kiranjith.wordpress.com/175/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/kiranjith.wordpress.com/175/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/kiranjith.wordpress.com/175/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/kiranjith.wordpress.com/175/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/kiranjith.wordpress.com/175/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/kiranjith.wordpress.com/175/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/kiranjith.wordpress.com/175/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/kiranjith.wordpress.com/175/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/kiranjith.wordpress.com/175/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/kiranjith.wordpress.com/175/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kiranjith.wordpress.com&amp;blog=10300096&amp;post=175&amp;subd=kiranjith&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://kiranjith.wordpress.com/2010/03/15/12-postfix-installing-and-configuring-courier-auth-libs-courier-imap-and-pop3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/378c99d97ee65e156464ca7664e9425b?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">kiranjith</media:title>
		</media:content>
	</item>
		<item>
		<title>11. Postfix MailBox</title>
		<link>http://kiranjith.wordpress.com/2010/03/10/11-postfix-mailbox/</link>
		<comments>http://kiranjith.wordpress.com/2010/03/10/11-postfix-mailbox/#comments</comments>
		<pubDate>Wed, 10 Mar 2010 14:49:00 +0000</pubDate>
		<dc:creator>kiranjith</dc:creator>
				<category><![CDATA[Postfix]]></category>

		<guid isPermaLink="false">http://kiranjith.wordpress.com/2010/03/10/11-postfix-mailbox</guid>
		<description><![CDATA[Postfix supports 2 types of Mail Box formats1. MBOX Format2. MailDir Format MBOX (/var/spool/mail/$user)    MBOX is the default storage method used in the Postfix. This is also the traditional Unix format to store the msgs. This appends the mails to a single file in sequential fashion. This file needs to be locked by any application [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kiranjith.wordpress.com&amp;blog=10300096&amp;post=176&amp;subd=kiranjith&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><!--.command {    padding: 1em;    border: 1px dashed #2f6fab;    color: black;    background-color: #f9f9f9;    line-height: 1.1em;        font-family: Courier New, Courier, mono;        font-size: 12px;        font-style: italic;}.system {    color: black;        font-family: Courier New, Courier, mono;        font-size: 12px;        font-style: italic;}.highlight {    color: #FF0000;                font-family: Georgia, "Times New Roman", Times, serif;                font-size: 12px;                text-decoration: underline;}--><br />Postfix supports 2 types of Mail Box formats<br />1. MBOX Format<br />2. MailDir Format</p>
<p><span style="font-size:large;"><b>MBOX (/var/spool/mail/$user)</b></span><br />    MBOX is the default storage method used in the Postfix. This is also the traditional Unix format to store the msgs. This appends the mails to a single file in sequential fashion. This file needs to be locked by any application for writing into it. In a high utilized servers there may be issues of locking and performance if you are using the MBOX format. Because only one application at a time is able to read and write the file same time. By default postfix delivers mail to the file object in the spool directory. (For Eg: For user root the  MBOX file is /var/spool/mail/root). Most of the mail retrieving technologies such as imap and pop3 base servers are following this directory structure by default.<br /><b>Spooling mails in same MBOX format to users home directory.</b><br />    This will results the mail delivery in users home directory. There is a MAIL variable in users shell that defines the default location of the mails for the MUA. The following command shows the mail variable.
<div class="command"><i><b># echo $MAIL<br /># set |grep -i mail</b></i></div>
<p><b>Moving the MBOX to users home</b>
<div class="command"><i><b># vim  /etc/postfix/main.cf<br /><span style="color:purple;">home_mailbox = Mailbox</span><br /># postfix reload</b></i></div>
<p>    The default behavior of postfix is to spool the mail to the /var/spool/mail directory. By defining the home_mailbox postfix will delivers the mail to the users home directory. The file named &#8220;Mailbox&#8221; will be created by the Postfix daemon.<br />Now change the mail variable for the user(recommended when localy installed MUA such as mutt, mail etc used).
<div class="command"><i><b># export MAIL=~/Mailbox</b></i></div>
<p>Make it permanent (following shows for bash shell)
<div class="command"><i><b># vim /etc/bashrc<br /><span style="color:purple;">export MAIL=~/Mailbox</span></b></i></div>
<p>Now source the file and check the mail variable
<div class="command"><i><b># .   /etc/bashrc<br /># echo $MAIL</b></i></div>
<p>    Now the MUA will be able to get the mail from exact location.</p>
<p><span style="font-size:large;"><b>Maildir</b></span><br />    This is newer Unix standard to route the mail to a directory struchure. Maildir provides the superior scaling as well as &#8220;no locking issues&#8221;.<br /><b>Implementing Maildir</b>
<div class="command"><i><b># vim /etc/postfix/main.cf<br /><span style="color:purple;">home_mailbox = Maildir/</span><br /># postfix reload</b></i></div>
<p>     The above process will create a sub-directory in each users home directory called Maildir. Beneath this directory contains the structure that contains the msgs. Maildir is introduced by Qmail and recognized and supported by almost all the MUAs. Test sending a mail to any user in the system and trace the newly created directory inside the home.
<div class="command"><i><b># ls ~/Maildir</b></i><br /><i><b>cur<br />new<br />tmp</b></i></div>
<p>    These are the three sub directories created by postfix. When a msg is spooled typically copied in to the <i><b>&#8220;tmp&#8221; </b></i>directory. <i><b>&#8220;new&#8221;</b></i> directory contains the unread mails. The mails containing in the directory <i><b>&#8220;new&#8221;</b></i>  has a typical nomenclature for the identification of the msgs.<br />Eg:- <i><b>2214525412.v80osui654.destinedhost.</b></i><br />    In the above file name the initial prefix (2214525412) is the unique identified that corresponds to the time after the epoc time 1970 (command &#8220;date +%s&#8221; shows the current epoc time). &#8220;v80osui654&#8243; is the identified added by postfix and followed by the destination host name of the mailbox.<i><b>&#8220;</b><b>cur&#8221;</b></i> (current) directory contains the read mails<br />The MAILDIR variable has to be set and MAIL variable has to be unset
<div class="command"><i><b># unset MAIL<br /># export MAILDIR=~/Maildir</b></i></div>
<p>    The variable change need to be specified globally. if we are using any MUAs depends upon this variable, else the mails wont be able to process by MUAs.<br /><b>Set the variables globally</b>
<div class="command"><i><b># vim /etc/bashrc<br /><span style="color:purple;">unset MAIL</span><br style="color:purple;" /><span style="color:purple;">export MAILDIR=~/Maildir</span><br /># . /etc/bashrc</b></i></div>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/kiranjith.wordpress.com/176/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/kiranjith.wordpress.com/176/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/kiranjith.wordpress.com/176/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/kiranjith.wordpress.com/176/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/kiranjith.wordpress.com/176/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/kiranjith.wordpress.com/176/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/kiranjith.wordpress.com/176/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/kiranjith.wordpress.com/176/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/kiranjith.wordpress.com/176/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/kiranjith.wordpress.com/176/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/kiranjith.wordpress.com/176/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/kiranjith.wordpress.com/176/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/kiranjith.wordpress.com/176/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/kiranjith.wordpress.com/176/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kiranjith.wordpress.com&amp;blog=10300096&amp;post=176&amp;subd=kiranjith&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://kiranjith.wordpress.com/2010/03/10/11-postfix-mailbox/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/378c99d97ee65e156464ca7664e9425b?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">kiranjith</media:title>
		</media:content>
	</item>
		<item>
		<title>10. Postfix Virtual Domains</title>
		<link>http://kiranjith.wordpress.com/2010/03/08/10-postfix-virtual-domains/</link>
		<comments>http://kiranjith.wordpress.com/2010/03/08/10-postfix-virtual-domains/#comments</comments>
		<pubDate>Mon, 08 Mar 2010 15:11:00 +0000</pubDate>
		<dc:creator>kiranjith</dc:creator>
				<category><![CDATA[Postfix]]></category>

		<guid isPermaLink="false">http://kiranjith.wordpress.com/2010/03/08/10-postfix-virtual-domains</guid>
		<description><![CDATA[    By default postfix has setup to handle few domains, defined by $mydestination. The idea of the virtual domain is to  map the multiple domains to the same server. &#8221; hostname -f &#8221; shows the FQDN also known as canonical domain used by Postfix.Note: The IP address also considers as domain. For eg:- A message [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kiranjith.wordpress.com&amp;blog=10300096&amp;post=177&amp;subd=kiranjith&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><!--.command {    padding: 1em;    border: 1px dashed #2f6fab;    color: black;    background-color: #f9f9f9;    line-height: 1.1em;        font-family: Courier New, Courier, mono;        font-size: 12px;        font-style: italic;}.system {    color: black;        font-family: Courier New, Courier, mono;        font-size: 12px;        font-style: italic;}.highlight {    color: #FF0000;                font-family: Georgia, "Times New Roman", Times, serif;                font-size: 12px;                text-decoration: underline;}--><br />    By default postfix has setup to handle few domains, defined by $mydestination. The idea of the virtual domain is to  map the multiple domains to the same server. <i><b>&#8221; <span style="color:black;">hostname -f</span></b></i> &#8221; shows the FQDN also known as canonical domain used by Postfix.<br />Note: The IP address also considers as domain. For eg:- A message To: user@[10.0.0.1] (The &#8220;[]&#8221; is must). So in this case the IP address is also considered as the domain. This domain is also considered as a part of the canonical domain.<br /><span style="font-size:large;"><b><br />Basic Virtual Domain Configuration</b></span>
<div class="command"><i><b># vim /etc/postfix/main.cf<br /><span style="color:purple;">mydestination = $myhostname, localhost, $mydomain, anewdomain.com, someotherdomain.com</span><br style="color:purple;" /><span style="color:purple;">relay_domains = $mydestination</span><br /># postfix reload</b></i></div>
<p>    Now the messages that destined to the domains listed in the $mydestination will be handled by the server. So messages send to a user at domain that defined at $mydestination will be delivered locally. <br />For Eg:- Mail send to kiran@anewdomain.com and kiran@someotherdomain.com will get deliver to the same user in the host. In other words the list of domains that defined in the $mydestination will be considered to be local and delivers the mail locally.</p>
<p><span style="font-size:large;"><b>Virtual Domains Using Maps For Single Domain</b></span><br />    This scenario is used ideally in a Linux mail server where the local users need to share the different domains, (used in ISP environment).<br /><b>Splitting Local users in to separate domains</b><br />    To do so we have to setup the virtual aliases maps
<div class="command"><i><b># vim /etc/postfix/main.cf<br /><span style="color:purple;">virtual_alias_domains = example.com</span><br style="color:purple;" /><span style="color:purple;">virtual_alias_maps = hash:/etc/postfix/virtual</span></b></i></div>
<p>     virtual_alias_domains tells what domains are needed to be supported by virtaul alias maps
<div class="command"><i><b># vim /etc/postfix/virtual<br /><span style="color:purple;">userdd@example.com    kiran</span><br style="color:purple;" /><span style="color:purple;">dduser@example.com    jam</span><br /># postmap /etc/postfix/virtual</b></i></div>
<p>   The format is as same as in the transport table. In the Left Hand Side we mention the address that need to be mapped and in Right Hand Side we mention the local or remote user mail address to which mail has to be delivered.
<div class="command"><i><b># postfix reload</b></i></div>
<p>Reload the postfix service<i><b><br /></b></i>
<div class="command"><i><b># postconf  | grep virtual_alias_</b></i></div>
<p>    Now test the setting by composing the msg to the user userdd@example.com and dduser@example.com. The msg will be delivered to the local user kiran and jam respectively.</p>
<p><span style="font-size:large;"><b>Virtual Domains Using catch all features.</b></span><br />    In a virtual alias map environment if mail is send to a non-existing Local user in a postfix server the mail will be rejected with the error &#8220;recipient address rejected&#8221; in log file. This situation could be overcome by defining the catchall address for the domain. But these feature will be subjected to catch all the mails that coming to the domain and obviously the server will be filled up with spam mails. So it is not at all considered to be used at production environment.<br /><b>Defining the catch all </b>
<div class="command"><i><b># vim /etc/postfix/main.cf<br /><span style="color:purple;">virtual_alias_domains = example.com</span><br style="color:purple;" /><span style="color:purple;">virtual_alias_maps = hash:/etc/postfix/virtual</span><br /> # vim /etc/postfix/virtual<br /><span style="color:purple;">@example.com    kiran</span><br /># postmap /etc/postfix/virtual</b></i></div>
<p>    Here all the mails that comes to the domain example.com will be routed to user kiran.</p>
<p>The following virtual map file will send the all mails coming to the domain example.com to multiple recipients.
<div class="command"><i><b># vim /etc/postfix/virtual<br /><span style="color:purple;">@example.com    kiran, user1, user2, user3</span></b></i></div>
<p>The following virtual map will send the mails coming to user kiran@example.com to remote domain  kiran@secureserver.com.
<div class="command"><i><b># vim /etc/postfix/virtual<br /><span style="color:purple;">kiran@example.com        kiran@secureserver.com</span></b></i></div>
<p>    <br /><span style="font-size:large;"><b>Virtual alias Maps For Multiple Domains</b></span><br />    The following example shows the configuration of the multiple domains
<div class="command"><i><b># vim  /etc/postfix/main.cf<br /><span style="color:purple;">virtual_alias_domains = firstdomain.com, seconddomain.net, thirddomain.org, fourthdomain.com</span><br /><span style="color:purple;">virtual_alias_maps = hash:/etc/postfix/virtual</span></b></i><br /><b><i><span style="color:blue;"></span></i></b><br /><b><i><span style="color:blue;"># vim /etc/postfix/virtual</span><br />sales@firstdomain.com             kiran<br />hr@seconddomain.net               jam<br />finance@thirddomain.org        jeo<br />project@fourthdomain.com      paul<br />abuse@seconddomain.net        abuse</i></b><br /><i><b># postmap /etc/postfix/virtual</b></i></div>
<p>    This finishes the configuration of the Virtual alias maps
<div class="command"><i><b>#postmap -q abuse@seconddomain.net /etc/postfix/virtual</b></i></div>
<p>    The above command will query the virtual map file for the mapped address.
<div class="command"><i><b># postfix reload</b></i></div>
<p>    Test the settings by sending mails to each and every users in the new domains.<br />While testing this configuration make sure that the proper DNS entry in place.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/kiranjith.wordpress.com/177/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/kiranjith.wordpress.com/177/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/kiranjith.wordpress.com/177/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/kiranjith.wordpress.com/177/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/kiranjith.wordpress.com/177/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/kiranjith.wordpress.com/177/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/kiranjith.wordpress.com/177/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/kiranjith.wordpress.com/177/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/kiranjith.wordpress.com/177/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/kiranjith.wordpress.com/177/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/kiranjith.wordpress.com/177/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/kiranjith.wordpress.com/177/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/kiranjith.wordpress.com/177/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/kiranjith.wordpress.com/177/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kiranjith.wordpress.com&amp;blog=10300096&amp;post=177&amp;subd=kiranjith&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://kiranjith.wordpress.com/2010/03/08/10-postfix-virtual-domains/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/378c99d97ee65e156464ca7664e9425b?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">kiranjith</media:title>
		</media:content>
	</item>
		<item>
		<title>9. Postfix SmartHost and NullClient</title>
		<link>http://kiranjith.wordpress.com/2010/03/04/9-postfix-smarthost-and-nullclient/</link>
		<comments>http://kiranjith.wordpress.com/2010/03/04/9-postfix-smarthost-and-nullclient/#comments</comments>
		<pubDate>Thu, 04 Mar 2010 15:20:00 +0000</pubDate>
		<dc:creator>kiranjith</dc:creator>
				<category><![CDATA[Postfix]]></category>

		<guid isPermaLink="false">http://kiranjith.wordpress.com/2010/03/04/9-postfix-smarthost-and-nullclient</guid>
		<description><![CDATA[SmartHost    SmartHost forwards all the mails that are not destined to the same server. Ideally this feature is used to forward mails to the SmartHost Mail server which can masquerade and relay mails to outer world.Mail Flow example:Local Server -&#62; SmartHost Server -&#62; Outer World    In Local server we defines the SmartHost server. So all [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kiranjith.wordpress.com&amp;blog=10300096&amp;post=178&amp;subd=kiranjith&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><!--.command {    padding: 1em;    border: 1px dashed #2f6fab;    color: black;    background-color: #f9f9f9;    line-height: 1.1em;        font-family: Courier New, Courier, mono;        font-size: 12px;        font-style: italic;}.system {    color: black;        font-family: Courier New, Courier, mono;        font-size: 12px;        font-style: italic;}.highlight {    color: #FF0000;                font-family: Georgia, "Times New Roman", Times, serif;                font-size: 12px;                text-decoration: underline;}--><br /><span style="font-size:large;"><b>SmartHost</b></span><br />    SmartHost forwards all the mails that are not destined to the same server. Ideally this feature is used to forward mails to the SmartHost Mail server which can masquerade and relay mails to outer world.<br /><b>Mail Flow example:</b><br />Local Server -&gt; SmartHost Server -&gt; Outer World<br />    In Local server we defines the SmartHost server. So all the mails that are not destined to the Local server will be forwarded to SmartHost Server. Then SmartHost server forwards the msgs to the outer world.</p>
<p><b>Defining SmartHost</b><br />Initially check that what domains the postfix will accept the mails for.
<div class="command"><i><b># postconf |grep mydestination</b></i></div>
<p>    The output shows the list of the domains that postfix accepts mails for. After defining the SmartHost postfix will forward all the mails to the SmartHost server which are not destined to $mydestination.
<div class="command"><i><b># vim /etc/postfix/main.cf<br /><span style="color:purple;">relayhost = smarthost.server.com</span></b></i></div>
<p>    In this scenario postfix forwards all the mails that are not destined local to smarthost.server.com.<br /><b>Note:</b> In this case the postfix will perform DNS MX record query to the domain smarthost.server.com. Adding square brackets &#8220;[]&#8221; will skip the MX record query and delivers the msgs directly.<br /><i><b>eg: relay_host = [mail1.smarthost.server.com]</b></i>
<div class="command"><i><b># postconf |grep relayhost</b></i></div>
<p><i><b># postfix reload</b></i><br />Verify the configuration and reload the postfix service<br />    Test the configuration by sending mails to outside using this Local Server.Examine the Logs in the Local server as well as in the SmartHost server.</p>
<p><span style="font-size:large;"><b>NullClient</b></span><br />    NullClient forwards all the mails including locally generated to the defined server. NullClient never receives any mails.<br /><b>Mail Flow Example:</b><br />internet -&gt; Mail Server exposed Internet -&gt; Internel Mail Server<br />    From any internet Box the Mail server Exposed to Internet will accept the mails and Using the NullCLient configuration all the mails will be forwarded to Internal Mail Server.</p>
<p><b>Configuring the NullClient</b><br />In the above mail flow diagram the configuration come at the Mail server exposed to Internet
<div class="command"><i><b># vim /etc/postfix/main.cf<br /><span style="color:purple;">mydestination = </span><br style="color:purple;" /><span style="color:purple;">local_transport = error:Local Mailing is Disabled</span><br style="color:purple;" /><span style="color:purple;">relayhost = smarthost.domain.com</span></b></i></div>
<p>mydestination = &#8220;nothing&#8221; This tells the postfix that we are not handling mails for any domains<br />local_transport = error:Local Mailing is Disabled  tells that postfix is not handling any of the local mails too. <br />relayhost tells postfix now to forward all the mails destined local or remote to the SmartHost server defined. Make sure that the SmartHost server has configured to receive the mails for.<br /><b>Note:</b><br />It is &#8220;not mandatory&#8221; that in a Null Client configuration there should be a &#8220;relayhost&#8221;. If we are not mentioning any smarthost Postfix will attempt to resolve the MX of the destination of the mail and sends the mail directly.<br />Update master.cf
<div class="command"><i><b># vim master.cf<br /><span style="color:purple;"># local     unix        n    n    -    -    local</span></b></i></div>
<p>Comment the above derivative to disable the &#8220;local&#8221; transport feature of Postfix (local mailing).
<div class="command"><i><b># postfix reload</b></i></div>
<p>    Reload the postfix configuration. Now the postfix server will act as Null Client and all the mails that generates will be forwarded to the smarthost defined. Test the configuration by sending the mail &#8220;from&#8221; and &#8220;to&#8221; to the NullClient host and check the logs.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/kiranjith.wordpress.com/178/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/kiranjith.wordpress.com/178/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/kiranjith.wordpress.com/178/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/kiranjith.wordpress.com/178/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/kiranjith.wordpress.com/178/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/kiranjith.wordpress.com/178/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/kiranjith.wordpress.com/178/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/kiranjith.wordpress.com/178/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/kiranjith.wordpress.com/178/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/kiranjith.wordpress.com/178/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/kiranjith.wordpress.com/178/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/kiranjith.wordpress.com/178/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/kiranjith.wordpress.com/178/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/kiranjith.wordpress.com/178/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kiranjith.wordpress.com&amp;blog=10300096&amp;post=178&amp;subd=kiranjith&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://kiranjith.wordpress.com/2010/03/04/9-postfix-smarthost-and-nullclient/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/378c99d97ee65e156464ca7664e9425b?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">kiranjith</media:title>
		</media:content>
	</item>
		<item>
		<title>8. Postfix Transport Table &#8211; SMTP Routing</title>
		<link>http://kiranjith.wordpress.com/2010/03/03/8-postfix-transport-table-smtp-routing/</link>
		<comments>http://kiranjith.wordpress.com/2010/03/03/8-postfix-transport-table-smtp-routing/#comments</comments>
		<pubDate>Wed, 03 Mar 2010 15:33:00 +0000</pubDate>
		<dc:creator>kiranjith</dc:creator>
				<category><![CDATA[Postfix]]></category>

		<guid isPermaLink="false">http://kiranjith.wordpress.com/2010/03/03/8-postfix-transport-table-smtp-routing</guid>
		<description><![CDATA[    This feature allows to route messages to additional domains according to the Map defined. Here Postfix accepts the message and rather than consulting the DNS for MX record it routes the mail by checking the transport map. In sendmail this feature is called mailertable Transport MapThe map format is as follows Left Handside                    [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kiranjith.wordpress.com&amp;blog=10300096&amp;post=179&amp;subd=kiranjith&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><!--.command {    padding: 1em;    border: 1px dashed #2f6fab;    color: black;    background-color: #f9f9f9;    line-height: 1.1em;        font-family: Courier New, Courier, mono;        font-size: 12px;        font-style: italic;}.system {    color: black;        font-family: Courier New, Courier, mono;        font-size: 12px;        font-style: italic;}.highlight {    color: #FF0000;                font-family: Georgia, "Times New Roman", Times, serif;                font-size: 12px;                text-decoration: underline;}--><br />    This feature allows to route messages to additional domains according to the Map defined. Here Postfix accepts the message and rather than consulting the DNS for MX record it routes the mail by checking the transport map. In sendmail this feature is called mailertable </p>
<p><b>Transport Map</b><br />The map format is as follows
<div class="command"><b><i>Left Handside                    Right Hand Side</i></b><br /><b><i>user@domain.com                 transport:nexthope        <br />domain.com                       transport:nexthope<br />host1.domain.com                 transport:nexthope</i></b></div>
<p>   In the above format the Right Hand side defines the list of the domains that Postfix accepts the messages and routes. In Left Hand Side defines the transport mechanism that used and the destination of the mails.</p>
<p><b>Setting up the Transport Mechanism to Route the messages:</b><br />Check the derivative that supports transport map
<div class="command"><i><b># postconf |grep transport_maps</b></i></div>
<p>    transport_maps is the derivative that enables the transport map. By default the derivative will be undefined. The types of transport that supported by the Postfix can be determined by examining the &#8220;/etc/postfix/master.cf&#8221; file. smtp, local, error etc are the types of the transport defined.<br />Create the transport map file
<div class="command"><i><b># vim /etc/postfix/transport<br /><span style="color:purple;">sales.domain.com           smtp:[internalhost1.domain.com]</span><br style="color:purple;" /><span style="color:purple;">tax.domain.com              smtp:[internalhost2.domain.com]</span><br style="color:purple;" /><span style="color:purple;">finance.domain.com       smtp:newdomain.com</span></b></i></div>
<p>    The Left hand side we have mentioned the &#8220;mails coming from domains&#8221; which has to be routed (sales.domain.com) and in the Right hand side we have mentioned the transported which has to be use (smtp) and the destination machine (internalhost1.domain.com).<br /><b>Note:</b> &#8220;While using the transport table, when mails subjected to route, to disable the MX lookup by postfix for the destination domains we have to add the recieving domains inside the square bracket (&#8220;[]&#8220;). This will tell Postfix to &#8220;not perform&#8221; the MX lookup of the destined domains.
<div class="command"><i><b># postmap /etc/postfix/transport</b></i></div>
<p>   Now we have generated the transport map file named transport.db<br />Enable the transport map feature in the postfix 
<div class="command"><i><b># vim  /etc/postfix/main.cf<br /><span style="color:purple;">transport_maps = hash:/etc/postfix/transport</span><br /># postfix reload</b></i></div>
<p>    Now we have integrated the transport map with the postfix.</p>
<p><b>Testing the configuration</b>
<div class="command"><i><b># postconf |grep transport_maps</b></i></div>
<p>    Check the maps are defined correctly.<br />Make sure that the MX record for all the domains that needs to route the mail to another server points to the Mail Routing Server. Now try sending mails destined to domains sales.domain.com, tax.domain.com, finance.domain.com. According to the map defined the Mail Routing server will route the mails to respective host. It is understood that the receiving host has configured to accept the mails from the Mail Router.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/kiranjith.wordpress.com/179/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/kiranjith.wordpress.com/179/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/kiranjith.wordpress.com/179/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/kiranjith.wordpress.com/179/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/kiranjith.wordpress.com/179/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/kiranjith.wordpress.com/179/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/kiranjith.wordpress.com/179/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/kiranjith.wordpress.com/179/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/kiranjith.wordpress.com/179/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/kiranjith.wordpress.com/179/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/kiranjith.wordpress.com/179/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/kiranjith.wordpress.com/179/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/kiranjith.wordpress.com/179/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/kiranjith.wordpress.com/179/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kiranjith.wordpress.com&amp;blog=10300096&amp;post=179&amp;subd=kiranjith&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://kiranjith.wordpress.com/2010/03/03/8-postfix-transport-table-smtp-routing/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/378c99d97ee65e156464ca7664e9425b?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">kiranjith</media:title>
		</media:content>
	</item>
		<item>
		<title>7. Postfix Relay Domains</title>
		<link>http://kiranjith.wordpress.com/2010/03/02/7-postfix-relay-domains/</link>
		<comments>http://kiranjith.wordpress.com/2010/03/02/7-postfix-relay-domains/#comments</comments>
		<pubDate>Tue, 02 Mar 2010 16:03:00 +0000</pubDate>
		<dc:creator>kiranjith</dc:creator>
				<category><![CDATA[Postfix]]></category>

		<guid isPermaLink="false">http://kiranjith.wordpress.com/2010/03/02/7-postfix-relay-domains</guid>
		<description><![CDATA[      This is an another way of enabling relaying in postfix. By default Postfix will relay mails for the domains that specified in the &#8220;mydestination&#8221; derivatives (Postfix considers the mail that are originated locally). If we need to add more domains to be relayed through the same server we can user &#8220;relay_domains&#8221; as well as [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kiranjith.wordpress.com&amp;blog=10300096&amp;post=180&amp;subd=kiranjith&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><!--.command {    padding: 1em;    border: 1px dashed #2f6fab;    color: black;    background-color: #f9f9f9;    line-height: 1.1em;        font-family: Courier New, Courier, mono;        font-size: 12px;        font-style: italic;}.system {    color: black;        font-family: Courier New, Courier, mono;        font-size: 12px;        font-style: italic;}.highlight {    color: #FF0000;                font-family: Georgia, "Times New Roman", Times, serif;                font-size: 12px;                text-decoration: underline;}--><br />      This is an another way of enabling relaying in postfix. By default Postfix will relay mails for the domains that specified in the &#8220;mydestination&#8221; derivatives (Postfix considers the mail that are originated locally). If we need to add more domains to be relayed through the same server we can user &#8220;relay_domains&#8221; as well as &#8220;mydestination&#8221; derivatives.<br />By default &#8220;relay_domains&#8221; will be configured with mydestination.<br />i.e,
<div class="command">
<div style="color:purple;"><i><b>relay_domains = $mydestination</b></i></div>
</div>
<p>By using &#8220;relay_domains&#8221; derivative postfix is configured to relay mail from domains defined.<br /><b>For example:</b>
<div class="command">
<div style="color:blue;"><i><b># vim main.cf</b></i></div>
<div style="color:purple;"><i><b>relay_domains = $mydestination, new1domain.com, new2nd.domain.com</b></i></div>
<div style="color:purple;"><i><b># smtpd_client_restrictions = </b></i></div>
</div>
<p>Comment out the above derivative.The smtpd_client_restrictions parameter restricts what clients this system accepts SMTP connections from. By default, this restriction is applied when the client sends the RCPT TO command, the RCPT TO error in the log file points this error. 
<div class="command">
<div style="color:blue;"><b><i># postfix reload</i></b></div>
<div style="color:blue;"><b><i># ps -ef |grep master</i></b></div>
</div>
<p>The above change will allow postfix to relay the mails from new1domain.com &amp; new2nd.domain.com domains.&#8221;smtpd_client_restrictions&#8221; makes the policy to reject the relay from other domains by default. <br /><b>Note:</b> All the subdomains will be relayed if a domain is specified in &#8220;relay_domains&#8221;. For eg:- if newdomain.com is specified then postfix server will allow relaying all the subdomains like host1.newdomain.com, host2.newdomain.com etc.</p>
<p><b><span style="font-size:large;">Relay Domains with Maps</span></b><br />      Enabling the maps makes MTA to query the data from a database machanism. If a server is hosting many domains and practically entering each domain name in the configuration file is not possible, then we can use database maps for fast query and easier management.</p>
<p><b>Defining Rlay_domains Maps</b>
<div class="command">
<div style="color:blue;"><i><b># rpm -qa |grep db</b></i></div>
</div>
<p>Initially check for the Berkley DB packages are installed. These packages will be used by the postfix for database support.
<div class="command">
<div style="color:blue;"><i><b># vim /etc/postfix/main.cf</b></i></div>
<div style="color:purple;"><i><b>relay_domains = $mydestination, hash:/etc/postfix/relaydomains</b></i></div>
</div>
<p>  Now postfix will refer the db file  &#8220;/etc/postfix/relaydomains.db&#8221; for relaying.
<div class="command">
<div style="color:blue;"><i><b># vim /etc/postfix/relaydomains</b></i></div>
<div style="color:purple;"><i><b>domain1.com  </b></i></div>
<div style="color:purple;"><i><b>domain2.com</b></i></div>
<div style="color:purple;"><i><b>domain3.com</b></i></div>
<div style="color:purple;"><i><b>domain4.com</b></i></div>
<div style="color:purple;"><i><b>domain5.com</b></i></div>
<div style="color:blue;"><i><b># postmap /etc/postfix/relaydomains</b></i></div>
</div>
<p>&#8220;postmap&#8221; generates the db file with respect to /etc/postfix/relaydomains. <br /><b>Note: </b>The postmap utility will show error while running. It is because postmap expects the keys and values. The map file consist of keys and values separated with a white space. In our case we have only mentioned the keys. In a db map file Postmap expects the values for each key at right hand side. In this case the error is ignorable because this is the rare case that postfix will not read the &#8220;values&#8221; in the right hand side. Even if it shows the error the db file will be created.
<div class="command">
<div style="color:blue;"><i><b># postfix reload</b></i></div>
<p><i><b>#ps -ef |grep master </b></i></div>
<p>  Now we will be able to relay mails from all the domains defined in the &#8220;relaydomains&#8221; file. After initializing Postfix a new entry to the file along with the postmap command is sufficient for postfix to relay to the newly added domain without restarting the service.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/kiranjith.wordpress.com/180/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/kiranjith.wordpress.com/180/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/kiranjith.wordpress.com/180/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/kiranjith.wordpress.com/180/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/kiranjith.wordpress.com/180/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/kiranjith.wordpress.com/180/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/kiranjith.wordpress.com/180/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/kiranjith.wordpress.com/180/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/kiranjith.wordpress.com/180/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/kiranjith.wordpress.com/180/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/kiranjith.wordpress.com/180/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/kiranjith.wordpress.com/180/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/kiranjith.wordpress.com/180/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/kiranjith.wordpress.com/180/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kiranjith.wordpress.com&amp;blog=10300096&amp;post=180&amp;subd=kiranjith&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://kiranjith.wordpress.com/2010/03/02/7-postfix-relay-domains/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/378c99d97ee65e156464ca7664e9425b?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">kiranjith</media:title>
		</media:content>
	</item>
	</channel>
</rss>
