Froschs Blog

Computer und was das Leben sonst noch so zu bieten hat

Zur Website | Impressum

Archiv der Rubrik 'Computer'

Spaß mit MariaDB unter Devuan

Donnerstag, 22. Oktober 2020

Gestern erst motzte mich der Server wegen Jitsi-Meet und Let's Encrypt an, heute gab es schon wieder Ärger. Diesmal betraf es MariaDB, ein doch recht wichtiges Stück Software auf diesem Host.

Ich lasse früh morgens automatisch das Programm cron-apt laufen, damit ich mich um Standard-Update-Kram nicht mehr kümmern muß. Das schickt mir dann eine Mail mit dem Ablauf. Darin stand heute unter anderem das hier:

Preparing to unpack .../mariadb-server-core-10.3_1%3a10.3.25-0+deb10u1_amd64.deb ...
Unpacking mariadb-server-core-10.3 (1:10.3.25-0+deb10u1) over (1:10.3.23+maria~stretch) ...
dpkg: error processing archive /var/cache/apt/archives/mariadb-server-core-10.3_1%3a10.3.25-0+deb10u1_amd64.deb (--unpack):
trying to overwrite '/usr/bin/my_print_defaults', which is also in package mariadb-server-10.3 1:10.3.23+maria~stretch
dpkg-deb: error: paste subprocess was killed by signal (Broken pipe)
Errors were encountered while processing:
/var/cache/apt/archives/mariadb-server-core-10.3_1%3a10.3.25-0+deb10u1_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

(mehr …)


Jitsi-Meet, nginx, Let’s Encrypt und die Zertifikats-Erneuerung

Mittwoch, 21. Oktober 2020

Während mein Jitsi-Meet immer noch nicht so richtig funktioniert, wie es soll, kam gestern früh Let's Encrypt angeschlappt und erklärte, es könne das Zertifikat für die Site nicht erneuern, weil:

Attempting to renew cert (meet.atari-frosch.de) from /etc/letsencrypt/renewal/meet.atari-frosch.de.conf produced an unexpected error: Failed authorization procedure. meet.atari-frosch.de (http-01): urn:ietf:params:acme:error:unauthorized :: The client lacks sufficient authorization :: Invalid response from http://meet.atari-frosch.de/.well-known/acme-challenge/$CODE [2a01:4f8:150:81e4::2]: "<html>\r\n<head><title>404 Not Found</title></head>\r\n<body bgcolor=\"white\">\r\n<center><h1>404 Not Found</h1></center>\r\n<hr><center>". Skipping.

Öhm. (mehr …)


Die verflixten 40 GB

Freitag, 16. Oktober 2020

Nachdem ich mir kürzlich mit ausführlicher Beteiligung von Murphy ein Testsystem gebaut hatte, war ich in den letzten Tagen unter anderem damit beschäftigt, an diesem System IDE-Festplatten zu testen. Nach ein paar Tests hatte ich dem Test-PC zusätzlich eine der kleineren bereits getesteten Festplatten eingebaut (IDE primary slave), um die genaueren Plattendaten abspeichern zu können. Die sollten auf Dauer in mein Hardware-Wiki wandern. Ein Teil davon sind mittlerweile auch schon drin.

Nun habe ich fast alle Platten durch, und irgendwann fiel auf, daß Platten einer bestimmten Größe grundsätzlich nicht vom BIOS erkannt werden, obwohl sie physisch laufen. Der Erkennungsprozeß kann auch nicht übersprungen werden; auf die entsprechende Taste (F4) reagiert das System nicht. Wenn ich ins BIOS gehe und dort explizit die IDE-Geräte checken lasse, passiert dasselbe: Die alleine an den Secondary IDE angehängte Festplatte wird nicht erkannt, der Erkennungsprozeß kann nicht abgebrochen werden. (mehr …)


Spaß mit alter Hardware

Freitag, 2. Oktober 2020

Da nach dem „Großen Aufräumen“ mit der Hilfe eines Angestellten wieder so einigermaßen Platz ist hier, konnte ich mich endlich daranmachen, die ganze alte Hardware, die sich hier stapelt, mal durchzutesten. Also, dachte ich. Aber Murphy* hatte wohl echt eine gute Woche gehabt und sich hier ausführlich ausgetobt.

Um Computerteile zu testen, die teils deutlich vor 2010 produziert worden waren, brauchte ich natürlich ein angemessen älteres System. Außerdem wollte ich das ganze gleich nochmal richtig inventarisieren, weil meine Liste auf der statischen Website hoffungslos veraltet ist und weil das arg unübersichtlich werden würde, wenn ich alles, was ich da noch nicht draufgepackt habe, da auch noch mit reinschreibe. Deshalb setzte ich mir erstmal als Zwischenziel, ein MediaWiki aufzusetzen. Denn da kann ich bei Rechnern direkt verlinken, welche Teile gerade darin verbaut sind, und die Teile selbst wiederum ausführlicher beschreiben – Fotos inclusive. Ja, und dann kam Murphy.

