====== sys3 - migration sys02 to web01 ====== {{tag>project infrastructure computing }} ===== 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 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');