1081 Tage und Blog-Migration

Beim Sichern eines alten kleinen Servers vor Neuinstallation fiel mir die Uptime auf.

root@blutnacht:~# uptime
 16:38:13 up 1081 days,  7:17,  1 user,  load average: 1,34, 1,53, 1,01

1081 Tage. Das liest sich durch meine alte Informationssicherheits-Brille ziemlich unsicher. Das gute Debian GNU/Linux jessie läuft seit dem 14.02.2015 und ein apt-get dist-upgrade fordert 57 neue Pakete. Alles halb so wild, ist ja gut gegangen.

Als ich den Server gestartet habe, habe ich noch bei meinem vorletzten Arbeitgeber gearbeitet und war nicht verheiratet.

In diesem Sinne: Habt ihr auch Server mit langer Uptime? Was hat sich seit dem Start bei euch verändert?

PS.: Der Blog wird die Tage einmal hoppeln und den Hoster wechseln.

S.M.A.R.T-Werte einer defekten Festplatte

Festplatten sterben langsam oder fahren nie hoch, soweit meine bisherige Erfahrung der vergangenen Jahrzehnte. Diesmal habe ich einen Umzug und ein Dreivierteljahr zulange gewartet. Die Daten musste ich jetzt mittels dd_rescue retten. Folgend ein Beispiel für eine defekte Platte.

SMART Attributes Data Structure revision number: 16
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  1 Raw_Read_Error_Rate     0x000b   076   076   016    Pre-fail  Always       -       3475044
  2 Throughput_Performance  0x0005   001   001   054    Pre-fail  Offline  FAILING_NOW 45399
  3 Spin_Up_Time            0x0007   130   130   024    Pre-fail  Always       -       173 (Average 180)
  4 Start_Stop_Count        0x0012   097   097   000    Old_age   Always       -       12373
  5 Reallocated_Sector_Ct   0x0033   001   001   005    Pre-fail  Always   FAILING_NOW 1385
  7 Seek_Error_Rate         0x000b   100   100   067    Pre-fail  Always       -       0
  8 Seek_Time_Performance   0x0005   120   120   020    Pre-fail  Offline      -       32
  9 Power_On_Hours          0x0012   095   095   000    Old_age   Always       -       37732
 10 Spin_Retry_Count        0x0013   100   100   060    Pre-fail  Always       -       0
 12 Power_Cycle_Count       0x0032   099   099   000    Old_age   Always       -       5686
192 Power-Off_Retract_Count 0x0032   090   090   000    Old_age   Always       -       12568
193 Load_Cycle_Count        0x0012   090   090   000    Old_age   Always       -       12568
194 Temperature_Celsius     0x0002   146   146   000    Old_age   Always       -       41 (Min/Max 16/56)
196 Reallocated_Event_Count 0x0032   001   001   000    Old_age   Always       -       27391
197 Current_Pending_Sector  0x0022   100   100   000    Old_age   Always       -       128
198 Offline_Uncorrectable   0x0008   100   100   000    Old_age   Offline      -       0
199 UDMA_CRC_Error_Count    0x000a   200   200   000    Old_age   Always       -       0

Schnelleres Wiederherstellen von MySQL Backups

Wer regelmäßig mittels mysqldump Backups von Datenbanken von MySQL oder MariaDB macht, kennt das Problem. Gerade die Storage-Engines MyISAM bzw. Aria und InnoDB können mit Default-Einstellungen recht langsam im Wiederherstellungsprozess sein. Was hilft? Das Deaktivieren einiger Prüfungen und die Erinnerung, dass SQL in Transaktionen „denkt“.

Das folgende Skript ergänzt in eurem Dump die entsprechenden Befehle und erzeugt eine Kopie.

echo "SET autocommit=0;
SET unique_checks=0;
SET foreign_key_checks=0;" > backup_loadMeFaster.sql
cat backup.sql >> backup_loadMeFaster.sql
echo "COMMIT;" >> backup_loadMeFaster.sql