* Murphy's Law: Was schiefgehen kann, wird auch schiefgehen. (mehr …)


Spaß mit iptables

Donnerstag, 10. September 2020

Mit iptables kann man auf einem Linux-System festlegen, welche IP bzw. welche IP-Bereiche auf welche Ports bzw. überhaupt auf einen Host zugreifen dürfen. Nun hatte ich vor einiger Zeit festgestellt, daß es sozusagen Port-Sucher gibt, die – schön langsam, damit sie unterm Radar bleiben – nach und nach alles an denkbaren Ports an einem Host abklappern, um zu gucken, ob da vielleicht ein sshd läuft. Denn mittlerweile legt man den sshd nicht auf den üblichen Port 22, sondern auf einen anderen, meist einen so genannten hohen Port (> 1024).

Wenn diese Port-Sucher fündig werden, schicken sie eine ganze Ladung anderer Hosts los, um diesen sshd zu, ähm, belästigen. Das fand ich etwas störend, also wollte ich etwas dagegen unternehmen.

Zu diesem Zweck definierte ich eine Regel, die den Zugang auf den Port des sshd auf ein paar wenige IP-Adressen einschränkt. Auf diesen Server hier kommen seitdem nur noch die Hosts, auf denen ich selbst wiederum einen Shell-Zugang habe, und eben die IP, die mir mein ISP hier zu Hause zugewiesen hat. Praktischerweise schien die letztgenannte IP quasi-fest zu sein; ich meine, die hat sich seit zwei Jahren oder so nicht mehr geändert.

Von Montag auf Dienstag änderte sie sich nun doch. Und damit fing der Spaß an. (mehr …)


Spaß mit MediaWiki

Dienstag, 26. Mai 2020

Ein ziemlich altes Mediawiki (Version 1.22.x oder so) lag seit ca. 2,5 Jahren auf Eis und sollte wiederbelebt werden. Was bisher geschah:

  • Installation MediaWiki 1.34.1 (von der Mediawiki-Website)
  • Datenbank in MariaDB angelegt
  • SQL-Dump der alten Datenbank eingelesen, alles OK
  • nginx konfiguriert
  • Wiki im Browser aufgerufen
  • Konfigurationsanweisungen befolgt, dabei Admin-Account angelegt
  • LocalConfiguration.php erzeugt, runtergeladen, plaziert
  • Wiki aufgerufen, Login mit dem vorher erzeugten Admin-Account; Paßwort nicht akzeptiert
  • Option „Paßwort vergessen“ angeklickt; Mail taucht im mail.log nicht auf und kommt natürlich auch nicht an
  • in der Wiki-Benutzerübersicht nachgesehen: Der Account existiert nicht;
  • die Datenbank ist auch dieser Meinung.

(mehr …)


Spaß mit pymysql

Dienstag, 19. Mai 2020

Ihr kennt das ja schon, wenn ich „Spaß mit $irgendwas“ in die Überschrift schreibe, hat mal wieder was nicht funktioniert, wie es sollte oder wie ich mir das dachte. In diesem Fall gab's aber tatsächlich eine recht schnelle Lösung.

Kürzlich habe ich auf zwei Servern ein Upgrade auf Devuan Beowulf durchgezogen. Dann entdeckte ich jeweils im daemon.log Einträge, die mir gar nicht gefielen:

May 18 16:32:01 seelilie mysqld: 2020-05-18 16:32:01 1852 [Warning] Aborted connection 1852 to db: '[$zensiert]' user: '[$zensiert]' host: 'localhost' (Got an error reading communication packets)

Und das alle paar Minuten seit dem 14. Mai früh morgens. Die Auslöser dieser Meldungen waren aufgrund der Zeitstempel schnell gefunden: Zwei per cronjobs aufgerufene Python-Scripte von mir, mit denen ich aus den Datenbanken der ClassicPress-Installationen unterschiedliche Daten aus den Wordfence-Tabellen auslesen lasse. Das eine wird alle fünf Minuten aufgerufen und greift bei jedem Aufruf in alle konfigurierten Datenbanken, das andere wird getrennt nach Blogs ein- bis zweimal pro Tag aufgerufen.

Ein wirkliches Problem schien aber gar nicht vorzuliegen, denn die Scripte bekamen nach wie vor die gewünschten Daten. Trotzdem wollte ich die Meldungen nicht ignorieren; es könnte ja etwas sein, was erst einmal keine sichtbaren Probleme macht.

Allerdings fingen die Meldungen nicht erst mit dem jeweiligen Upgrade an, sondern bereits vorher. Das schien es erst einmal komplizierter zu machen. (mehr …)


