<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Website Design West Midlands</title>
	<atom:link href="http://www.sant-media.co.uk/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.sant-media.co.uk</link>
	<description>Sant Media Graphic Design</description>
	<lastBuildDate>Wed, 16 May 2012 10:11:19 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Mod_userdir URLs no longer work since Mod_ruid added</title>
		<link>http://www.sant-media.co.uk/2012/05/mod_userdir-urls-no-longer-work-since-mod_ruid-added/</link>
		<comments>http://www.sant-media.co.uk/2012/05/mod_userdir-urls-no-longer-work-since-mod_ruid-added/#comments</comments>
		<pubDate>Wed, 16 May 2012 10:10:43 +0000</pubDate>
		<dc:creator>Steve</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[apache]]></category>

		<guid isPermaLink="false">http://www.sant-media.co.uk/?p=2766</guid>
		<description><![CDATA[Just a quick one for today. I found that after recompiling apache with mod_ruid that mod_userdir is broken and would no longer serve pages from the customer&#8217;s vhost domain, and would only serve them from the server&#8217;s main URL. http://customerdomain/~customerusername will no longer work http://defaultserverhostname/~customerusername continues to work normally This is due to permissions issues [...]]]></description>
			<content:encoded><![CDATA[<p>Just a quick one for today. I found that after recompiling apache with mod_ruid that mod_userdir is broken and would no longer serve pages from the customer&#8217;s vhost domain, and would only serve them from the server&#8217;s main URL.</p>
<p>http://customerdomain/~customerusername will no longer work</p>
<p>http://defaultserverhostname/~customerusername continues to work normally</p>
<p>This is due to permissions issues since the requests are now being served by the nobody account.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sant-media.co.uk/2012/05/mod_userdir-urls-no-longer-work-since-mod_ruid-added/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to update NATS Aware using a Mac without losing saved routes</title>
		<link>http://www.sant-media.co.uk/2012/02/how-to-update-nats-aware-using-a-mac-without-losing-saved-routes/</link>
		<comments>http://www.sant-media.co.uk/2012/02/how-to-update-nats-aware-using-a-mac-without-losing-saved-routes/#comments</comments>
		<pubDate>Mon, 27 Feb 2012 08:57:15 +0000</pubDate>
		<dc:creator>Steve</dc:creator>
				<category><![CDATA[Personal]]></category>
		<category><![CDATA[flying]]></category>

		<guid isPermaLink="false">http://www.sant-media.co.uk/?p=2713</guid>
		<description><![CDATA[According to www.airspaceaware.com in order to update the NATS Aware unit using a Mac, you simply overwrite the SD card with the contents of the airspace update. More specifically, you download the latest airspace update file which will be named something like Airac[month][year].update e.g. Airac0212.update The problem Using the above example, we rename Airac0212.update, to [...]]]></description>
			<content:encoded><![CDATA[<p>According to <a href="http://www.airspaceaware.com" target="_blank">www.airspaceaware.com</a> in order to update the NATS Aware unit using a Mac, you simply overwrite the SD card with the contents of the airspace update.</p>
<p>More specifically, you download the latest airspace update file which will be named something like</p>
<p>Airac[month][year].update</p>
<p>e.g. Airac0212.update</p>
<h3>The problem</h3>
<p>Using the above example, we rename Airac0212.update, to Airac0212.zip, unpack it, and then copy the contents of the resulting Airac0212 directory into the root of the SD card. Simple enough, but this totally destroys any saved routes on the device.</p>
<h3><a href="http://www.sant-media.co.uk/wp-content/uploads/2012/02/route.jpg" rel="prettyPhoto"><img class="alignright size-medium wp-image-2714" title="NATS Aware Routes Datafile" src="http://www.sant-media.co.uk/wp-content/uploads/2012/02/route-300x206.jpg" alt="NATS Aware Routes Datafile" width="300" height="206" /></a>The solution</h3>
<p>I found that by copying the file</p>
<p>/Data/User/Route</p>
<p>from the SD card to somewhere safe (shown opposite) &#8211; then performing the update as usual, and then finally copying my old Route file back onto the SD card, that any saved routes are preserved. I notified Airbox Aerospace of this, and they confirmed that &#8220;all seems to work fine with this process&#8221;.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sant-media.co.uk/2012/02/how-to-update-nats-aware-using-a-mac-without-losing-saved-routes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Track down cross account Symlinks on Linux server</title>
		<link>http://www.sant-media.co.uk/2012/02/track-down-cross-account-symlinks-on-linux-server/</link>
		<comments>http://www.sant-media.co.uk/2012/02/track-down-cross-account-symlinks-on-linux-server/#comments</comments>
		<pubDate>Sun, 26 Feb 2012 18:16:23 +0000</pubDate>
		<dc:creator>Steve</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Security]]></category>

		<guid isPermaLink="false">http://www.sant-media.co.uk/?p=2705</guid>
		<description><![CDATA[One common exploit hackers try is this to create lots of symlinks to commonly used configuration files in other user&#8217;s accounts. Every PHP based CMS has configuration files somewhere containing database passwords and the like. The hacker has a list of these commonly found files. Once he&#8217;s hacked your account, there&#8217;s a good chance he [...]]]></description>
			<content:encoded><![CDATA[<p>One common exploit hackers try is this to create lots of symlinks to commonly used configuration files in other user&#8217;s accounts. Every PHP based CMS has configuration files somewhere containing database passwords and the like. The hacker has a list of these commonly found files.</p>
<p>Once he&#8217;s hacked your account, there&#8217;s a good chance he will also be able to get a list of all linux users on the server. Then, all he has to do is look for the commonly found configuration files in each users account.</p>
<p>Hacker, being lazy, will just try to create symlinks to the files in question, whether they exist or not. Now, if the hacker has used a kiddie script the chances are you have already detected his attack &#8211; but just in case he&#8217;s a little more resourceful, then here&#8217;s how you can search all cpanel accounts for evidence of Symlinks to files outside of each respective cpanel account:</p>
<h2>Apache Directives to prevent Symlink Attacks</h2>
<p>In WHM <em>Main &gt;&gt; Service Configuration &gt;&gt; Apache Configuration &gt;&gt; Global Configuration </em> you will find the settings for <strong>Directory “/” Options</strong>.</p>
<p>To maintain a more secure server, you should only tick SymLinksIfOwnerMatch and NOT FollowSymLinks. This &#8216;might&#8217; break some things depending on what you are trying to do legitimiaterly, but SymLinksIfOwnerMatch will only allow Apache to follow a symlink if the target has the same owner as the symlink.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sant-media.co.uk/2012/02/track-down-cross-account-symlinks-on-linux-server/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The true purpose of design</title>
		<link>http://www.sant-media.co.uk/2012/02/true-purpose-design/</link>
		<comments>http://www.sant-media.co.uk/2012/02/true-purpose-design/#comments</comments>
		<pubDate>Sun, 26 Feb 2012 09:58:33 +0000</pubDate>
		<dc:creator>Steve</dc:creator>
				<category><![CDATA[Graphic Design]]></category>

		<guid isPermaLink="false">http://www.sant-media.co.uk/?p=2586</guid>
		<description><![CDATA[Design failure Regardless of the primary or secondary function of a design, bad design is always obvious, especially when you encounter it in your day to day life. An instruction manual that makes it awkward to find essential information, a website that makes it incredibly hard to find essential information, or a fashion magazine with [...]]]></description>
			<content:encoded><![CDATA[<h2>Design failure</h2>
<p><a href="http://www.sant-media.co.uk/wp-content/uploads/2012/02/passfail.jpg" rel="prettyPhoto"><img class="alignright size-medium wp-image-2587" title="Bad and Good Design" src="http://www.sant-media.co.uk/wp-content/uploads/2012/02/passfail-252x300.jpg" alt="Bad and Good Design" width="252" height="300" /></a>Regardless of the primary or secondary function of a design, bad design is always obvious, especially when you encounter it in your day to day life.</p>
<p>An instruction manual that makes it awkward to find essential information, a website that makes it incredibly hard to find essential information, or a fashion magazine with no glamorous pictures are all unlikely to make you a repeat customer (unless you like that sort of thing!).<!--more--></p>
<h2>Design success</h2>
<p>When you interact with anything, be it a physical object or something that is based solely upon the transfer of information and aesthetics (such as advertising), your experience of that interaction is the most important factor in determining your emotional involvement with that thing.</p>
<p>In order to attract people to your brand, event, cause or whatever, there has to be a balance struck between aesthetic beauty and the ability to transfer information effectively. This is what I always aim to do. Simple and straightforward design, that doesn&#8217;t loose sight of its purpose (something that happens all too often, and for no other reason than to boost the designer&#8217;s ego).</p>
<p>I&#8217;m sure I haven&#8217;t told you anything here that you didn&#8217;t already appreciate, but it is worth sitting down and considering these aspects of design before embarking on any project. Then, by working together, I&#8217;m confident we can produce the successful designs that your business needs to prosper.</p>
<p>Steve Sant</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sant-media.co.uk/2012/02/true-purpose-design/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Grit Free Soda Blasting</title>
		<link>http://www.sant-media.co.uk/2012/02/grit-free-soda-blasting/</link>
		<comments>http://www.sant-media.co.uk/2012/02/grit-free-soda-blasting/#comments</comments>
		<pubDate>Sat, 25 Feb 2012 18:08:52 +0000</pubDate>
		<dc:creator>Steve</dc:creator>
				<category><![CDATA[Web Design]]></category>
		<category><![CDATA[websites]]></category>

		<guid isPermaLink="false">http://www.sant-media.co.uk/?p=2526</guid>
		<description><![CDATA[GritFree Blasting is the brainchild of Peter Wardley. Peter sought an outlet more focussed on automotive, marine and aviation restoration, with an informal, fun, yet informative approach. It all started early in 2010, but due to the popularity of Soda Blasting, Ecoblast often left us to get on with the site. This was fun in [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.gritfree.co.uk" target="_blank"><img class="alignright size-full wp-image-2528" title="Grit Free Soda Blasting" src="http://www.sant-media.co.uk/wp-content/uploads/2012/02/gritfree-shiney.png" alt="Grit Free Soda Blasting" width="300" height="105" /></a>GritFree Blasting is the brainchild of Peter Wardley. Peter sought an outlet more focussed on automotive, marine and aviation restoration, with an informal, fun, yet informative approach. It all started early in 2010, but due to the popularity of Soda Blasting, Ecoblast often left us to get on with the site. This was fun in many ways as it allowed us to fit more creative work into the job at our leisure.</p>
<p><img class="alignright size-full wp-image-2529" title="Baking Soda Molecule" src="http://www.sant-media.co.uk/wp-content/uploads/2012/02/molecule.jpg" alt="Baking Soda Molecule" width="300" height="180" />Despite only recently going live with the website, the GritFree team had been busy throughout 2011 and the <a href="http://www.gritfree.co.uk/topics/case-studies/" target="_blank">Soda Blasting examples</a> shown in their Portfolio page demonstrate how well the process is trusted by prestige customers.</p>
<p>Unlike shot blasting, the GritFree process is non-destructive. It was important to emphasise this, so graphics that were originally developed for parent company Ecoblast UK Ltd were re-used.</p>
<p>The job required a logo to be developed from the Ecoblast brand, some custom illustrations, and some original photography!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sant-media.co.uk/2012/02/grit-free-soda-blasting/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SORBS SUCKS</title>
		<link>http://www.sant-media.co.uk/2012/02/sorbs-sucks/</link>
		<comments>http://www.sant-media.co.uk/2012/02/sorbs-sucks/#comments</comments>
		<pubDate>Thu, 16 Feb 2012 10:08:07 +0000</pubDate>
		<dc:creator>Steve</dc:creator>
				<category><![CDATA[General Tech Tips]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Fail]]></category>
		<category><![CDATA[SORBS]]></category>

		<guid isPermaLink="false">http://www.sant-media.co.uk/?p=2213</guid>
		<description><![CDATA[Why do SORBS Suck? More to the point, why am I writing this negative blog post? I&#8217;m writing it because SORBS has demonstrated itself to be wholly unprofessional, slow, and inaccurate, and are causing real problems for genuine ISPs, and countless people. 7 days ago the hosting company I work for found a client who&#8217;s [...]]]></description>
			<content:encoded><![CDATA[<p>Why do SORBS Suck? More to the point, why am I writing this negative blog post? I&#8217;m writing it because SORBS has demonstrated itself to be wholly unprofessional, slow, and inaccurate, and are causing real problems for genuine ISPs, and countless people.</p>
<p>7 days ago the hosting company I work for found a client who&#8217;s site had been hacked. It was quite nasty, and a perl script was pumping out spam at a pace. Within an hour or so, we had tracked it down and got it shut down. Too late. We had appeared on a couple of blacklists, including spamhause and spamcop, and SORBS (just 46 hits).</p>
<p>Within a few hours, the world recognised that we had stemmed the problem, and all was fine again&#8230; or was it&#8230;</p>
<p>SORBS still listed us. We tried to remove ourselves. SORBS <span style="font-size: 15.417px;"> has to be THE worst system I&#8217;ve ever used, ever. And I&#8217;ve used some pretty bad systems. </span><span style="font-size: 15.417px;">If you&#8217;re going to allow companies to use your data to make decisions about whether or not to deliver email you at least owe it to run a service that isn&#8217;t completely broken.</span><span style="font-size: 15.417px;"> </span></p>
<p><span style="font-size: 15.417px;"><!--more-->Let me give you concrete examples:</span></p>
<p><span style="font-size: 15.417px;">We couldn&#8217;t remember the password on an old account. Our fault, but not an uncommon issue, a quick password reset should do it right? </span><span style="font-size: 15.417px;">The system wouldn&#8217;t let us reset it.</span></p>
<p><span style="font-size: 15.417px;">So, we created a new account. The confirmation email never arrived, I don&#8217;t think it was dispatched.</span></p>
<p><span style="font-size: 15.417px;">We attempted on 5 different occasions over a 3 day period to request a reset.</span></p>
<p><span style="font-size: 15.417px;">The system would take ages to deliver a message of the format;</span></p>
<p>&#8220;Confirmation email resent to: &lt;BLANKNESS&gt;&#8221;</p>
<p>Notice the blankness, it&#8217;s like the DB had timed out and it hadn&#8217;t got the value, or didn&#8217;t know it?!</p>
<p><span style="font-size: 15.417px;">o.k, this is ridiculous, I need support. But wait! You need an account! How delightful! I&#8217;m stuck in a catch 22.</span></p>
<p><span style="font-size: 15.417px;">We tried the &#8220;Talkback to SORBS&#8221; &#8211; but this throws a database correction error, and has done for the last week. Why bother having the link there if you&#8217;re not going to run it?</span></p>
<p><span style="font-size: 15.417px;">In the end we managed to find our old username/password otherwise we would have had to have waited however many days for the old account that you couldn&#8217;t confirm to drop off the system so that we could try again, naturally with little chance it&#8217;d actually work.</span></p>
<p><span style="font-size: 15.417px;">We loogged in, started the delisting process to be told I don&#8217;t have access to perform a delisting?! Having jumped through all these hoops, the SSL crap, the gammy signup, the slowness/timeouts, the broken links, now having authenticated with this steaming POS we don&#8217;t have the authority?!</span></p>
<p><span style="font-size: 15.417px;">It&#8217;s not like we are a tinpot organisation, RIPE can verify that a pretty sizeable IP block belongs to us.</span></p>
]]></content:encoded>
			<wfw:commentRss>http://www.sant-media.co.uk/2012/02/sorbs-sucks/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>ConfigServer Exploit Scanner &#8211; external perl script to run upon detection of a match</title>
		<link>http://www.sant-media.co.uk/2012/01/configserver-exploit-scanner-external-script-to-run-upon-detection-of-a-match/</link>
		<comments>http://www.sant-media.co.uk/2012/01/configserver-exploit-scanner-external-script-to-run-upon-detection-of-a-match/#comments</comments>
		<pubDate>Sat, 28 Jan 2012 19:40:22 +0000</pubDate>
		<dc:creator>Steve</dc:creator>
				<category><![CDATA[Security]]></category>
		<category><![CDATA[config server]]></category>
		<category><![CDATA[CXS]]></category>

		<guid isPermaLink="false">http://www.sant-media.co.uk/?p=2210</guid>
		<description><![CDATA[One very useful option recently added to CXS is &#8211;script For example, I am currently using something like: /usr/sbin/cxs &#8211;report /var/log/cxs.scan &#8211;logfile /var/log/cxs.log &#8211;mail reports@myhost.co.uk &#8211;vir -I /etc/cxs/cxs.ignore &#8211;options mMOfSGChednWZDR &#8211;script /root/cxswatchscript.sh &#8211;xtra /etc/cxs/cxs.xtra -Z &#8211;sum -F 200000 -C /var/clamd -T 10 -B &#8211;allusers the script defined above, /root/cxswatchscript.sh, receives 4 arguments from CXS $1 [...]]]></description>
			<content:encoded><![CDATA[<p>One very useful option recently added to CXS is &#8211;script</p>
<p>For example, I am currently using something like:</p>
<p>/usr/sbin/cxs &#8211;report /var/log/cxs.scan &#8211;logfile /var/log/cxs.log &#8211;mail reports@myhost.co.uk &#8211;vir -I /etc/cxs/cxs.ignore &#8211;options mMOfSGChednWZDR &#8211;script /root/cxswatchscript.sh &#8211;xtra /etc/cxs/cxs.xtra -Z &#8211;sum -F 200000 -C /var/clamd -T 10 -B &#8211;allusers</p>
<p>the script defined above, /root/cxswatchscript.sh, receives 4 arguments from CXS</p>
<p>$1 = filename<br />
$2 = option triggered<br />
$3 = message reported<br />
$4 = account name</p>
<p><!--more--></p>
<p>As I wasn&#8217;t sure if I could get away with running a perl script directly, I use cxswatchscript.sh as a wrapper. cxswatchscript.sh contains:</p>
<p>&nbsp;</p>
<p>Then cxswatchscript.pl contains:</p>
<p>The reason I don&#8217;t use the &#8220;Option Triggered&#8221; argument (the second one) is that ClamAV also picks up some javasript viruses, and while these things might technically be a virus, they don&#8217;t pose a threat to the server, and I wouldn&#8217;t want to suspend a user account based on finding one. The perl script allows us to be far more selective in the conditions that lead to a suspension.</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sant-media.co.uk/2012/01/configserver-exploit-scanner-external-script-to-run-upon-detection-of-a-match/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ConfigServer Exploit Scanner &#8211; Individual User Warning Email Script</title>
		<link>http://www.sant-media.co.uk/2012/01/configserver-exploit-scanner-individual-user-warning-email-script/</link>
		<comments>http://www.sant-media.co.uk/2012/01/configserver-exploit-scanner-individual-user-warning-email-script/#comments</comments>
		<pubDate>Tue, 24 Jan 2012 20:41:32 +0000</pubDate>
		<dc:creator>Steve</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[ConfigServer]]></category>
		<category><![CDATA[CXS]]></category>
		<category><![CDATA[Perl]]></category>

		<guid isPermaLink="false">http://www.sant-media.co.uk/?p=2199</guid>
		<description><![CDATA[Parse the CXS Log file for warnings, and email your customers with details of the Malware found in their accounts via a Perl script. Got ConfigServer Exploit Scanner &#8211; CXS &#8211; installed on your cPanel/WHM server? Doing a full server scan every now and then, and getting swamped with the reports? Want a script that [...]]]></description>
			<content:encoded><![CDATA[<p>Parse the CXS Log file for warnings, and email your customers with details of the Malware found in their accounts via a Perl script.</p>
<ul>
<li>Got ConfigServer Exploit Scanner &#8211; CXS &#8211; installed on your cPanel/WHM server?</li>
<li>Doing a full server scan every now and then, and getting swamped with the reports?</li>
<li>Want a script that will trawl the reports, and email the cpanel users with their problems automatically?</li>
</ul>
<p>Then you came to the right place!<!--more--></p>
<h2>Requirements</h2>
<p>You need to have CXS installed, and you need to be generating a Scan Report Log file after your periodic scan. This is the file that is in this sort of format:</p>
<p><strong>Jan 21 02:34:45 apollo cxs[526881]: ['/home/username/public_html/thingybob.info/adsense/volume1.zip'] &#8211; ClamAV detected virus = [HTML.Phishing.Bank-581]</strong></p>
<p>It&#8217;s important to ensure this file is truncated before each CXS run, otherwise you will be sending out an ever increasing number of warning emails each week!</p>
<p>This Perl script also uses a couple of Perl modules that are normally available by default &#8211; Email::Valid and MIME::Lite</p>
<p>That&#8217;s it!</p>
<p>Just pop the script somewhere safe, and cron it to run a safe time after your cxs scan is schedules to run (to make sure it parses the completed log file). It will email (via Sendmail) a report to each cPanel user (via the cPanel account&#8217;s contact email address) with their affected files in an attached text file.</p>
<h2>Version 2!</h2>
<p><strong>This version is now aware of resellers, and will email the reseller instead of the cpanel user directly.</strong></p>
<p>Oh, yes, and obviously, you use this entirely at your own risk &#8211; absolutely at your own risk!!!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sant-media.co.uk/2012/01/configserver-exploit-scanner-individual-user-warning-email-script/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Retry timeout exceeded &#8211; Exim greylist problem</title>
		<link>http://www.sant-media.co.uk/2011/11/retry-timeout-exceeded-exim-greylist-problem/</link>
		<comments>http://www.sant-media.co.uk/2011/11/retry-timeout-exceeded-exim-greylist-problem/#comments</comments>
		<pubDate>Wed, 16 Nov 2011 12:02:03 +0000</pubDate>
		<dc:creator>Steve</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[cPanel]]></category>
		<category><![CDATA[exim]]></category>

		<guid isPermaLink="false">http://www.sant-media.co.uk/?p=2191</guid>
		<description><![CDATA[This article relates to Exim 4, running in a WHM/cPanel environment under Centos, but may affect other configs too. You may find instances where a local user tries to send mail to a host that operates greylisting. The messages never gets to the recipient. You see things like this in the exim_mainlog Possible simple reasons [...]]]></description>
			<content:encoded><![CDATA[<p>This article relates to Exim 4, running in a WHM/cPanel environment under Centos, but may affect other configs too.</p>
<p>You may find instances where a local user tries to send mail to a host that operates greylisting. The messages never gets to the recipient. You see things like this in the exim_mainlog</p>
<p><!--more--></p>
<h2>Possible simple reasons for messages failing due to greylisting</h2>
<h3>Queue Interval time</h3>
<p>Now, I&#8217;m assuming here that you have a sensible queue retry interval set in the exim command ( the -q switch ). You can check this by running</p>
<pre>ps aux | grep exim</pre>
<p>and checking the output&#8230;</p>
<pre>/usr/sbin/exim -bd -q15m</pre>
<p>The -q15m above means the queue is running every 15 minutes. In a WHM/cPanel environment you should set this in the Tweak Settings &gt; Mail section.</p>
<p>If your retry interval is too long, you may miss the greylist window, and get greylisted again upon retrying, and thus eventually the message will fail.</p>
<h3>Max load queue runner sleep factor</h3>
<p>By default, exim will not run the queue if the system linux load average goes above 3.00 &#8211; on a modern server with a dozen cpu cores this is a patently silly value. The value should really be set to at least the number of cores on the machine. The actual exim config variable concerned is deliver_queue_load_max.</p>
<p>You can adjust/over-ride the value in the default exim.conf file by adding this to the first box at the top of the advanced exim config screen in WHM.</p>
<pre>deliver_queue_load_max = 12</pre>
<h2>More tricky reasons for messages failing</h2>
<p>Exim uses a number of hints databases. On a cPanel server, these are in /var/spool/exim</p>
<p>First thing to do is check what exim thinks the next retry will be for your failed message:</p>
<pre></pre>
<p>Now. In this instance I know the message was only sent on 16th Nov so there must be a bug somewhere for exim to think it was first sent on 03rd Nov.</p>
<p>My first try was to run</p>
<pre># exim_tidydb -t 7d /var/spool/exim retry</pre>
<p>This removed a whole bunch of retry data from the database, but to no avail. Exim still had any message going to this domain as originally failing on the 3rd Nov.</p>
<p>I then decided to rip out the data for this domain directly using exim_fixdb. The man entry for exim_fixdb is a bit dry, and doesn&#8217;t really tell you how to identify the record keys, but it&#8217;s actually quite easy once you find out how!</p>
<p>First, search the database for your suspect domain:</p>
<pre></pre>
<p>The key to the hints database record is</p>
<pre>R:remoteuser@remotedomain.co.uk:&lt;localuser@localdomain.co.uk&gt;</pre>
<p>So, now just run exim_fixdb</p>
<pre></pre>
<p>the d command just deletes the most previously viewed record. That&#8217;s it! Now run exinext again:</p>
<pre># exinext remoteuser@remotedomain.co.uk
No retry data found for remoteuser@remotedomain.co.uk</pre>
<p>That&#8217;s it &#8211; any messages sent to the remote domain should now retry properly again.</p>
<p>Enjoy.</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sant-media.co.uk/2011/11/retry-timeout-exceeded-exim-greylist-problem/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to switch from Mobile Me iCloud to Google Apps</title>
		<link>http://www.sant-media.co.uk/2011/11/how-to-switch-from-mobile-me-icloud-to-google-apps/</link>
		<comments>http://www.sant-media.co.uk/2011/11/how-to-switch-from-mobile-me-icloud-to-google-apps/#comments</comments>
		<pubDate>Fri, 11 Nov 2011 11:05:41 +0000</pubDate>
		<dc:creator>Steve</dc:creator>
				<category><![CDATA[General Tech Tips]]></category>
		<category><![CDATA[Gmail]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[icloud]]></category>

		<guid isPermaLink="false">http://www.sant-media.co.uk/?p=2172</guid>
		<description><![CDATA[I decided to divorce myself from the Apple-a-tron that is iCloud for a number of reasons. I don&#8217;t like being forced to upgrade to iCloud I don&#8217;t like being forced to upgrade to Lion to use iCloud As a user of Adobe CS5 and numerous peripherals for photo/print etc, I can&#8217;t see how upgrading to [...]]]></description>
			<content:encoded><![CDATA[<p>I decided to divorce myself from the Apple-a-tron that is iCloud for a number of reasons.</p>
<ul>
<li>I don&#8217;t like being forced to upgrade to iCloud</li>
<li>I don&#8217;t like being forced to upgrade to Lion to use iCloud</li>
<li>As a user of Adobe CS5 and numerous peripherals for photo/print etc, I can&#8217;t see how upgrading to Lion is going to make anything easier for me (actually the reverse)</li>
<li>I felt it was time to move my online self to a domain that I control, instead of me.com or mac.com</li>
</ul>
<p>So, how to do it? I run a number of Macs, and an iPhone so whatever I choose has to work on both, and be relatively painless. This guide isn&#8217;t for total beginners, I wish I had the time to describe every step in detail with screenshots, but anyone with a sense of adventure should get through this guide without difficulty.<!--more--></p>
<h2>Step 1 &#8211; buy a domain</h2>
<p>OK, so I got myself a domain, for the sake of argument mrsant.co.uk &#8211; that was the easy bit.</p>
<h2>Step 2 &#8211; sign up to Google Apps Free</h2>
<p>Again, this was pretty easy. I just went to</p>
<p><a href="http://www.google.com/apps/intl/en/group/index.html" target="_blank">http://www.google.com/apps/intl/en/group/index.html</a></p>
<p>And went through their sign up process. You will need to verify your domain by adding a dns TXT record to the zone file, or by uploading a file to the website for your domain &#8211; but this is straightforward and much the same as verifying a website for use with Google&#8217;s Webmaster Tools or Analytics.</p>
<p>Once you have verified that you own the domain, then you need to active the services. Activating your email in Google Apps will require you to configure the MX records for your domain to point at Google&#8217;s mail cluster.</p>
<p>You will be asked at some point if you want to set up other users &#8211; just select No at this stage as we are only interested in setting up the first mailbox account.</p>
<p>Once you have got this bit done, you should be able to log into Google using your new email address (e.g. steve@mrsant.co.uk) and start using gmail in the way you already know and love.</p>
<h2>Step 3 &#8211; Configure mail.app for Google Apps</h2>
<p>OK, this is where I learnt a few things about how Google handles IMAP folders and how mail.app can be configured to work with it.</p>
<p>Enable IMAP access for your Google mailbox. This is done in your mailbox settings (click the gear/cog icon top right of your Google mail window) &gt; Forwarding and POP/IMAP tab. Leave the options as default (Auto-Expunge on).</p>
<p>Now, in mail.app, just set up your account as follows:</p>
<p><img class="aligncenter size-full wp-image-2177" title="Configuring Mail.app for Google Apps" src="http://www.sant-media.co.uk/wp-content/uploads/2011/11/mail1.jpg" alt="Configuring Mail.app for Google Apps" width="590" height="607" />And the SMTP settings that matter&#8230;</p>
<p><a href="http://www.sant-media.co.uk/wp-content/uploads/2011/11/mail2.jpg"><img class="aligncenter size-full wp-image-2178" title="Mail.app smtp settings" src="http://www.sant-media.co.uk/wp-content/uploads/2011/11/mail2.jpg" alt="Mail.app smtp settings" width="501" height="508" /></a></p>
<p>Mailbox behaviours that work for me</p>
<p><a href="http://www.sant-media.co.uk/wp-content/uploads/2011/11/mail3.jpg"><img class="aligncenter size-full wp-image-2179" title="Mail.app Mailbox Behaviours for Google Apps" src="http://www.sant-media.co.uk/wp-content/uploads/2011/11/mail3.jpg" alt="Mail.app Mailbox Behaviours for Google Apps" width="590" height="607" /></a>And finally, the advanced settings</p>
<h3><a href="http://www.sant-media.co.uk/wp-content/uploads/2011/11/mail4.jpg"><img class="aligncenter size-full wp-image-2180" title="Mail.app Advanced Settings for Google Apps" src="http://www.sant-media.co.uk/wp-content/uploads/2011/11/mail4.jpg" alt="Mail.app Advanced Settings for Google Apps" width="590" height="607" /></a>Getting the folders to behave themselves</h3>
<p><a href="http://www.sant-media.co.uk/wp-content/uploads/2011/11/mail5.jpg"><img class="alignright size-medium wp-image-2182" title="Mail folders" src="http://www.sant-media.co.uk/wp-content/uploads/2011/11/mail5-106x300.jpg" alt="Mail folders" width="106" height="300" /></a>To prevent mail.app from creating extra folders in the gmail system you must tell mail.app which folders in the Google Apps mailbox to use as the default Sent Items, Trash, Junk, and Draft. You do this by expanding the new Gmail mailbox in mail.app&#8217;s left column, and selecting each folder in turn, then selecting from the mail.app menu, Mailbox &gt; User This Mailbox For &gt; [Draft, Sent, Trash, Junk]</p>
<p>Once you have done this correctly, you should just be left with the Starred and Important folders, as shown in the screenshot opposite.</p>
<h2>About Gmail&#8217;s folder system</h2>
<p>Gmail (Google Apps mail) uses a slightly funky system for storing messages in IMAP folders. It&#8217;s actually pretty neat, and allows very effective use of space. It creates folders virtually from the labels you attach to messages in the web interface. So, if you have a message with a 10Mb attachment, and assign it to two labels, then it will only take up 10Mb in your Gmail account. Try it and see! However, when you view it using mail.app or any other IMAP client, you will see the same message in two folders. Unfortunately, on your Mac, if storing the messages locally (which I always do) then the magic is lost and you will be keeping two separate copies.</p>
<p>This is esoteric, and doesn&#8217;t really matter in day to day usage, but sometimes, you might want to find a message on your Mac, and you might think it&#8217;s gone&#8230; forever. But &#8211; there is an idiosyncrasy in the way IMAP clients interact with the labelling system. If you drag a message from a Gmail folder in mail, to a local folder on your mac, you might think yo uhave removed it from your Google account. You haven&#8217;t. What you have done is remove Gmail label from the message in the Gmail system, and copied the message to your local Mac disk. The message will still exist in the  Gmail account in the &#8220;All Mail&#8221; folder.</p>
<p>The &#8220;All Mail&#8221; folder in Gmail is (you guessed), another virtual folder, but this one is a bit special. It contains all messages including those that have no labels at all&#8230; i.e. those messages that do not appear in any folder in an IMAP client such as mail.app. So, if you can&#8217;t find a message in Mail.app, then there is always a slim chance it might be buried somewhere in your Gmail account.</p>
<p>Currently, there is no easy way to filter out all unlabelled mail in Gmail. This is something that people have requested for years, but Google have not yet provided.</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sant-media.co.uk/2011/11/how-to-switch-from-mobile-me-icloud-to-google-apps/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

