<?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>netz-guru blog &#187; Hosting</title>
	<atom:link href="http://www.netz-guru.de/category/hosting/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.netz-guru.de</link>
	<description>Webtechniken, Sicherheit und Interessantes...</description>
	<lastBuildDate>Fri, 18 Jun 2010 16:17:45 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>vorkonfigurierte GlusterFS Cluster zum mieten</title>
		<link>http://www.netz-guru.de/2010/06/16/vorkonfigurierte-glusterfs-cluster-zum-mieten/</link>
		<comments>http://www.netz-guru.de/2010/06/16/vorkonfigurierte-glusterfs-cluster-zum-mieten/#comments</comments>
		<pubDate>Wed, 16 Jun 2010 18:01:11 +0000</pubDate>
		<dc:creator>Florian Wiessner</dc:creator>
				<category><![CDATA[Hosting]]></category>
		<category><![CDATA[cluster]]></category>
		<category><![CDATA[clustering]]></category>
		<category><![CDATA[failover]]></category>
		<category><![CDATA[glusterfs]]></category>
		<category><![CDATA[ha]]></category>
		<category><![CDATA[ha cluster]]></category>
		<category><![CDATA[high availability]]></category>
		<category><![CDATA[loadbalancing]]></category>
		<category><![CDATA[miet cluster]]></category>
		<category><![CDATA[mysql cluster]]></category>
		<category><![CDATA[rootserver]]></category>
		<category><![CDATA[shared storage]]></category>

		<guid isPermaLink="false">http://www.netz-guru.de/?p=175</guid>
		<description><![CDATA[seit einiger Zeit biete ich auch direkt Mietcluster auf GlusterFS Basis inklusive Loadbalancer und Failover an. Dazu gehört auch 24/7 Monitoring sowie das durchführen von komplexen Setups wie z.B. Master-Master Mysql Cluster etc.
 Da ich in letzter Zeit mit Mails diesbezüglich geflutet werde, hier mal der Link zur Firma   => www.smart-cluster.com
]]></description>
			<content:encoded><![CDATA[<p>seit einiger Zeit biete ich auch direkt Mietcluster auf GlusterFS Basis inklusive Loadbalancer und Failover an. Dazu gehört auch 24/7 Monitoring sowie das durchführen von komplexen Setups wie z.B. Master-Master Mysql Cluster etc.</p>
<p> Da ich in letzter Zeit mit Mails diesbezüglich geflutet werde, hier mal der Link zur Firma <img src='http://www.netz-guru.de/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />  => <a href="http://www.smart-cluster.com">www.smart-cluster.com</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.netz-guru.de/2010/06/16/vorkonfigurierte-glusterfs-cluster-zum-mieten/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Suspekte RBLs &#8211; Barracuda Central / Barracuda Reputation System</title>
		<link>http://www.netz-guru.de/2010/02/18/suspekte-rbls-barracuda-central-barracuda-reputation-system/</link>
		<comments>http://www.netz-guru.de/2010/02/18/suspekte-rbls-barracuda-central-barracuda-reputation-system/#comments</comments>
		<pubDate>Thu, 18 Feb 2010 16:10:57 +0000</pubDate>
		<dc:creator>Florian Wiessner</dc:creator>
				<category><![CDATA[Hosting]]></category>
		<category><![CDATA[Sicherheit]]></category>

		<guid isPermaLink="false">http://www.netz-guru.de/?p=166</guid>
		<description><![CDATA[Als ich heute versucht habe, eine Mail an einen unserer Kunden zu schicken, staunte ich nicht schlecht als die Mail gebounced wurde. Unsere Mailserver seien angeblich SPAM-Schleudern und wurden mittel Barracuda Reputation geblockt. Folgt man dem angegebenen Link, kann man dann eine Anfrage stellen, den Mailserver aus der RBL entfernen zu lassen &#8211; das dauert [...]]]></description>
			<content:encoded><![CDATA[<p>Als ich heute versucht habe, eine Mail an einen unserer Kunden zu schicken, staunte ich nicht schlecht als die Mail gebounced wurde. Unsere Mailserver seien angeblich SPAM-Schleudern und wurden mittel <a title="http://www.barracudacentral.org/" href="http://www.barracudacentral.org/" target="_blank">Barracuda Reputation</a> geblockt. Folgt man dem angegebenen Link, kann man dann eine Anfrage stellen, den Mailserver aus der RBL entfernen zu lassen &#8211; das dauert dann (angeblich) bis zu 12 Stunden. Alternativ kann man sich bei <a title="http://www.emailreg.org/" href="http://www.emailreg.org/" target="_blank">emailreg.org</a> einen Account anlegen um dort die IPs des Mailservers auf eine Whitelist setzen zu lassen &#8211; dass das Ganze dann 20 US $ Kosten soll, erfährt man erst wenn man sich einen Account angelegt hat &#8211; eine Unverschämtheit wie ich finde.</p>
<p>Dazu kommt noch dass der Aufwand die Mailserver dort aus deren RBL zu delisten bei einem Cluster mit vielen Mailservern enorm steigen kann. Man muss sich ja immer durch irgendwelche Forms mit Captchas durchhangeln &#8211; auf ein Feedback seitens Baracuda Central wartet man wohl vergeblich.</p>
<p>Ich kann nicht nachvollziehen, warum einige Mailserver-Admins der Meinung sind, dieses perverse System unterstützen zu müssen. Der Ärger mit Kunden die keine Mails zustellen können und der Aufwand whitelists zu Pflegen stehen doch in diesem Falle in keinem Verhältnis mehr. Dazu kommt noch, dass sich SPAM auch sehr effizient mit den üblichen Opensource-Lösungen wie dspam, spamassassin, diversen Filterlisten wie SpamCop und Spamhaus, amavisd, Greylisting etc filtern lässt.</p>
<p>Aber eine gute Geschäftsidee wäre es schon, einfach mal eine Blacklist aufzubauen, alles erst mal zu Blacklisten, für das Whitelisting Geld zu verlangen und dann irgendwelche Marketingmenschen in größeren Unternehmen dieses System als innovativ zu verkaufen und nochmals die Hand aufzuhalten. Dieser Gedanke könnte einem zumindest in den Sinn kommen, liest man sich <a title="http://www.google.de/search?hl=de&amp;q=Barracuda+554" href="http://www.google.de/search?hl=de&amp;q=Barracuda+554" target="_blank">diverse Foren</a> im Netz durch.</p>
<p>Einfach nur frustrierend&#8230;</p>
<p>UPDATE:</p>
<p><a title="http://packetstormsecurity.org/papers/evaluation/Barracuda_Evil.txt" href="http://packetstormsecurity.org/papers/evaluation/Barracuda_Evil.txt" target="_blank">http://packetstormsecurity.org/papers/evaluation/Barracuda_Evil.txt</a> bestätigt meinen Verdacht, dass das Barracuda Zeug einfach nur Müll ist&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.netz-guru.de/2010/02/18/suspekte-rbls-barracuda-central-barracuda-reputation-system/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MySQL NDB Cluster 7.09a mit nur 2 Nodes (nicht 3!)</title>
		<link>http://www.netz-guru.de/2009/12/30/mysql-ndb-cluster-7-09a-mit-nur-2-nodes-nicht-3/</link>
		<comments>http://www.netz-guru.de/2009/12/30/mysql-ndb-cluster-7-09a-mit-nur-2-nodes-nicht-3/#comments</comments>
		<pubDate>Wed, 30 Dec 2009 10:23:18 +0000</pubDate>
		<dc:creator>Florian Wiessner</dc:creator>
				<category><![CDATA[Hosting]]></category>
		<category><![CDATA[Webtechniken]]></category>

		<guid isPermaLink="false">http://www.netz-guru.de/?p=156</guid>
		<description><![CDATA[in der Dokumentation von mysql cluster wird immer darauf hingewiesen, dass man für ein redundantes Setup mindestens 3 Server benötigt: 2 Server für die NDB-Datenknoten und einen weiteren Server als separater Management-Server. Dies ist jedoch unschön, wenn man nur 2 physikalische Maschinen verwenden will/kann.
Mit etwas Konfigurationsarbeit und dem Linux VServer Patch (auf welchem auch die [...]]]></description>
			<content:encoded><![CDATA[<p>in der Dokumentation von mysql cluster wird immer darauf hingewiesen, dass man für ein redundantes Setup mindestens 3 Server benötigt: 2 Server für die NDB-Datenknoten und einen weiteren Server als separater Management-Server. Dies ist jedoch unschön, wenn man nur 2 physikalische Maschinen verwenden will/kann.</p>
<p>Mit etwas Konfigurationsarbeit und dem Linux VServer Patch (auf welchem auch die <a title="vlinux vserver bei vlinux.biz" href="http://vlinux.biz" target="_blank">Vserver bei vlinux.biz</a> laufen) lässt sich das Setup dennoch mit nur 2 Servern durchführen wobei auch ein Server komplett ausfallen kann, ohne dass der mysql cluster down ist oder crashed.</p>
<p>Man installiere ein Debian Lenny oder neuer, wähle entweder den bei Debian mitgelieferten VServer Kernel (linux-image-vserver-bigmem) oder baue seinen eigenen (z.B. <a title="http://www.linux-vserver.org" href="http://www.linux-vserver.org" target="_blank">2.6.31.7-vs2.3.0.36.27</a> ) auf jeweils beiden Systemen.</p>
<p>Dann legt man auf den Servern vier virtuelle Server an:</p>
<p>vserver sql0[1-4] build &#8211;context 700[0-3] &#8211;hostname sql0[1-4]-n sql0[1-4] &#8211;interface sql0[1-4]=eth0:192.168.0.10-14 -m debootstrap &#8212; -d lenny</p>
<p>Danach wie gehabt mysql ndb herunterladen und installieren (z.B. <a title="http://dev.mysql.com/downloads/cluster/" href="http://dev.mysql.com/downloads/cluster/" target="_blank">mysql-cluster-gpl-7.0.9-linux-i686-glibc23</a>) in /usr/local/ entpacken, und einen symlink auf /usr/local/mysql setzen.</p>
<p>Dann die Konfiguration (config.ini) wie folgt aufsetzen:</p>
<p>[NDBD DEFAULT]<br />
NoOfReplicas: 2</p>
<p>DataDir: /var/lib/mysql-cluster<br />
FileSystemPath: /var/lib/mysql-cluster</p>
<p># Data Memory, Index Memory, and String Memory</p>
<p>DataMemory: 900M<br />
IndexMemory: 300M<br />
BackupMemory: 128M</p>
<p>MaxNoOfConcurrentOperations=100000</p>
<p>StringMemory=25<br />
MaxNoOfTables=4096<br />
MaxNoOfOrderedIndexes=2048<br />
MaxNoOfUniqueHashIndexes=512<br />
MaxNoOfAttributes=24576</p>
<p>TimeBetweenLocalCheckpoints=20<br />
TimeBetweenGlobalCheckpoints=1000<br />
TimeBetweenEpochs=100</p>
<p>MemReportFrequency=30<br />
BackupReportFrequency=10</p>
<p>### Params for setting logging<br />
LogLevelStartup=15<br />
LogLevelShutdown=15<br />
LogLevelCheckpoint=8<br />
LogLevelNodeRestart=15</p>
<p>### Params for increasing Disk throughput<br />
BackupMaxWriteSize=1M<br />
BackupDataBufferSize=16M<br />
BackupLogBufferSize=4M</p>
<p>[MGM DEFAULT]<br />
PortNumber: 1186<br />
DataDir: /var/lib/mysql-cluster</p>
<p>[NDB_MGMD]<br />
Id:1<br />
HostName: sql01</p>
<p>[NDB_MGMD]<br />
Id:2<br />
HostName: sql02</p>
<p>[NDB_MGMD]<br />
Id:3<br />
HostName: sql03</p>
<p>[NDB_MGMD]<br />
Id:4<br />
HostName: sql04</p>
<p>[NDBD]<br />
Id:5<br />
HostName: sql01</p>
<p>[NDBD]<br />
Id:6<br />
HostName: sql02</p>
<p>[NDBD]<br />
Id:7<br />
HostName: sql03</p>
<p>[NDBD]<br />
Id:8<br />
HostName: sql04</p>
<p>[API]<br />
Id:9<br />
HostName: sql01</p>
<p>[API]<br />
Id:10<br />
HostName: sql02</p>
<p>Nun die Management-Knoten auf allen vier VServern starten / initialisieren. Dazu in /usr/local/mysql</p>
<p>ndb_mgmd &#8211;initial -f config.ini</p>
<p>ausführen, anschliessend die 4 ndb Knoten starten (ndbd &#8211;initial)</p>
<p>Für die API Nodes natürlich noch mit ./scripts/mysql_install_db die mysql Datenbanken anlegen und anschliessend mit chmod mysql.mysql data -R die Rechte passend setzen.</p>
<p>Anschliessend sollte man mit ndb_mgm =&gt; show folgenden Output erhalten:</p>
<p>Cluster Configuration<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;<br />
[ndbd(NDB)]     4 node(s)<br />
id=5    @192.168.0.10  (mysql-5.1.39 ndb-7.0.9, Nodegroup: 0)<br />
id=6    @192.168.0.12  (mysql-5.1.39 ndb-7.0.9, Nodegroup: 0, Master)<br />
id=7    @192.168.0.11  (mysql-5.1.39 ndb-7.0.9, Nodegroup: 1)<br />
id=8    @192.168.0.13  (mysql-5.1.39 ndb-7.0.9, Nodegroup: 1)</p>
<p>[ndb_mgmd(MGM)] 4 node(s)<br />
id=1    @192.168.0.10  (mysql-5.1.39 ndb-7.0.9)<br />
id=2    @192.168.0.12  (mysql-5.1.39 ndb-7.0.9)<br />
id=3    @192.168.0.11  (mysql-5.1.39 ndb-7.0.9)<br />
id=4    @192.168.0.13  (mysql-5.1.39 ndb-7.0.9)</p>
<p>[mysqld(API)]   2 node(s)<br />
id=9    @192.168.0.10  (mysql-5.1.39 ndb-7.0.9)<br />
id=10   @192.168.0.12  (mysql-5.1.39 ndb-7.0.9)</p>
<p>Nun sollte jeweils ein ndbd einer Nodegroup (0 und 1) auf einem physikalschen Server liegen, d.h. fällt ein Server aus, so sind immer noch mind. ein ndbd aus der jeweiligen Nodegroup verfügbar und der Cluster läuft weiterhin problemfrei.</p>
<p>Natürlich habe ich vorrausgesetzt, dass die Installation soweit fertig gestellt ist, d.h. mysql user angelegt, Datenverzeichnis angelegt (/var/lib/mysql-cluster &#8211; kann auch anders sein..) wurde etc. und in der my.cnf die Einträge für ndb gemacht wurden:</p>
<p>[mysql_cluster]<br />
ndb-connectstring=sql01</p>
<p>[ndb_mgmd]<br />
config-file=/usr/local/mysql/config.ini</p>
]]></content:encoded>
			<wfw:commentRss>http://www.netz-guru.de/2009/12/30/mysql-ndb-cluster-7-09a-mit-nur-2-nodes-nicht-3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Googles DNS Services kritisch betrachtet</title>
		<link>http://www.netz-guru.de/2009/12/05/googles-dns-services-kritisch-betrachtet/</link>
		<comments>http://www.netz-guru.de/2009/12/05/googles-dns-services-kritisch-betrachtet/#comments</comments>
		<pubDate>Sat, 05 Dec 2009 19:31:24 +0000</pubDate>
		<dc:creator>Florian Wiessner</dc:creator>
				<category><![CDATA[Hosting]]></category>
		<category><![CDATA[Sicherheit]]></category>
		<category><![CDATA[google dns]]></category>
		<category><![CDATA[google public dns]]></category>
		<category><![CDATA[namebench]]></category>
		<category><![CDATA[nameserver]]></category>
		<category><![CDATA[nameserver benchmark]]></category>
		<category><![CDATA[nameserver test]]></category>

		<guid isPermaLink="false">http://www.netz-guru.de/?p=152</guid>
		<description><![CDATA[Seit ein paar Tagen bietet Google öffntliche DNS Recurser für jedermann an. Behauptet wird zudem, dass Googles DNS Services schneller seien als die vom ISP zugeteilten DNS Server. Ich kann dazu nur sagen, dass ich persönlich es für einen großen Fehler halte, die DNS Server von Google zu verwenden, denn zum einen kann man nicht [...]]]></description>
			<content:encoded><![CDATA[<p>Seit ein paar Tagen bietet Google öffntliche DNS Recurser für jedermann an. Behauptet wird zudem, dass Googles DNS Services schneller seien als die vom ISP zugeteilten DNS Server. Ich kann dazu nur sagen, dass ich persönlich es für einen großen Fehler halte, die DNS Server von Google zu verwenden, denn zum einen kann man nicht wissen, was Google mit den DNS Anfragen der User so treibt (damit lässt sich zumindest leicht nachvollziehen, auf welche Seiten ein User so surft), zum anderen wage ich es zu bezweifeln, dass Googles DNS Server wirklich schneller sind als z.B. ein lokal laufender Nameserver auf einem Router, bzw die Nameserver welche der ISP selbst vorgibt. Hier kann man zwar auch nicht wissen, ob seitens des ISP gefiltert wird, aber wenn man sich in dieser Hinsicht gedanken macht, bleibt einem sowieso nur das Betreiben eigener Nameserver und Recursor.</p>
<p>Ein Test mit <a title="http://code.google.com/p/namebench/" href="http://code.google.com/p/namebench/" target="_blank">Namebench </a>bestätigt, dass lokale Nameserver nicht langsamer sind als die von Google angepriesenen Services. Vereinzelt ist Google schneller, da Google natürlich sämtliche Anfragen von Usern cachen kann, während man lokal jedoch meist nicht so viele Seiten besucht und die Wahrscheinlichkeit eines Cachelookups dadurch natürlich sinkt.</p>
<p>Aus Datenschutzgründen sollte man die Nameserver von Google meiner Meinung nach nicht verwenden, selbst wenn ein Lookup 20ms schneller erfolgen sollte, als mit einem vom ISP zugewiesen Nameserver &#8211; diese 20ms fallen beim Surfen meist sowieso nicht auf.</p>
<p>Hier nochmal die Auswertung von <a title="http://code.google.com/p/namebench/" href="http://code.google.com/p/namebench/" target="_blank">Namebench</a> für meinen lokalen Nameserver, meinen Nameserver in unserem RZ in Nürnberg sowie als Vergleich Googles Nameserver:</p>
<p><a title="http://www.netz-guru.de/downloads/namebench_2009-12-05_2018.html" href="http://www.netz-guru.de/downloads/namebench_2009-12-05_2018.html" target="_blank">http://www.netz-guru.de/downloads/namebench_2009-12-05_2018.html</a></p>
<p>Es erscheint auch logisch, warum der lokale Nameserver schneller Antworten kann als ein Nameserver aus einem entfernten Netz &#8211; das liegt einfach an den Latenzen der Paketlaufzeiten zu den einezelnen Servern. Lokal hat man hier meist unter 0,1ms, während es bei DSL mindestens 10-20ms dauert, vorrausgesetzt das ist der Nameserver des ISP. Zu Googles Nameserver habe ich schon mal allein 110ms Latenz &#8211; da ist der eigentliche Request und die Zeit die das dauert bis ich eine Response bekomme noch nicht mitgerechnet.</p>
<p>Fazit: Finger weg von Googles DNS Services!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.netz-guru.de/2009/12/05/googles-dns-services-kritisch-betrachtet/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP IPv6 ip2long und long2ip Funktionen</title>
		<link>http://www.netz-guru.de/2009/11/07/php-ipv6-ip2long-und-long2ip-funktionen/</link>
		<comments>http://www.netz-guru.de/2009/11/07/php-ipv6-ip2long-und-long2ip-funktionen/#comments</comments>
		<pubDate>Sat, 07 Nov 2009 14:03:50 +0000</pubDate>
		<dc:creator>Florian Wiessner</dc:creator>
				<category><![CDATA[Hosting]]></category>
		<category><![CDATA[Webtechniken]]></category>
		<category><![CDATA[ip2long]]></category>
		<category><![CDATA[ip2long6]]></category>
		<category><![CDATA[ipv6]]></category>
		<category><![CDATA[long2ip]]></category>
		<category><![CDATA[long2ip6]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://www.netz-guru.de/?p=144</guid>
		<description><![CDATA[php bietet aktuell ip2long() und long2ip() nur für IPv4 an, für IPv6 gibt es aktuell soweit ich weiss noch keine native Funktionen, deshalb hier meine zwei Funktionen um ip2long und long2ip auch für IPv6 zu verwenden &#8211; diese Funktionen benötigen die php gmp-lib, unter Debian: apt-get install php5-gmp:
$ipv6 = &#8220;2001:4860:a005::68&#8243;;
function ip2long6($ipv6) {
$ip_n = inet_pton($ipv6);
$bits = [...]]]></description>
			<content:encoded><![CDATA[<p>php bietet aktuell ip2long() und long2ip() nur für IPv4 an, für IPv6 gibt es aktuell soweit ich weiss noch keine native Funktionen, deshalb hier meine zwei Funktionen um ip2long und long2ip auch für IPv6 zu verwenden &#8211; diese Funktionen benötigen die php gmp-lib, unter Debian: apt-get install php5-gmp:</p>
<p>$ipv6 = &#8220;2001:4860:a005::68&#8243;;<br />
function ip2long6($ipv6) {<br />
$ip_n = inet_pton($ipv6);<br />
$bits = 15; // 16 x 8 bit = 128bit<br />
while ($bits &gt;= 0) {<br />
$bin = sprintf(&#8220;%08b&#8221;,(ord($ip_n[$bits])));<br />
$ipv6long = $bin.$ipv6long;<br />
$bits&#8211;;<br />
}<br />
return gmp_strval(gmp_init($ipv6long,2),10);<br />
}</p>
<p>function long2ip6($ipv6long) {</p>
<p>$bin = gmp_strval(gmp_init($ipv6long,10),2);<br />
if (strlen($bin) &lt; 128) {<br />
$pad = 128 &#8211; strlen($bin);<br />
for ($i = 1; $i &lt;= $pad; $i++) {<br />
$bin = &#8220;0&#8243;.$bin;<br />
}<br />
}<br />
$bits = 0;<br />
while ($bits &lt;= 7) {<br />
$bin_part = substr($bin,($bits*16),16);<br />
$ipv6 .= dechex(bindec($bin_part)).&#8221;:&#8221;;<br />
$bits++;<br />
}<br />
// compress</p>
<p>return inet_ntop(inet_pton(substr($ipv6,0,-1)));<br />
}</p>
<p>print $ipv6long =  ip2long6($ipv6).&#8221;\n&#8221;;<br />
print $ipv6 = long2ip6($ipv6long).&#8221;\n&#8221;;</p>
<p>Ergebnis:</p>
<p>42541956150894553250710573749450571880<br />
2001:4860:a005::68</p>
]]></content:encoded>
			<wfw:commentRss>http://www.netz-guru.de/2009/11/07/php-ipv6-ip2long-und-long2ip-funktionen/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>postfix policyd 1.80 und mysql ndb cluster als backend patch</title>
		<link>http://www.netz-guru.de/2009/08/10/postfix-policyd-1-80-und-mysql-ndb-cluster-als-backend-patch/</link>
		<comments>http://www.netz-guru.de/2009/08/10/postfix-policyd-1-80-und-mysql-ndb-cluster-als-backend-patch/#comments</comments>
		<pubDate>Mon, 10 Aug 2009 06:55:10 +0000</pubDate>
		<dc:creator>Florian Wiessner</dc:creator>
				<category><![CDATA[Hosting]]></category>
		<category><![CDATA[Sicherheit]]></category>
		<category><![CDATA[insert delayed]]></category>
		<category><![CDATA[mysql cluster]]></category>
		<category><![CDATA[ndb]]></category>
		<category><![CDATA[ndbcluster]]></category>
		<category><![CDATA[patch]]></category>
		<category><![CDATA[policyd]]></category>
		<category><![CDATA[Postfix]]></category>

		<guid isPermaLink="false">http://www.netz-guru.de/?p=137</guid>
		<description><![CDATA[Wer den postfix-policyd auf einem Mailserver Cluster einsetzen möchte, der bekommt zumindest mit einer Mysql-Cluster-Datenbank als Backend Probleme, denn NDBCluster unterstüzt kein &#8220;Insert delayed&#8221; Syntax.
Deshalb hier ein kleiner Patch, der den aktuellen source von debian lenny (postfix-policyd-1.80) patched, damit postfix-policyd keine delayed inserts mehr macht und einwandfrei mit Mysql-NDB-Cluster funktioniert.
postfix-policyd-1.80_mysqlndb.patch
Installiert wird das Ganze mit:
apt-get source [...]]]></description>
			<content:encoded><![CDATA[<p>Wer den postfix-policyd auf einem Mailserver Cluster einsetzen möchte, der bekommt zumindest mit einer Mysql-Cluster-Datenbank als Backend Probleme, denn NDBCluster unterstüzt kein &#8220;Insert delayed&#8221; Syntax.</p>
<p>Deshalb hier ein kleiner Patch, der den aktuellen source von debian lenny (postfix-policyd-1.80) patched, damit postfix-policyd keine delayed inserts mehr macht und einwandfrei mit Mysql-NDB-Cluster funktioniert.</p>
<p><a href="http://www.netz-guru.de/wp-content/uploads/2009/08/postfix-policyd-1.80_mysqlndb.patch.txt">postfix-policyd-1.80_mysqlndb.patch</a></p>
<p>Installiert wird das Ganze mit:</p>
<p style="padding-left: 30px;">apt-get source postfix-policyd</p>
<p style="padding-left: 30px;">wget http://www.netz-guru.de/wp-content/uploads/2009/08/postfix-policyd-1.80_mysqlndb.patch.txt</p>
<p style="padding-left: 30px;">patch -p0 &lt;postfix-policyd-1.80_mysqlndb.patch.txt</p>
<p style="padding-left: 30px;">cd postfix-policyd-1.80</p>
<p style="padding-left: 30px;">dpkg-buildpackage  -uc -b</p>
]]></content:encoded>
			<wfw:commentRss>http://www.netz-guru.de/2009/08/10/postfix-policyd-1-80-und-mysql-ndb-cluster-als-backend-patch/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Internet Zensur und Internet Sperren des DNS in Deutschland umgehen</title>
		<link>http://www.netz-guru.de/2009/04/20/internet-zensur-und-internet-sperren-des-dns-in-deutschland-umgehen/</link>
		<comments>http://www.netz-guru.de/2009/04/20/internet-zensur-und-internet-sperren-des-dns-in-deutschland-umgehen/#comments</comments>
		<pubDate>Sun, 19 Apr 2009 23:55:32 +0000</pubDate>
		<dc:creator>Florian Wiessner</dc:creator>
				<category><![CDATA[Hosting]]></category>
		<category><![CDATA[Politisches]]></category>
		<category><![CDATA[Sicherheit]]></category>
		<category><![CDATA[armes deutschland]]></category>
		<category><![CDATA[bka]]></category>
		<category><![CDATA[dns filter ausschalten]]></category>
		<category><![CDATA[dns filter umgehen]]></category>
		<category><![CDATA[internet filter]]></category>
		<category><![CDATA[internet filter abschalten]]></category>
		<category><![CDATA[internet filter ausschalten]]></category>
		<category><![CDATA[internet filter umgehen]]></category>
		<category><![CDATA[kinderporno]]></category>
		<category><![CDATA[zensur]]></category>

		<guid isPermaLink="false">http://www.netz-guru.de/?p=107</guid>
		<description><![CDATA[Am Freitag, den 17.04.2009 war es dann soweit. Die fünf größten Internet-Provider in Deutschland (www.t-online.de, www.arcor.de / www.vodafone.de, www.alice.de, www.kabel-deutschland.de und www.o2online.de / www.telefonica.de) haben einen Vertrag mit dem BKA unterzeichnet, in dem sie sich dazu bereit erklären, vom BKA gelieferte Listen von Domains über DNS-basierte Filter zu sperren.
Abgesehen davon, dass die Sperren an sich [...]]]></description>
			<content:encoded><![CDATA[<p>Am Freitag, den 17.04.2009 war es dann soweit. Die fünf größten Internet-Provider in Deutschland (<a href="http://www.t-online.de/" target="_blank">www.t-online.de</a>, <a href="http://www.arcor.de" target="_blank">www.arcor.de</a> / <a href="http://www.vodafone.de" target="_blank">www.vodafone.de</a>, <a href="http://www.alice.de" target="_blank">www.alice.de</a>, <a href="http://www.kabel-deutschland.de" target="_blank">www.kabel-deutschland.de</a> und <a href="http://www.o2online.de/" target="_blank">www.o2online.de</a> / <a href="http://www.telefonica.de/" target="_blank">www.telefonica.de</a>) haben einen Vertrag mit dem <a href="http://www.bka.de/" target="_blank">BKA</a> unterzeichnet, in dem sie sich dazu bereit erklären, vom BKA gelieferte Listen von Domains über <a href="http://de.wikipedia.org/wiki/Domain_Name_System" target="_blank">DNS</a>-basierte Filter zu sperren.</p>
<p>Abgesehen davon, dass die Sperren an sich schon fraglich sind, da die Sperren gegen <a href="http://www.artikel5.de/" target="_blank">Artikel 5 GG</a> verstossen, in dem es ausdrücklich heisst:</p>
<blockquote><p><span style="color: #ffff00;">&#8220;(1)          Jeder hat das Recht, seine Meinung in Wort, Schrift und Bild frei zu äußern          und zu verbreiten und sich aus allgemein zugänglichen Quellen ungehindert          zu unterrichten. Die Pressefreiheit und die Freiheit der Berichterstattung          durch Rundfunk und Film werden gewährleistet. <span style="text-decoration: underline;">Eine Zensur findet          nicht statt.</span>&#8220;</span></p></blockquote>
<p>haben die Sperren auch nicht die Wirkung, Kinderpornographie zu unterbinden, Kindesmisshandlungen oder Vergewaltigung zu verhindern, oder in sonst irgend einer Weise etwas auszurichten, außer dem BKA die Möglichkeit zu geben, willkürlich Seiten im Internet zu filtern. Willkürlich deshalb, weil diese Filterlisten &#8220;geheim&#8221; gehalten werden sollen, und weil es keine Möglichkeit der Kontrolle durch die Öffentlichkeit gibt. So können ebenfalls Webseiten unliebsamer Kritiker oder politischer Gegner gefiltert werden, ohne dass hierbei eine regulierende Instanz notfalls einschreiten könnte. Außerdem stellt sich die Frage, ob es nicht an sich schon strafbar ist, dass das BKA eine solche Liste <a href="http://www.bka.de/profil/faq/recht.html#184b" target="_blank">weitergibt</a>.</p>
<p>Was einem auch zu Denken geben sollte ist der Umstand, dass wenn eben eine solche Liste existiert auf der Webseiten erfasst sind, welche strafrechtlich relevantes Material verbreiten, warum denn dann die Strafverfolgungsbehörden nicht einfach die Provider anschreiben, in letzter Instanz die Server beschlagnahmen und den Geldfluss zu den eigentlichen Tätern zurückverfolgen.</p>
<p>Weiterhin ist es problematisch, über das DNS zu filtern, wenn man sich folgendes Szenario einmal vorstellt:</p>
<p>Angenommen, man möchte einen Konkurrenten im Internet ausschalten &#8211; man bräuchte nur einige anfällige Nameserver mittels <a href="http://de.wikipedia.org/wiki/Cache_Poisoning" target="_blank">DNS-Cache Poisoning</a> mit IP-Adressen von Webseiten füttern, welche strafrechtlich relevantes Material anbieten und dann entweder abwarten, bis die Domain des Konkurrenten auf der Sperrliste des BKA landet, oder eben selbst nachhelfen, in dem man anonym die entsprechende Seite meldet.</p>
<p>Abgesehen davon ist es ein leichtes, die DNS Sperren der Provider zu umgehen:</p>
<ul>
<li>Man suche sich im Internet Nameserver, welcher keiner Zensur unterliegen, z.b. die Nameserver von <a href="https://www.opendns.com" target="_blank">OpenDNS </a>(<strong>208.67.222.222</strong> und <strong>208.67.220.220</strong>)</li>
<li>Man trage die Nameserver in die Netzwerkeinstellungen seines lokalen Rechners oder Router ein. (Bei Windows XP: Start -&gt; Einstellungene -&gt; Netzwerkverbindungen -&gt; Lanverbindung -&gt; rechtsklick Eigenschaften -&gt; Internetprotokoll (TCP/IP) -&gt; Folgende DNS Server verwenden)</li>
<li>Alternativ dazu, <a href="http://de.wikipedia.org/wiki/Virtual_Private_Network" target="_blank">VPN</a>s oder Anonymizer wie <a href="http://www.torproject.org/" target="_blank">the onio router</a> (<a href="http://de.wikipedia.org/wiki/Tor_(Netzwerk)" target="_blank">TOR</a>),  <a href="http://anon.inf.tu-dresden.de/" target="_blank">JAP</a>, oder eine Kombination von beidem.</li>
</ul>
<p>Bei einem reinen DNS Filter reicht es aus, Nameserver zu verwenden, die eben nicht gefiltert werden und keiner Blacklist unterliegen. Gefilterte IPs aus dem Ausland kann man meist mittels einem VPN oder Anonymizern wie TOR erreichen, wenn der Endpunkt der Verbindung eben nicht mehr gefiltert wird.</p>
<p>Das war es schon &#8211; ich würde fast sagen, jeder halbwegs intelligente Mensch schafft es innerhalb von weniger als 10 Minuten die Nameserver zu ändern. Das Filtern an sich geht völlig am Problem des Kindsmissbrauchs vorbei und ist in meinen Augen einfach nur ein trojanisches Pferd um die Gesellschaft langsam an Internetfilter zu gewöhnen und kritisch Denkende oder der Politik Unliebsame aus dem Netz zu verbannen, damit diese keinen weiteren &#8220;Schaden&#8221; anrichten können. Weitere heiße Luft von diversen Politikern (und entsprechende Kommentare von denkenden Individuen) kann man hier finden:</p>
<ul>
<li><a href="http://netzpolitik.org/2009/die-dreizehn-luegen-der-zensursula/" target="_blank">http://netzpolitik.org/2009/die-dreizehn-luegen-der-zensursula/</a></li>
<li><a href="http://blog.odem.org/2009/02/grundrechtseingriffe-wegzaubern.html" target="_blank">http://blog.odem.org/2009/02/grundrechtseingriffe-wegzaubern.html</a></li>
<li><a href="http://www.bmfsfj.bund.de/bmfsfj/generator/BMFSFJ/Presse/pressemitteilungen,did=121758.html" target="_blank">http://www.bmfsfj.bund.de/bmfsfj/generator/BMFSFJ/Presse/pressemitteilungen,did=121758.html</a></li>
<li><a href="http://www.ccc.de/updates/2009/besucht-zensursula?language=de" target="_blank">http://www.ccc.de/updates/2009/besucht-zensursula?language=de</a></li>
<li><a href="http://www.ccc.de/updates/2009/filter-mitschnitt?language=de" target="_blank">http://www.ccc.de/updates/2009/filter-mitschnitt?language=de</a></li>
</ul>
<p>Alles in allem finde ich es mehr und mehr befremdlich, was in diesem <a href="http://www.deutschland.de" target="_blank">Land</a> so alles geschieht. Auf der einen Seite wird nach mehr Datenschutz und Datensicherheit gerufen (man denke an die zig Affairen Lidl, T-Com, Müller, etc..) &#8211; auf der anderen Seite werden Filterlisten etabliert um die User von angeblicher Kinderpornographie abzuhalten. Offensichtlich haben wir keine wichtigeren Probleme &#8211; die Umwelt, die Umverteilung von Ressourcen, Krankheiten, Energiegewinnung sind eben nicht so wichtig wie den Bürger unter Kontrolle zu halten&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.netz-guru.de/2009/04/20/internet-zensur-und-internet-sperren-des-dns-in-deutschland-umgehen/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Die fraglichen Testmethoden von Internet Intern</title>
		<link>http://www.netz-guru.de/2009/03/07/die-fraglichen-testmethoden-von-internet-intern/</link>
		<comments>http://www.netz-guru.de/2009/03/07/die-fraglichen-testmethoden-von-internet-intern/#comments</comments>
		<pubDate>Sat, 07 Mar 2009 19:38:58 +0000</pubDate>
		<dc:creator>Florian Wiessner</dc:creator>
				<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Hosting]]></category>
		<category><![CDATA[internet intern]]></category>
		<category><![CDATA[internet intern vserver test]]></category>
		<category><![CDATA[testmethoden]]></category>
		<category><![CDATA[vserver]]></category>
		<category><![CDATA[vserver test]]></category>
		<category><![CDATA[webhoster test]]></category>

		<guid isPermaLink="false">http://www.netz-guru.de/?p=91</guid>
		<description><![CDATA[wieder mal ein VServer Test
vlinux.biz wurde in der aktuellen Ausgabe 02/2009 von Internet Intern getestet. Abgesehen davon, dass vlinux.biz vom Preis/Leistungsverhältnis gegenüber den anderen getesteten VServer-Anbietern gar nicht berücksichtig wurde, möchte ich hier doch mal meinen Unmut über die Testpraktiken von Internet Intern loswerden.
Testmethoden oder so was Ähnliches&#8230;
Webserver Stress Tool wurde als Last-Test für den [...]]]></description>
			<content:encoded><![CDATA[<h2>wieder mal ein VServer Test</h2>
<p><a href="http://vlinux.biz" target="_blank">vlinux.biz</a> wurde in der aktuellen Ausgabe 02/2009 von <a href="http://www.pcpraxis.de/index.php?option=com_hefte&amp;task=detail&amp;id=27&amp;Itemid=85/" target="_blank">Internet Intern</a> getestet. Abgesehen davon, dass vlinux.biz vom Preis/Leistungsverhältnis gegenüber den anderen getesteten VServer-Anbietern gar nicht berücksichtig wurde, möchte ich hier doch mal meinen Unmut über die Testpraktiken von Internet Intern loswerden.</p>
<h2>Testmethoden oder so was Ähnliches&#8230;</h2>
<p>Webserver Stress Tool wurde als Last-Test für den vorinstallierten apache2 verwendet. Dabei hat Internet Intern festgestellt, dass von in etwa 18.000 Tests ca. 10.000 Fehler aufgetreten sind &#8211; dies ist nicht verwunderlich, hat der von Debian vorinstallierte apache2 als Standard nur 2 Serverprozesse gestartet, sowie ein Connection-Limit von 150 Maxclients gesetzt. Dass hierbei dann natürlich so viele Fehler auftreten, ist nicht verwunderlich &#8211; wurde aber von Internet Intern in keinster Weise erwähnt &#8211; wundert mich aber jetzt nicht wirklich, denn es hat nicht ein einziger Login via SSH von den Internet Intern Testern stattgefunden. Bei Max-Clients von 150 und 500 parallelen Test-Zugriffen bleiben eben einfach 350 davon unbeantwortet, dies entspricht exakt den von Internet Intern beobachteten Werten.</p>
<h2>Konfigurationssoftware</h2>
<p>Auch wurde bemängelt, dass vlinux.biz seinen Kunden keine Konfigurations-Software wie Plesk oder cPanel aufzwängen will &#8211; hier ist die Philosophie von vlinux.biz so, dass der Kunde selbst entscheiden soll und darf, welche und ob er überhaupt eine Konfigurationssoftware eingesetzt werden soll. Dies als Nachteil auszulegen und darauf rumzureiten, dass Plesk der Quasistandard für VServer-Management sei, ist einfach frei erfunden &#8211; schliesslich will nicht jeder VServer Kunde Massenwebhosting mit dem VServer betreiben. Viele Kunden installieren Gameserver oder Teamspeak-Server auf dem VServer, oder nutzen diesen als SVN-Server. Offensichtlich ist man aber bei Internet Intern in dieser Hinsicht nicht in der Lage, über den Tellerrand hinausszuschauen. Auch bietet vlinux.biz als einziger der getesten Anbieter mehr als 15 GB Space, nämlich stattliche 40GB RAID1 Space, und garantiert eine 100MBit Anbindung.</p>
<h2>Fazit</h2>
<p>Insgesamt kann man den Test von Internet Intern einfach nur als Zeitverschwendung betrachten &#8211; auf essentielle Dinge wie maximal verfügbares RAM, Anzahl der Kunden pro Host-System, etc. muss man in diesem Testbericht verzichten. Auch habe ich in den Logs des Test-Servers festgestellt, dass nicht ein einzier Login via SSH von Internet Intern erfolgt ist &#8211; vielleicht hatten die Tester auch überhaupt keine Lust, den Test wirklich aussagekräftig zu gestalten. Einfach nur enttäuschend. Ich kann die Internet Intern deshalb nicht empfehlen &#8211; kauft lieber die iX oder c&#8217;t, die wissen wenigstens wie man aussagekräftig testet&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.netz-guru.de/2009/03/07/die-fraglichen-testmethoden-von-internet-intern/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Verteiltes Dateisystem GlusterFS</title>
		<link>http://www.netz-guru.de/2009/01/15/clusterdateisystem-glusterfs/</link>
		<comments>http://www.netz-guru.de/2009/01/15/clusterdateisystem-glusterfs/#comments</comments>
		<pubDate>Thu, 15 Jan 2009 11:39:30 +0000</pubDate>
		<dc:creator>Florian Wiessner</dc:creator>
				<category><![CDATA[Hosting]]></category>
		<category><![CDATA[Usefull Things]]></category>
		<category><![CDATA[Webtechniken]]></category>
		<category><![CDATA[cluster]]></category>
		<category><![CDATA[clusterfs]]></category>
		<category><![CDATA[distributed filesystem]]></category>
		<category><![CDATA[filesystem]]></category>
		<category><![CDATA[glusterfs]]></category>
		<category><![CDATA[verteiltes dateisystem]]></category>

		<guid isPermaLink="false">http://www.netz-guru.de/?p=65</guid>
		<description><![CDATA[Durch den Post vom vom 12.01.2009 / http://www.netz-guru.de/2009/01/12/die-ultimative-e-mail-losung-the-ultimate-e-mail-solution/ und die Kommentare darauf angeregt, habe ich versucht das gleiche Setup auch ohne dbmail zu versuchen. Sirko hatte in seinem Kommentar erwähnt, dass man mit einem verteilten Filesystem auch so einen Mailcluster betreiben kann. Bis zu diesem Zeitpunkt war mir eigentlich nur DRBD als einziges Filesystem bekannt, [...]]]></description>
			<content:encoded><![CDATA[<p>Durch den Post vom vom 12.01.2009 / <a href="http://www.netz-guru.de/2009/01/12/die-ultimative-e-mail-losung-the-ultimate-e-mail-solution/" target="_blank">http://www.netz-guru.de/2009/01/12/die-ultimative-e-mail-losung-the-ultimate-e-mail-solution/</a> und die Kommentare darauf angeregt, habe ich versucht das gleiche Setup auch ohne dbmail zu versuchen. <a href="http://www.datenklause.de/blog/" target="_blank">Sirko</a> hatte in seinem Kommentar erwähnt, dass man mit einem verteilten Filesystem auch so einen Mailcluster betreiben kann. Bis zu diesem Zeitpunkt war mir eigentlich nur DRBD als einziges Filesystem bekannt, welches maximal 2 Nodes zu einer Art Netzwerk-RAID1 verbindet.</p>
<p>Gänzlich unbekannt war mir bis heute jedoch GlusterFS, welches ebenfalls ein verteiltes Filesystem über das fuse-Modul bereitstellt. Hier hat man jedoch keine Limitierung auf max. 2 Nodes. GlusterFS bietet Automatic File Replication auch über mehr als 2 Nodes. Weiterhin kann man mit Unify mehrere RAID1-Knoten zu einem einzigen FS zusammenfassen. GlusterFS bietet noch mehr Möglichkeiten, hier mal ein Überblick:</p>
<ul>
<li> <strong><a title="NFS Like Standalone Storage Server" href="http://www.gluster.org/docs/index.php/NFS_Like_Standalone_Storage_Server">Standalone Storage (NFS Like)</a></strong></li>
<li> <strong><a title="Hash Across Four Storage Servers" href="http://www.gluster.org/docs/index.php/Hash_Across_Four_Storage_Servers">Distributed Storage</a></strong></li>
</ul>
<ul>
<li> <strong><a title="Automatic File Replication (Mirror) across Two Storage Servers" href="http://www.gluster.org/docs/index.php/Automatic_File_Replication_%28Mirror%29_across_Two_Storage_Servers">Replicated Storage</a></strong></li>
<li> <strong><a title="Mixing DHT and AFR" href="http://www.gluster.org/docs/index.php/Mixing_DHT_and_AFR">Distributed Replicated Storage</a></strong></li>
</ul>
<ul>
<li> <strong><a title="Striping Across Four Storage Servers" href="http://www.gluster.org/docs/index.php/Striping_Across_Four_Storage_Servers">Striped Storage</a></strong></li>
</ul>
<ul>
<li> <strong><a title="NUFA with single process" href="http://www.gluster.org/docs/index.php/NUFA_with_single_process">Cloud/HPC Storage</a></strong></li>
</ul>
<ul>
<li> <strong><a title="NFS Like Standalone Storage Server-2" href="http://www.gluster.org/docs/index.php/NFS_Like_Standalone_Storage_Server-2">NFS Like Standalone Storage Server-2</a></strong></li>
<li> <strong><a title="Aggregating Three Storage Servers with Unify" href="http://www.gluster.org/docs/index.php/Aggregating_Three_Storage_Servers_with_Unify">Aggregating Three Storage Servers with Unify</a></strong></li>
</ul>
<p>Mit einem Setup wie unter &#8220;Distributed Replicated Storage&#8221; beschrieben, lässt sich so ein gemeinsammes /var/spool für die Mailserver generieren. Die Konfiguration der Server kann man dann entweder in einer Datenbank oder LDAP ablegen, oder man verwendet die vom MTA vorgegebenen Konfig-Files, diese kann man auch auf einem verteiltem Filesystem speichern.</p>
<p>Den Source für GlusterFS kann man sich hier downloaden:</p>
<p><a href="http://europe.gluster.org/glusterfs/2.0/LATEST/" target="_blank">http://europe.gluster.org/glusterfs/2.0/LATEST/</a></p>
<p>Die Entwickler empfehlen ausserdem ein gepatchtes fuse-Kernel-Modul, welches GlusterFS erheblich beschleunigen soll:</p>
<p><a href="http://europe.gluster.org/glusterfs/fuse/" target="_blank">http://europe.gluster.org/glusterfs/fuse/</a></p>
<p>Das Setup an sich ist relativ einfach. Unter Debian Etch fuse-Source entpacken, ./configure &#8211;enable-kernel-module &#8211;prefix=/usr  &amp;&amp; make &amp;&amp; make install &amp;&amp; ldconfig</p>
<p>Dann glusterfs entpacken und ./configure &#8211;with-fuse=/usr/src/pfadzufuser &amp;&amp;  make &amp;&amp; make install</p>
<p>Konfigurationsbeispiele gibt es unter www.gluster.org. Es sind auch kombinierte AFR,Stripe,Unify Filesysteme möglich, allerdings ist das Setup dann etwas komplizierter.</p>
<p>Weiterhin bietet GlusterFS neben normalem TCP/IP  auch direkte Verbindung über Infini-Band an. Auch redundante Verbindungen zur Storage werden unterstützt. Die Maximale Größe des Filesystems kann bis zu mehrere Petabytes betragen.</p>
<p>Möchte man viele kleine Dateien in glusterfs speichern, so kann glusterfs diese im DBD Berkeley DB Format speichern.</p>
<p>GlusterFS ist unter der GNU GPL v3 lizenziert.</p>
<p>Weitere Infos zu <a href="http://de.wikipedia.org/wiki/GlusterFS" target="_blank">GlusterFS </a> gibts auch bei der <a href="http://de.wikipedia.org/wiki/Wikipedia:Hauptseite" target="_blank">Wikipedia</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.netz-guru.de/2009/01/15/clusterdateisystem-glusterfs/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Die ultimative E-Mail Lösung &#8211; The ultimate E-Mail Solution</title>
		<link>http://www.netz-guru.de/2009/01/12/die-ultimative-e-mail-losung-the-ultimate-e-mail-solution/</link>
		<comments>http://www.netz-guru.de/2009/01/12/die-ultimative-e-mail-losung-the-ultimate-e-mail-solution/#comments</comments>
		<pubDate>Mon, 12 Jan 2009 18:43:27 +0000</pubDate>
		<dc:creator>Florian Wiessner</dc:creator>
				<category><![CDATA[Hosting]]></category>
		<category><![CDATA[dbmail]]></category>
		<category><![CDATA[mail server]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[pgcluster]]></category>
		<category><![CDATA[Postfix]]></category>
		<category><![CDATA[postgres]]></category>

		<guid isPermaLink="false">http://www.netz-guru.de/?p=44</guid>
		<description><![CDATA[Es war einmal ein Mailserver&#8230;
Wenn man Administrator eines produktiv genutzten Mailservers ist, macht man sich schon ab und zu mal Gedanken, wie man die Probleme, welche beim Betrieb des Servers auftreten oder auftreten könnten, mit möglichst wenig Aufwand &#8211; jetzt im Sinne von möglichst wenig Aufwand in der Zukunft &#8211; lösen kann. Ich betreibe einen [...]]]></description>
			<content:encoded><![CDATA[<h2>Es war einmal ein Mailserver&#8230;</h2>
<p>Wenn man Administrator eines produktiv genutzten Mailservers ist, macht man sich schon ab und zu mal Gedanken, wie man die Probleme, welche beim Betrieb des Servers auftreten oder auftreten könnten, mit möglichst wenig Aufwand &#8211; jetzt im Sinne von möglichst wenig Aufwand in der Zukunft &#8211; lösen kann. Ich betreibe einen <a title="Quickemail.de Free E-Mail Accounts" href="http://www.quickemail.de" target="_blank">kostenlosen E-Mail Dienst</a> mit derzeit ca. 12.000 Usern. Seit 1998 hat sich das Setup des Mailservers eigentlich kaum geändert. Damals war <a title="sendmail mta" href="http://www.sendmail.org" target="_blank">sendmail </a>noch das Nonplusultra, man war stolz dass <a title="smtp-auth" href="http://de.wikipedia.org/wiki/SMTP-Auth" target="_blank">SMTP-Auth</a> und diverse Workarounds wie POP-Before-SMTP etc funktionierten, und im Allgemeinen gab es auch weniger <a title="spam" href="http://de.wikipedia.org/wiki/Spam" target="_blank">SPAM</a>. Zu dieser Zeit hatte quickemail.de ca. 500 User und die Welt der Flat-File Konfiguration war noch in Ordnung.</p>
<p>Irgendwann reicht das jedoch nicht mehr aus &#8211; Flat-Files werden schnell unübersichtlich und es musste eine Lösung her, um zumindest die E-Mail Accounts und User zu verwalten. Eine <a title="mysql" href="http://www.mysql.com" target="_blank">mySQL </a>Datenbank war schnell aufgesetzt und mit ein paar Scripts und Cronjobs wuchs die Userbase dann immer weiter an. Da gingen dann aber auch die Probleme los.</p>
<h2>SPAM von Botnets == DDOS?</h2>
<p>Wenn man mehrere tausend User auf einer physikalischen Maschine hat, bringt das diverse Probleme mit sich. Zum einen braucht man ständig größere Festplatten, zum anderen natürlich auch mehr CPU und RAM. Das lässt sich eigentlich auf normaler Hardware noch relativ einfach erweitern. Problematisch wird das ganze dann, wenn man distributed SPAM von diversen <a href="http://de.wikipedia.org/wiki/Botnet" target="_blank">Botnets</a> abbekommt. Nicht nur der Mailserver an sich ist hier dann überfordert &#8211; bei jedem Connect wird ein <a href="http://de.wikipedia.org/wiki/Nslookup" target="_blank">nslookup</a> durchgeführt, was sich auch wieder mit erhöhter Last auf den Nameservern auswirkt. Irgendwann ist dann jedoch Schluss &#8211; bei 200 gleichzeitigen Connects und einer Load von &gt;100 kann es schon mal ein paar Minuten dauern, bis man diverse Services gestoppt hat um zumindest die Maschine wieder administrieren zu können.</p>
<h2><a href="http://de.wikipedia.org/wiki/SPOF" target="_blank">SPOF</a>s am laufenden Band</h2>
<p>Eine einzelne Maschine zu verwenden ist natürlich auch nicht gerade von Vorteil. Fällt die Hardware aus, oder sind die Platten voll, steht die Maschine und nichts geht mehr. Klar kann man solche Ausfälle durch gutes Monitoring minimieren, spätestens jedoch beim nächsten Upgrade steht der Dienst erst mal wieder.</p>
<h2>Wie man diese Probleme in den Griff bekommt?</h2>
<p>Nun, wenn man nicht gerade im Lotto gewonnen hat, braucht man hier eine günstige Lösung die dennoch gut skaliert und fehlertolerant ist, also die Mails an sich redundant speichert, sowie mehrere Server zur Verfügung stellt um bei einem ausgefallenen System dennoch den Dienst aufrecht erhalten zu können. Das gestaltet sich jedoch gar nicht so einfach. Alleine dafür zu sorgen, dass die Daten auf allen Maschinen synchron sind, ist eine Herausforderung.</p>
<p>Es gibt diverse Lösungen mit NAS oder <a href="http://www.drbd.org/" target="_blank">DRBD</a>, proprietäre Lösungen von diversen Herstellern, Backup-Mailserver, etc &#8211; aber eine wirkliche günstige Alternative die mit normaler x86er Hardware auskommt, und bei der man nicht Tausende Euro Lizenzgebühren zahlen muss, hatte ich bisher noch nicht gefunden.</p>
<p>Deshalb habe ich mich mal eine Woche intensiv damit beschäftigt, das Mailproblem, zumindest für mich, ein für alle mal zu Lösen.</p>
<p><span id="more-44"></span></p>
<h2>Daten redundant speichern&#8230;</h2>
<p>kann man zum Beispiel mit mysql-ndb &#8211; Das war auch mein erster Versuch. Da man seit mySQL 5.1.6 bzw. der 6.2er NDB-Engine endlich Tables auch ondisk speichern kann, dachte ich das sei einen Versuch wert. Allerdings gibt es bei mySQL immer noch das Problem, dass die Indizes in-memory sein müssen. Bei einer Mailbase von sagen wir mal ca. 40GB kommt man so locker auf einen RAM-Bedarf von 8GB und mehr.</p>
<p>Dann gibt es noch die Möglichkeit dies einfach mit Master-Slave Replication zu lösen, hier ist jedoch das Problem, dass sobald der Master-Server ausgefallen ist, die User keine Daten mehr schreiben können und man nur noch Read-Only Access hat. Deshalb sind auch Lösungen wie <a href="http://pgpool.projects.postgresql.org/" target="_blank">PG-Pool</a> oder <a href="http://www.slony.info/" target="_blank">Slony </a>nicht wirklich praktikabel. Aber es gibt ja noch <a href="http://pgfoundry.org/projects/pgcluster/" target="_blank">PGCluster</a>. PG-Cluster ist im Vergleich zu mySQL-NDB wesentlich besser geeignet, um Daten redundant in einer Datenbank zu speichern. Hier müssen die Indizies nicht in-memory sein. Das derzeitige Release pgcluster1.9-rc5 basiert auf <a href="http://www.postgresql.org/" target="_blank">postgres 8.3</a> und funktioniert &#8211; sofern richtig konfiguriert &#8211; einwandfrei. Schade ist jedoch, dass auf der offiziellen Webseite von PG-Cluster immer noch die Version 1.3 als aktuell bezeichnet wird und das letzte Update der Seite irgendwann in 2005 war. Deshalb habe ich während der Evaluierungsphase erst PG-Cluster 1.3, dann den Fork cybercluster, und dann erst PG-Cluster 1.9 getestet. Mit PG-Cluster hat man zumindest schon mal das Problem ausgemerzt, dass man sich nicht mehr darum kümmern muss, was mit den Daten passiert. Die Master-Master oder auch Active-Active Replikation von PG-Cluster gewährleistet synchrone Daten über alle Cluster-Nodes hinweg.</p>
<h2>Redundante Daten &#8211; und was machen wir nun damit?</h2>
<p>Nach einiger Zeit googeln bin ich dann auf den <a href="http://www.dbmail.org/" target="_blank">dbmail</a> gestossen &#8211; ein User aus dem IRC-Channel #linux.de hatte mich darauf hingewiesen, dass es soetwas bereits gibt. Bei dbmail werden alle E-Mails, Accounts, Forward etc. in der Datenbank gespeichert. In Verbindung mit PG-Cluster ergibt sich dann hier eben die Möglichkeit, Mailserver-Nodes zu betreiben die synchron sind. Die Last lässt sich dann via DNS-Roundrobin über die Mailserver und bei der Datenbank  mit dem PG-Loadbalancer verteilen. Mein aktuelles Setup sieht wie folgt aus:</p>
<p><img class="aligncenter size-full wp-image-47" src="http://www.netz-guru.de/wp-content/uploads/2009/01/smartweb-mailcluster.png" alt="smartweb-mailcluster" width="402" height="622" /></p>
<p>Mit diesem Setup ist man dann in der Lage, solange zumindest ein Node online ist, die Mail-Services aufrecht zu erhalten. dbmail liefert ein Script mailbox2dbmail mit &#8211; damit lassen sich Mailboxen im mbox, maildir und mhdir Format leicht in dbmail einpflegen. Wie man so ein Setup bewerkstelligt, möchte ich hier nun kundtun. Ich selbst habe für mein aktuelles Setup ca. eine Woche gebraucht &#8211; das liegt aber auch daran, weil ich alles Mögliche getestet habe um herauszufinden, was am Besten funktioniert. Bei dbmail musste ich selbst einige Zeilen im Source-Code ändern. Auch Cyrus SASL muss man patchen, aber am Ende ist es das Alles wert.</p>
<h2>Howto begin?</h2>
<p>Als aller erstes benötigen wir mind. 2 Server. Wer möchte kann das auch zuerst innerhalb eines VServers oder VMware Session testen &#8211; ich rate dringend dazu, um sich mit der Sache etwas vertraut zu machen.</p>
<p>Die Server werden frisch mit Debian Etch installiert. Damit hier pgcluster allerdings kompiliert, müssen einige Pakete nachinstalliert werden &#8211; und nach dem ./configure muss man noch ein Makefile anpasssen. Benötigt wird build-essential libreadline5 libreadline5-dev asciidox flex bison libssl-dev rsync ssh. Sollte hier noch etwas fehlen, werde ich es zu gegebener Zeit ergänzen. Wichtig ist, dass das System eine utf8-Locale installiert hat und diese auch verwendet wird &#8211; sonst gibt es später Probleme mit PostgreSQL.</p>
<pre>wget http://pgfoundry.org/frs/download.php/1705/pgcluster-1.9.0rc5.tar.gz
tar -xvzf pgcluster-1.9.0rc5.tar.gz
cd pgcluster-1.9.0rc5
./configure
make
make install</pre>
<p>Postgres wird dann in /usr/local/pgsql installiert. Wer es woanders haben möchte, gibt einen Prefix beim configure mit an.</p>
<p>User anlegen, Rechte setzen:</p>
<pre>cd /usr/local
useradd -d /usr/local/pgsql postgres
groupadd postgres
chown postgres.postgres pgsql -R</pre>
<p>Hat man dies auf allen Nodes erledigt, wird mit initdb die Datenbank initialisiert:</p>
<pre>su postgres
cd /usr/local/pgsql
./bin/initdb --locale=de_DE.utf8 data</pre>
<p>Im Verzeichnis data legen wir dann auch entsprechend die Konfiguration für den Cluster an. Wichtig ist hierbei dass die Konfiguration bei allen Nodes identisch ist. Zuerst muss man die Datei pg_hba.conf im data Verzeichnis bearbeiten. Hier wird festgelegt, welcher Rechner sich zu der Datenbank verbinden darf. Das Ganze ist IP-basierend. Man sollte in jedem Fall für jeden Host einen eintrag in /etc/hosts machen, um DNS-Problemen innerhalb des Clusters aus dem Weg zu gehen &#8211; ich gehe hier bei diesem Howto mal davon aus, dass zuerst das ganze in einer Testumgebung installiert wird:</p>
<p>In pg_hba.conf unter der Zeile:</p>
<pre># IPv4 local connections:</pre>
<p>muss für jeden Host des Clusters ein Eintrag gemacht sein:</p>
<pre>host  all  all 192.168.0.10/32 trust # node01
host  all  all 192.168.0.20/32 trust # node02</pre>
<p>Dies stellt sicher, dass die Nodes des Clusters gegenseitigen Zugriff auf sich selbst haben. Wichtig: man darf es nicht versäumen auch dem lokalen node Connections von sich selbst zu erlauben &#8211; daher ist auch bei node01 die IP für den node01 freizugeben.</p>
<p>Nun müssen wir die Datei cluster.conf im data Verzeichnis anlegen. Hier wird festgelegt, wohin repliziert werden soll:</p>
<pre>&lt;Replicate_Server_Info&gt;
        &lt;Host_Name&gt; node01 &lt;/Host_Name&gt;
        &lt;Port&gt;           5810 &lt;/Port&gt;
        &lt;Recovery_Port&gt;  5811 &lt;/Recovery_Port&gt;
&lt;/Replicate_Server_Info&gt;
&lt;Replicate_Server_Info&gt;
        &lt;Host_Name&gt; node02 &lt;/Host_Name&gt;
        &lt;Port&gt;           5810 &lt;/Port&gt;
        &lt;Recovery_Port&gt;  5811 &lt;/Recovery_Port&gt;
&lt;/Replicate_Server_Info&gt;
&lt;/Replicate_Server_Info&gt;
&lt;Host_Name&gt; node01 | node02 &lt;/Host_Name&gt;
# Der Host_Name muss dem jeweiligen Node angepasst werden!
#
&lt;Recovery_Port&gt;         5611 &lt;/Recovery_Port&gt;
&lt;Rsync_Path&gt; /usr/bin/rsync &lt;/Rsync_Path&gt;
&lt;Rsync_Option&gt; ssh &lt;/Rsync_Option&gt;
&lt;Rsync_Compress&gt; yes &lt;/Rsync_Compress&gt;
&lt;When_Stand_Alone&gt; read_write  &lt;/When_Stand_Alone&gt;
&lt;Pg_Dump_Path&gt; /usr/local/pgsql/bin/pg_dump&lt;/Pg_Dump_Path&gt;
&lt;Replication_Timeout&gt; 1min&lt;/Replication_Timeout&gt;
&lt;LifeCheck_Timeout&gt;3s&lt;/LifeCheck_Timeout&gt;
&lt;LifeCheck_Interval&gt;15s&lt;/LifeCheck_Interval&gt;</pre>
<p>Nachdem die cluster.conf angelegt wurde, fehlt noch die pgreplicate.conf &#8211; hier wird festgelegt, von welchen Nodes gelauscht werden soll um die Queries zu replizieren:</p>
<pre>&lt;Cluster_Server_Info&gt;
        &lt;Host_Name&gt; node01 &lt;/Host_Name&gt;
        &lt;Port&gt;           5432 &lt;/Port&gt;
        &lt;Recovery_Port&gt;  5611 &lt;/Recovery_Port&gt;
&lt;/Cluster_Server_Info&gt;
&lt;Cluster_Server_Info&gt;
        &lt;Host_Name&gt; node02 &lt;/Host_Name&gt;
        &lt;Port&gt;           5432 &lt;/Port&gt;
        &lt;Recovery_Port&gt;  5611 &lt;/Recovery_Port&gt;
&lt;/Cluster_Server_Info&gt;
&lt;Host_Name&gt; node01 | node02 &lt;/Host_Name&gt;
# Der Host_Name muss dem jeweiligen Node angepasst werden!
#
&lt;Replication_Port&gt;    5810    &lt;/Replication_Port&gt;
&lt;Recovery_Port&gt;       5811    &lt;/Recovery_Port&gt;
&lt;Response_Mode&gt;       normal  &lt;/Response_Mode&gt;
&lt;Use_Replication_Log&gt; yes     &lt;/Use_Replication_Log&gt;
&lt;RLOG_Port&gt;           8301    &lt;/RLOG_Port&gt;
&lt;Replication_Timeout&gt; 1min &lt;/Replication_Timeout&gt;
&lt;LifeCheck_Timeout&gt; 3s &lt;/LifeCheck_Timeout&gt;
&lt;LifeCheck_Interval&gt; 15s &lt;/LifeCheck_Interval&gt;</pre>
<p>Soweit so gut, PG-Cluster sollte jetzt lauffähig sein und Queries replizieren. Starten müssen wir das Ganze auf beiden Nodes noch:</p>
<pre>su postgres
cd /usr/local/pgsql
./bin/pg_ctl -D data start
./bin/pgreplicate -D data</pre>
<p>Man kann jetzt das ganze einmal testen indem man einfach eine Datenbank erzeugt, eine Tabelle anlegt, und von beiden Nodes Inserts durchführt:</p>
<pre>./bin/createdb test
./bin/psql test
<pre>create table test ( test varchar(255));</pre>
</pre>
<pre># Dann jeweils auf beiden Nodes abwechselnd
#
insert into test (test) values (test1);
insert into test (test) values (test2);
select * from test;</pre>
<p>Man kann jetzt beobachten, wie die Queries repliziert werden.</p>
<h2>dbmail Setup</h2>
<p>Auch hier müssen wir zuerst dbmail holen, entpacken und installieren:</p>
<pre>cd /usr/src
wget http://www.dbmail.org/download/2.2/dbmail-2.2.11-rc3.tar.gz
tar -xvzf dbmail-2.2.11-rc3.tar.get
cd dbmail-2.2.11-rc3
./configure --with-pgsql=/usr/local/pgsql

Unter Debian Etch man/Makefile editieren, Zeile 547:
von:         asciidoc -b docbook -d manpage $&lt;
zu:          asciidoc --unsafe -b docbook -d manpage $&lt;

make
make install</pre>
<p>dbmail ist jetzt in /usr/local/sbin installiert. Die Konfiguration dbmail.conf kann man nach /etc/ kopieren und anpassen. Wer pglb (Loadbalancer) verwenden will, muss vor dem kompilieren in modules/dbpgsql.c nach Zeile 110 Folgendes einfügen:</p>
<pre>        g_string_append_printf(cs, " sslmode='disable'");</pre>
<h2>und der eigentliche MTA?</h2>
<p>nun fehlt noch <a href="http://www.postfix.org/" target="_blank">postfix</a>. Postfix wird mit apt-get install postfix postfix-pgsql installiert. Wenn man sasl verwenden möchte, sei darauf hingewiesen, dass man hier ein gepatchtes sasl braucht, welches gecryptete Passwörter in der DB zulässt. Meine main.cf für Postfix sieht dann so aus:</p>
<pre>smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
biff = no
append_dot_mydomain = no
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
smtpd_tls_session_cache_database = btree:${queue_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${queue_directory}/smtp_scache
myhostname = node01
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = $myhostname, mysql:/etc/postfix/sql-mydestination.cf
mynetworks = 127.0.0.0/8
mailbox_command = procmail
mailbox_size_limit = 0
recipient_delimiter = +
local_recipient_maps = pgsql:/etc/postfix/dbmail_rcpt.cf, pgsql:/etc/postfix/dbmail_rcpt_alias.cf
local_transport = dbmail-smtp:
broken_sasl_auth_clients = yes
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
smtpd_recipient_restrictions =
                           permit_mynetworks,
                           reject_invalid_hostname,
                           reject_non_fqdn_sender,
                           reject_non_fqdn_recipient,
                           reject_unknown_recipient_domain,
                           reject_unauth_pipelining,
                           reject_unknown_sender_domain,
                           permit_sasl_authenticated,
                           reject_unauth_destination
smtpd_sender_restrictions =
                           permit_mynetworks,
                           reject_authenticated_sender_login_mismatch,
                           permit_sasl_authenticated,
                           reject_sender_login_mismatch,
                           reject_unknown_sender_domain,
                           reject_unauth_destination,
                           reject_unknown_recipient_domain
check_sender_access = hash:/etc/postfix/sender_access
smtpd_sender_login_maps = pgsql:/etc/postfix/dbmail_sender_login.cf, pgsql:/etc/postfix/dbmail_sender_login_alias.cf
content_filter = smtp-amavis:[127.0.0.1]:10024</pre>
<p>Dann hier noch die Files welche für sasl benötigt werden:</p>
<pre>cat dbmail_rcpt.cf
user = dbmail
password = xxxxxxxxxxx
dbname = dbmail
hosts = node01
query = SELECT userid FROM dbmail_users WHERE userid='%s'

cat dbmail_rcpt_alias.cf
user = dbmail
password = xxxxxxxxxx
dbname = dbmail
hosts = node01
query = SELECT alias FROM dbmail_aliases WHERE alias='%s'

cat dbmail_sender_login.cf
user = dbmail
password = xxxxxxxxxx
dbname = dbmail
hosts = node01
query = SELECT userid FROM dbmail_users WHERE userid='%s'

cat dbmail_sender_login_alias.cf
# SMTP AUTH - check if the alias exists
user = dbmail
password = xxxxxxxxxx
dbname = dbmail
hosts = node01
query = SELECT userid FROM dbmail_users JOIN dbmail_aliases ON ( CAST (dbmail_aliases.deliver_to as bigint)=cast(dbmail_users.user_idnr as bigint)) WHERE dbmail_aliases.alias='%s';

cat sql-recipients.cf
user = dbmail
password = xxxxxxxxxxxxx
hosts = node01
dbname = dbmail
query =  SELECT alias FROM dbmail_aliases WHERE alias='%s' UNION SELECT userid FROM dbmail_users WHERE userid='%s';</pre>
<p>Ich selbst habe meine relay-Domains noch in der mySQL Datenbank stehen, hier kann aber auch einfach nur das Hash-File verwendet werden. Jetzt steht die Postfix Konfiguration auch soweit. Wir müssen jetzt noch das DB-Layout in der Datenbank anlegen:</p>
<pre>su postgres
cd /usr/local/pgsql
./bin/createdb dbmail
./bin/createuser dbmail
./bin/psql -U dbmail dbmail &lt;/usr/src/dbmail-2.2.11-rc3/sql/postgresql/create_tables.pgsql</pre>
<p>Nun kann man postfix starten/restarten. Die pop3 und imap services startet man in /usr/local/sbin mit ./dbmail-imapd sowie ./dbmail-pop3d &#8211; Nützlich ist auch dbmail-users und dbmail-util.</p>
<p>Die amavis Konfiguration sowie das Anlegen und Verwalten von Usern möchte ich hier nicht weiter behandeln, da hier wohl jeder Admin seine eigenen Preferenzen hat. Dennoch hoffe ich hier etwas Wissen in PG-Cluster und dbmail vermittelt zu haben und wünsche viel Spass mit dem neuen Mailsetup. Die bisherigen Probleme sollten damit alle passé sein.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.netz-guru.de/2009/01/12/die-ultimative-e-mail-losung-the-ultimate-e-mail-solution/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
	</channel>
</rss>