IMAP-Inbox von Thunderbird fixen

Freitag, 24. April 2020

Eine Nutzerin hatte ein IMAP-Postfach bei einem Provider A, das sie aber gekündigt hatte. Dann änderte sie die Zugangsdaten des Postfachs auf ihren neuen Mailprovider B, statt für diesen ein neues Postfach anzulegen. Thunderbird fand auf dem neuen Server natürlich nicht mehr die bisherigen Mails vor und ging einfach mal davon aus, daß diese – auch die lokalen Kopien davon – nicht mehr relevant seien. Well, Thunderbird irrte.

(Das hätte mir übrigens auch passieren können; ich benutze ja ausschließlich POP3-Postfächer, und da geht sowas tatsächlich, denn bei POP3 braucht Thunderbird ja keine korrespondierenden Abbildungen auf dem Mailserver.)

Damit ich mir das genauer ansehen konnte, hat mir die Nutzerin ihr gesamtes Thunderbird-Verzeichnis geschickt. Nach einer kurzen Inspektion war klar: Thunderbird hat die gesamte Korrespondenz aus diesem IMAP-Postfach auch nochmal lokal gespeichert. Damit hatte ich gleich eine gute Nachricht: Verloren ist nichts, Thunderbird zeigt die E-Mails nur einfach nicht mehr an. (mehr …)


Schrödingers Hardware

Freitag, 17. April 2020

Ende letzten Monats habe ich mir ja einen „neuen“ PC eingerichtet. Und weil der im Verhältnis zu den Geräteslots im Gehäuse recht wenig Anschlußmöglichkeiten für SATA (und natürlich gar keine für IDE) onboard hat, hatte ich mir ein IDE-DVD-ROM geschnappt und einen IDE/USB-Adapter drangesteckt, weil ich dafür schlicht keinen SATA-Anschluß mehr frei hatte. Dieses mittlerweile von einigen als altmodisch eingeordnete Gerät brauche ich weiterhin, um Filme und Serien zu schauen, die ich auf DVD gekauft habe und auch weiterhin zu kaufen gedenke.

Wenige Tage nach Inbetriebnahme des DVD-ROMs erklärte mir Linux, daß es kein optisches Laufwerk im System gebe. Einfach so. Am Abend zuvor hatte ich es noch genutzt. (mehr …)


OpenVPN Server auf Port 443 für Android-Client

Dienstag, 10. März 2020

Ich bekam vorgestern aus meinem Umfeld die Bitte, einen OpenVPN-Zugang auf Port 443 für ein Android-Smartphone zur Verfügung zu stellen. 443 ist ja eigentlich der Port, der für https vorgesehen ist, der verschlüsselten Übertragung von Webseiten; für OpenVPN ist Port 1194 üblich. Das ist, wie in diesem Fall, sinnvoll, wenn man nur einen stark eingeschränkten Internet-Zugang zur Verfügung hat, bei dem nur die Standard-Ports für WWW und E-Mail zugänglich und alle anderen gesperrt sind. Außerdem sind wohl auch bestimmte IP-Ranges gesperrt. Nein, nicht Iran oder China. Ein Patienten-WLAN in einem deutschen Krankenhaus.

Auf meinem Hauptserver habe ich zwar einen OpenVPN-Server laufen, aber natürlich auf einem anderen Port, denn 443 ist hier für den Webserver reserviert. Allerdings habe ich ja vor gut zwei Monaten für ein Projekt zusätzlich einen kleinen V-Server angemietet, und auf dem läuft kein Webserver. Also habe ich da vorgestern mal ein neues OpenVPN draufgebaut, dem Nutzer die nötigen Dateien incl. Client-Konfiguration gemailt und – es funktionierte nicht. „TLS handshake failed“, sagte der Client. (mehr …)


gitweb und die robots.txt

Donnerstag, 5. März 2020

In den letzten paar Monaten fiel mir auf, daß unterschiedlichste Hosts ziemlich fleißig meine Gitweb-Site crawlten, und zwar allesamt mit der Crawler-Kennung „MJ12Bot“. Dieser Crawler wird tatsächlich dezentral betrieben, das heißt, wer mag, kann sich das Ding auf seinem Host installieren und ihn dann fleißig laufen lassen. Gemeldet werden die Daten dann wohl an eine zentrale Datenbank.

Weil ich das nicht wollte, hatte ich den MJ12Bot in die robots.txt für die Gitweb-Site eingetragen. Den MJ12Bot schien das nicht weiter zu stören. Ich nahm ihn dann vor einiger Zeit in den badbots-Filter von fail2ban auf, weil ich ihn offenbar nicht anders loswerden konnte.

Heute stellte ich dann „endlich“ fest, daß ich hier mal wieder ein PEBCAK produziert hatte … (mehr …)