Das wars schon.

Swap deaktivieren oder beibehalten?

In einer Zeit, in der Arbeitsspeicher rar war, nutze man eine Auslagerungspartition oder -datei um nicht benötigte Teile des Arbeitsspeichers auszulagern. Dieser Auslagerungsspeicher (kurz Swap) ist auf aktuellen IT-Systemen und gerade unter Linux noch immer weit verbreitet.

Bei der aktuellen Menge an verfügbarem Arbeitsspeicher ist es selten erforderlich, diese Funktion zu nutzen. Also auf Swap in Servern verzichten und den freien Plattenplatz anderweitig nutzen? Nein!

Auch bei großen Mengen an Arbeitsspeicher oder an die zu betreibenden Dienste angepasster Menge an Arbeitsspeicher macht ein Page Cache und eine Auslagerungsdatei als Fangnetz für Notfälle Sinn. Fordert eine Anwendung mehr Arbeitsspeicher an als verfügbar ist, startet sonst der Out-of-Memory Killer und beendet zwangsweise Anwendungen.

Mit diesem Wissen macht es also sehr wohl Sinn, eine kleine Auslagerungspartition mit zum Beispiel 512MiB einzurichten und die Nutzung zu überwachen. Wird die Partition genutzt, kann dies als Hinweis auf eine Überlastsituation herangezogen werden. Um den Swap so zu nutzen, macht es Sinn das System so zu konfigurieren, dass es den Swap nur in Notfällen nutzt. Und das geht wie folgt.

# Minimal Swapping - s. https://en.wikipedia.org/wiki/Swappiness
echo "vm.swappiness = 1" >> /etc/sysctl.conf
sysctl -p
swapoff -a
swapon -a

PCEngines APU.2C4

Darfs ein bischen mehr sein? So oder so ähnlich kann das seit 2016 erhältliche APU.2C4 SoC-Board von PCEngines treffend zusammengefasst werden. PCEngines wurde durch die ALIX-Systeme bekannt, die sich mit kleinsten Ausmaßen bereits vor zehn Jahren als kleine kompakte Firewall oder Router empfahlen. 500 Megahertz und zwei bis vier 100 MBit/sec Netzwerkschnittstellen, soviel gab es damals für 150 Euro plus Gehäuse und Netzteil. Durchaus ausreichend für die seinerzeit aktuellen ADSL(2)-Anschlüsse und NAT, ein paar Firewall-Regeln und etwas DNS.

Die Zeit bleibt nicht stehen und so ist es wenig überraschend, dass auch PCEngines seit Anfang des Jahres ein neues kompaktes System im Angebot hat: Das APU.2C4.

APU.2C4 Komplettset
APU.2C4 Komplettset

Für circa 200 Euro erhält man ein Komplettset der APU2, bestehend aus folgenden Komponenten (zum Beispiel bei Tronico aus Dortmund).

  • APU.2C4 SYSTEM BOARD
  • GEHÄUSE FÜR ALIX.2X3, ALIX.2D13, APU
  • STECKERNETZTEIL FÜR ALIX.1X, APU.X
  • TRANSCEND MSATA SSD 64GB

Der Zusammenbau ist unkompliziert, zu beachten ist einzig die richtige Anbringung des Kühlkörpers.

Was bringt das kleine Board mit, dass es perfekt für eine SoHo-Firewall mit pfSense erscheinen lässt?

Prozessor

Das APU.2C4 bringt einen eingebetteten AMD GX-412TC Prozessor mit. Ein Quad-Core Prozessor mit 1Ghz, 2MB L2 Cache und einem Turbomodus auf 1,4Ghz. Die TDP liegt bei 6W und die maximale Betriebstemperatur bei 90 degC. Das ganze Paket wird durch Unterstützung von AES-NI und Hardware-Virtualisierung abgerundet.

Netzwerk

