sys3 - migration sys02 to web01

der plan

  • mit rsync den bisherigen vserver sys03 in den neuen web01 kopieren
  • auf sys03 alles anhalten
  • 2. rsync um die inzwischen aufgelaufenenn aenderungen zu uebetragen
  • 3. rsync - das sollte noop liefern
  • aenderungen in /etc/hosts /etc/hostname /etc/resolv.conf
  • web01 anstarten
  • checks & korrekturen
  • fertig in < 1h

platz fuer gelaechter

das waere ja zu einfach gewesen

was schief ging

  • mta startet nicht. strace sagt, er loopt in irgendwelchen AF_NETLINK socket operationen
  • grund: web01 kommt ohne loopback hoch - extra loopback in die vserver config eingetragen
  • web01 braucht fuer den betrieb des mta und f. akismet doch ne ipv4-adresse. die beisst sich aber mit der des proxies, dann tut das ganze webzeug nicht.
  • fetter irrweg mit dem versuch, dem indianer die nutzung der ports 80 und 443 oder gleich der ipv4-adresse abzugewoehnen
  • eine private ipv4-adresse sollte mit nat moeglich sein. incoming tut. outbound nicht.
  • check mit netcat -s ergibt: outbound koennte doch tun.
  • mta auf abgehende ipv4-adresse festgelegt - aber jetzt sendet er nur noch v4
  • das hilft aber nicht fuer alles andere. loesung: die 127.0.0.1 wird nach der private ip vergeben.
  • mta zusaetzlich auf abgehende ipv6-adresse festgelegt - endlich
  • dns updater dyn - ipv6-adresse des ns3 eingetragen - tat nicht - configfile parser gefixt

things been fixed later on

AKISMET

Subtiles Detail: die Absender-IP („REMOTE_ADDR“) ist nun fuer den Webserver immer die des Reverse Proxies. Blacklisted IPs sind so nicht mehr erkennbar. Idee: Auswertung des Headers „X-Forwarded-For“ statt „REMOTE_ADDR“. Patch gegen AKISMET Version 2.5.7:

akismet.php.diff
--- akismet.php 2013/04/01 14:50:01     1.1
+++ akismet.php 2013/04/01 14:52:47
@@ -319,9 +319,11 @@
 
 function akismet_auto_check_comment( $commentdata ) {
        global $akismet_api_host, $akismet_api_port, $akismet_last_comment;
+       $local_headers = apache_request_headers();
 
        $comment = $commentdata;
-       $comment['user_ip']    = $_SERVER['REMOTE_ADDR'];
+       #$comment['user_ip']    = $_SERVER['REMOTE_ADDR'];
+       $comment['user_ip']    = $local_headers['X-Forwarded-For'];
        $comment['user_agent'] = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : null; 
        $comment['referrer']   = isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : null;
        $comment['blog']       = get_option('home');
project/sys03/migration.txt · Zuletzt geändert: 2013/04/01 17:05 von 78.42.203.208