Python: (Fast) alles ist eine Liste

Samstag, 16. November 2019

„In Python ist alles eine Liste“, erklärte mir zu Beginn Bison aus dem Chaosdorf, als ich gerade anfing, Python zu lernen. An die Denkweise konnte ich mich gut gewöhnen. In den letzten Monaten ist sie mir allerdings in einem, ähm, speziellen Fall so richtig auf die Füße gefallen, und zwar im Zusammenhang mit Feldabfragen in MySQL. Heute habe ich endlich die Lösung gefunden.

Seit einiger Zeit bauen mir die Scripte aus meinem Projekt htmlglue meine statische Website zusammen. Dabei bekommt die Startseite jedes Mal ein anderes Zufallsfoto, dessen Daten aus der Datenbank meiner Media-Website gezogen werden; die Bilder selbst stehen natürlich nicht in der Datenbank, aber die Datenbank kennt den jeweiligen Pfad im Filesystem. Die Media-Website läuft unter Piwigo, und dessen Datenbank ist, wie üblich, in MySQL angelegt (ich verwende allerdings MariaDB). Und mit den zusätzlichen Informationen zu den Bildern hatte ich gelegentlich so ein kleines, größeres Problem. (mehr …)


Wordfence to fail2ban

Freitag, 1. November 2019

Das WordPress-Plugin Wordfence ist ein weit verbreitetes Sicherheits-Plugin, um WordPress und auch dessen Clone ClassicPress vor unerwünschten Zugriffen zu schützen. Leider hat es einen Nachteil: Es kann Zugriffe nur auf Webserver-Ebene blockieren. Das heißt, auch intensive Einbruchsversuche, aggressives Crawling, oder sogar Versuche, angreifbare Plugins oder Themes etc. zu finden, hämmern trotzdem unter Umständen stunden- bis tagelang auf den Webserver ein. Und diese Angreifer können wirklich sehr aggressiv und ausdauernd sein.

Man könnte nun nach einer Mail von Wordfence, daß da mal wieder ein Host keine Ruhe gibt, diesen Host in die Firewall eintackern. Diese Einträge müßte man dann aber ständig nachhalten, denn irgendwann hören die Angriffe von einem bestimmten Host ja auch mal wieder auf, und die Firewall-Einträge möchte man ja eher knapp halten, damit die Überprüfung bei jedem Zugriff von außen nicht zu lange dauert. (mehr …)


Öffentlicher Dienst und IT

Dienstag, 29. Oktober 2019

Ich hab jetzt länger nix von mir hören, also, ähm, lesen lassen, weil's mir echt nicht gut ging. Aber grad hab ich was gelesen, da muß ich doch mal ein bißchen was drüber loswerden. Und zwar schreibt der Tagesspiegel: Experten warnten schon 2017: IT-Katastrophe am Berliner Kammergericht kam mit Ansage. Aua. Aua. AUA! Auhauerha!

Also erstmal: Die Software war gnadenlos veraltet. Ich meine, Windows 95!? Echt jetzt?

Mir scheint es außerdem, daß es (was mich aus meiner eigenen Erfahrung im öffentlichen Dienst jetzt so gar nicht wundern würde) keinerlei Schulungen des Personals zum Thema Datenschutz gab. Bei einem Gericht müßte da eigentlich jede Person, vom Richter bis zur Tippse, immer auf dem aktuellen Stand sein. Auch was IT-Sicherheit angeht, von Paßwörtern bis zum Transport von Daten; gerade, wenn auch zu Hause gearbeitet wird. (mehr …)


Von Debian nach Devuan

Samstag, 31. August 2019

Lange geplant, endlich in Angriff genommen: Mein Wechsel von Debian zu Devuan. Versuchsweise habe ich natürlich erstmal mein Notebook, das Thinkpad R61, migriert, um zu sehen, wo ich auf Schwierigkeiten stoßen könnte, wenn ich den Desktop migriere. Und ein V-Server eines Vereins steht auch noch an. Alle drei Rechner gehen von Debian Jessie aus.

Zunächst habe ich die vorhandene Installation auf dem Thinkpad nochmal aus Debian heraus aktualisiert, weil ich da schon länger nichts mehr dran gemacht hatte. Also, „schon länger“ wie in „mehrere Monate“. Dann ging es richtig los. Um keinen zu großen Versionssprung zu machen, habe ich zunächst die Paketquellen von Devuan Jessie gewählt, das ist sozusagen deren Null-Version oder auch oldstable. Ich ging nach dieser Anleitung vor: Migrate to Devuan Jessie. Erst später stellte ich fest, daß ich auch direkt zu Devuan ASCII hätte migrieren können, aber ich glaube, mit dem Umweg über die Jessie-Version von Devuan war es sicherer. (mehr …)