Hier empfiehlt sich das kleine SoC-Board mit drei Intel i210AT Ethernet Controllern besonders als Firewall. Erwähnenswert ist die Unterstützung von hardwareunterstützter Berechnung von Prüfsummen sowohl für IPv4 wie auch IPv6 sowie Unterstützung von Message Signal Interrupt Extension (MSI-X), um die Verarbeitung von Datenpaketen auf Mehrkern-Systemen durch Parallelverarbeitung zu beschleunigen.

Erweiterungsmöglichkeiten

Vom Hersteller PCEngines selbst sind zwei miniPCIe WLAN-Karten verfügbar. Einmal die wle200nx und einmal die wle600vx. Weitere WLAN-Karten in diesem Formfaktor sind verfügbar. Das von PCEngines vertriebene Gehäuse bietet passend für die beiden WLAN-Karten zwei Löcher (im Lieferzustand mit Gummi-Pfropfen verschlossen) um Antennenanschlüsse zu befestigen.

Ansonsten gestaltet sich das Angebot relativ unspektakulär bis auf einen miniPCIe DVB-Tuner mit bis zu vier Tunern von Digital Devices.

Bleibt nur ein Bild des hier mit pfSense werkelnden Boards.

APU.2C4 im Rack
APU.2C4 im Rack

Routerzwang bald Vergangenheit?

Anlässlich des weiter fortschreitenden Gesetzgebungsprozesses zur Abschaffung des Routerzwangs eine Nachricht aus der Zukunft. Könnte der folgende Text von einem Kabelkunden im Januar 2017 verfasst worden sein?

Ich hab eine Fritz!Box für 5 Euro pro Monate gemietet, die echt mies war. Die Box stürzte ab, hat sich neugestartet, nicht funktioniert etc… Dann hab ich mit einem der Unitymedia Techniker auf Twitter gesprochen und der hat mir dieses Modem empfohlen, das noch nicht in meinem Gebiet verbaut wird. Voila, auf zu Amazon gings.

Ich hab das Modem gekauft und es kam am nächsten Tag. Schnell alles ausgeschaltet….Router, Computer, etc. Einrichtung lief wie folgt:

A. TV-Kabel an neues Modem anschließen
B. Netzwerkkabel vom Modem an Computer anschließen (nur beim ersten mal).
C. Modem anschalten
D. Computer anschalten
E. Für Unitymedia – Beim ersten Seitenaufruf erscheint eine Webseite wo man sein Modem registrieren kann
F. Einige Zahlen eintippen… z.B. MAC-Adresse, Kundenummer, etc.
G. FERTIG… Modem neustarten, Netzwerkkabel an Router anstecken.
H. DOCSIS 3.0 genießen

Ich hab das Teil jetzt seit einigen Wochen und es funktioniert super seit dem ersten Tag. Wir bekommen endlich wofür wir bezahlen…was mit dem alten Schrott den Unitymedia verteilt hat nicht der Fall war. Wir kriegen jetzt 120Mbit down und 6Mbit up…

Wir sind zufrieden, so muss das sein.

(Frei übersetzt nach einem amerikanischen Review auf amazon. Dort kann jeder Kunde sein Kabelmodem bereits frei wählen.)

Was würdet ihr mit der freien Wahl des Endgeräts anstellen? Ich erhoffe mir einen stabilen Bridge-Modus und SNMP-Auswertungen.

Sprachrätsel Präzision

In meiner täglichen Arbeit beschäftige ich mich immer wieder mit der Semantik unserer Sprache und wie spezifische Umstände möglichst abgegrenzt und unmissverständlich wiedergegeben werden können. Darum für euch ein kleines Rätsel:

Anita hat frisch in der Poststelle eines Unternehmens angefangen und trägt Pakete intern aus. Auf ihrem Wagen ist das für Herrn Ammann wichtige Paket und das wichtige Paket für Herrn Bemann.

Welches Paket sollte Anita zuerst austragen, damit das Unternehmen weiterkommt?