Vollautomatisches Java-Update unter Windows erschienen auf PC-Welt.de
Apache Access Log anonymisieren
Als Betreiber einer Webseite besteht der legitime Wunsch für die Besucher interessante Inhalte bereitzustellen. Mit einer Zugriffstatistik lässt sich einfach herausfinden welche Inhalte beim Publikum ankommen. Das hierfür nötige Protokollieren der Zugriffe ist jedoch, sowohl aus ethischer, als auch datenschutzrechlicher Sicht, bedenklich.
Der Arbeitskreis Vorratsdatenspeicherung (AK Vorrat) beleuchtet die Thematik sehr schön auf der Portalseite Wir speichern nicht!. Zur Anonymisieren wird dort das Apache-Modul mod-removeip
vorgestellt, welches jedoch auch die IP-basierte Zugangskontrolle einschränkt und daher hier nicht weiter thematisiert werden soll. Stattdessen möchte ich die Installation von ipmask
, einer Software die ich beim sächsischen Datenschutzbeauftragten gefunden habe, kurz vorstellen. Dieses Apache-Modul greift erst beim Log ein und setzt, je nach Konfiguration, das letzte IP-Adressen Tupel auf Null.
ipmask
(unter GPLv3 lizenziert) kann im Sourcecode oder vorkompiliert für verschiedene Plattformen von http://www.saechsdsb.de/ipmask bezogen werden. Um das Modul unter Debian zum laufen zu bekommen, waren folgende Schritte notwendig:
- Binary herunterladen oder bauen und nach
/usr/lib/apache2/modules/
kopieren - Apache-Konfiguration anlegen und Modul laden:
1 2 3
sudo echo "LoadModule log_ipmask_module /usr/lib/apache2/modules/mod_log_ipmask.so" \ > /etc/apache2/mods-available/log_ipmask.load sudo a2enmod log_ipmask
Im Ergebnis ist der der Remote Host (Format String: %h) im Access Log anonymisiert.
WordPress SSL Login
SSL Login für WordPress lässt sich mit einem einzigen Parameter in der wp-config.php
erzwingen:
1 | vi wp-config.php |
1 | define('FORCE_SSL_ADMIN', true); |
Apache Speicherbedarf senken
Die Standard Apache-Konfiguration ist für ausgewachsene Maschinen ausgelegt und daher für kleine virtuelle Server-Instanzen ungeeignet. Nachfolgend beschriebe Änderung senkt den Speicherbedarf deutlich.
Konfiguration
1 | sudo vi /etc/apache2/apache2.conf |
1 2 3 4 5 6 7 8 9 10 | # Low memory setup # Low memory setup <IfModule mpm_prefork_module> StartServers 2 MinSpareServers 2 MaxSpareServers 5 ServerLimit 128 MaxClients 128 MaxRequestsPerChild 4000 </IfModule> |
Ergebnis
Im Chart sind zwei Senkung des für Anwendungen allokierte Speichers (committed) sichtbar. Die erste Senkung ist auf eine Anpassung der MySQL Konfiguration zurückzuführen. Die zweite Senkung wurde durch die oben beschriebene Anpassung der Apache-Konfiguration verursacht.
WordPress DB Backup & Restore
Das Sichern und Rücksichern einer WordPress Datenbank (MySQL) kommt bei mir nicht jeden Tag vor, daher habe ich die wichtigsten Schritte nachfolgend kurz zusammengefasst:
Datenbanken finden
Die von WordPress verwendete Datenbank kann in der wp-config.php
gefunden werden. Um eine Übersicht aller Datenbanken zu erhalten:
1 | mysql --user=user_name --password=your_password |
1 2 3 4 5 6 7 8 9 10 11 12 | SHOW DATABASES; +--------------------+ | DATABASE | +--------------------+ | information_schema | | wordpress | | mysql | +--------------------+ 3 ROWS IN SET (0.00 sec) quit Bye |
Datenbank sichern
Ist die richtige Datenbank gefunden, kann diese in eine Datei (etwa backup.sql
) gesichert werden:
1 2 | mysql --user=user_name \ --password=your_password db_name > backup.sql |
Datenbank anlegen
Für die Rücksicherung wird eine Datenbank sowie ein neuer Benutzer mit Kennwort entsprechend der wp-config.php
angelegt:
1 | mysql --user=user_name --password=your_password |
1 2 3 4 5 6 7 | CREATE DATABASE db_name; CREATE USER @localhost IDENTIFIED BY 'your_password'; GRANT ALL ON db_name.* TO user_name@localhost; SHOW DATABASES LIKE 'db_name'; SELECT Host, USER FROM mysql.user WHERE USER LIKE 'user_name'; SHOW grants FOR user_name@localhost; |
Datenbank zurücksichern
Jetzt kann die Datenbank zurückgesichert werden:
1 2 | mysql --user=user_name \ --password=your_password db_name < backup.sql |
Vernetzung der eigenen vier Wände
In letzter Zeit wurde ich einige Male gefragt, was bei der Vernetzung der eigenen vier Wände zu beachten ist. Nachfolgend ein paar grundlegende Hinweise:
- Die Adern werden an der Dose in der Regel nach T568A oder T568B aufgelegt (Es empfiehlt sich auf einen Standard zu setzen um Verwechslungen zu vermeiden.)
- Um für spätere Anwendungen gerüstet zu sein, sind hochwertige Kabel (Cat. 7) empfehlenswert, insbesondere da der Preisunterschied nicht allzu groß ist
- Die Anzahl netzwerktauglicher Geräte steigt ständig, daher sollten Dosen immer doppelt belegt werden
- Beim Verlegen dürfen die Kabel nicht geknickt werden (Faustregel für den Biegeradius ist eine Mineralwasserflasche, Details finden sich im Datenblatt des Kabels)
- Um ideale physikalische Eigenschaften zu gewährleisten, muss die Doppeladern unbedingt bis auf die letzten mm verdrillt bleiben
Hilfreiche Werkzeuge
- Zum Anschließen von Dosen ist ein LSA Anlegewerkzeug unerlässlich
- Verbindungsprüfer (Netzwerktester) ist sehr hilfreich, einfache Modelle werden bereits für kleines Geld angeboten
Abschließende Hinweise
- Im Zweifelsfall sollte lieber der Fachmann zu Rate gezogen werden um Schaden an teuren Endgeräten, Verletzungen und Frust zu vermeiden.
- Beim Verlegen die üblichen Installationszonen zu beachten.
MySQL Speicherbedarf senken
Kleinere LAMP-Instanzen laufen heute meist in virtuellen Server-Umgebungen, hier ist Speicher knapp bemessen. Mit dem Abschalten der InnoDB Database Engine lässt sich MySQL deutlich abspecken.
Schritt 1 — prüfen ob InnoDB als Engine verwendet wird:
1 2 3 4 5 6 7 8 9 10 | $mysql_pass=your_password mysql -p$mysql_pass -e "select distinct ENGINE FROM information_schema.TABLES" +--------------------+ | ENGINE | +--------------------+ | MEMORY | | MyISAM | | CSV | | PERFORMANCE_SCHEMA | +--------------------+ |
Im Beispiel taucht InnoDB nicht auf und kann daher deaktiviert werden.
Schritt 2 — InnoDB deaktivieren
Sollte eine Datenbank InnoDB-Tabellen haben, lässt sich die DB-Engine mit folgende Script auf MyISAM umstellen. (Vorher Backup anlegen!)
1 2 3 4 5 | mysql_pass='your_password' db='your_database' for t in `mysql -p$mysql_pass --skip-column-names -B -e "select table_name FROM information_schema.TABLES where engine = 'innodb'"`; do mysql -p$mysql_pass $db -e "ALTER TABLE $t ENGINE=MYISAM"; done |
Schritt 3 — InnoDB deaktivieren
Unter Debian/Ubuntu lässt sich die InnoDB Engine in der Konfigurationsdatei /etc/mysql/my.cnf
mit folgenden Zeilen deaktivieren:
1 2 | innodb=OFF default_storage_engine=MyISAM |
Schritt 4 — Test
sudo service mysql restart mysqladmin -u root -p$mysql_pass var | grep have_innodb #Vorher | have_innodb | YES #Nachher | have_innodb | DISABLED
Ergebnis
Im Chart sind zwei Senkung des für Anwendungen allokierte Speichers (committed) sichtbar.
Die erste Senkung ist auf die oben beschriebene Anpassung der MySQL-Konfiguration zurückzuführen. Die zweite Senkung wurde duch eine Anpassung der Apache Konfiguration verursacht.
Sag NEIN zu globalen Spionageprogramme
https://prism-break.org/ zeigt alternative Software um sich gegen totale Überwachung zu schützen.
Linux Hardware-Infos ermitteln
Hardware- und Systeminfos unter Linux ermitteln, erschienen auf PC-Welt.de
Tipp: Sprechende Passwörter
Sicher generierte Passwörter sind in keinen Wörterbuch zu finden, aber leider im Alltag nicht sonderlich praktisch. Das Programm APG (Automatischer Passwort-Generator) schlägt sprechende Passwörter vor und ist als Paket für Debian und Ubuntu verfügbar.
Interessante Parameter
-a 0
— sprechende Passwörter-M SNCL
— S Sonderzeichen, N Zahlen, CL Groß-/Kleinbuchstaben-n 16
— Anzahl Passwortvorschläge-t
— Aussprache des Passowort-l
— Buchstabiert das Passwort
Beispiel
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | $ apg -a 0 -M SNCL -n 16 -m 10 -t 1tufwivEp\ (ONE-tuf-wiv-Ep-BACKSLASH) Witt,ocef1 (Witt-COMMA-oc-ef-ONE) klyer%Onk4 (klyer-PERCENT_SIGN-Onk-FOUR) byd%Onoft4 (byd-PERCENT_SIGN-On-oft-FOUR) 4Knumjaid~ (FOUR-Knum-jaid-TILDE) 'Ovnenyoc8 (APOSTROPHE-Ov-nen-yoc-EIGHT) Ougpyt9Oj( (Oug-pyt-NINE-Oj-LEFT_PARENTHESIS) Id,Ods2Cid (Id-COMMA-Ods-TWO-Cid) nonyen~Oc2 (non-yen-TILDE-Oc-TWO) Wi4BlaHod@ (Wi-FOUR-Bla-Hod-AT_SIGN) rhyp0Drun$ (rhyp-ZERO-Drun-DOLLAR_SIGN) Kar9ordel" (Kar-NINE-ord-el-QUOTATION_MARK) hanvu#Wav9 (han-vu-CROSSHATCH-Wav-NINE) NanMov,ox7 (Nan-Mov-COMMA-ox-SEVEN) pebliv3Ol% (pe-bliv-THREE-Ol-PERCENT_SIGN) 5OgumKiOk; (FIVE-Og-um-Ki-Ok-SEMICOLON) |
Referenzen
https://help.ubuntu.com/community/StrongPasswords
http://packages.debian.org/stable/apg
http://packages.ubuntu.com/apg