neunzehn83.de

Ein Mann, ein Blog, kein Plan.

2021

OpenVPN in einem LXC-Container auf einem Raspberry Pi 4 mit Ubuntu

Der LXC-Container braucht ein "tun" device. Dazu gibt es viele Artikel im Internet. Keiner davon hat so richtig funktioniert, deshalb hier die Notiz an mich selbst. Es ist eigentlich ganz einfach. Die Container-Config… read more

2020

Debian Linux Fileserver für Windows und Mac Clients

Ich mag keine NAS-Boxen. Zu eingeschränkt, zu langsam, zu unflexibel. Natürlich besteht für mich der perfekte Fileserver aus einem Debian-System mit ein paar wenigen Standardpaketen. In diesem Fall Debian 10 Buster. Idee: Fü… read more

2018

Mailjet und die Deliverability zu @t-online.de

Als kleiner Mailserver-Betreiber tut man sich bekanntlich schwer, eine gute Zustellbarkeit zu erreichen. Für wirklich wichtige E-Mails, bspw. transaktionale E-Mails eines Online-Shops wie Bestellbestätigungen usw., sollte m… read more

2017

Kündigungs-Bluff: 25% Rabatt bei UnityMedia / KabelBW

Da ich demnächst in ein Gebiet umziehe, das nicht von UnityMedia versorgt wird, habe ich meinen Kabelanschluss kürzlich gekündigt. Und das kann ich allen Bestandskunden auch nur empfehlen, denn: Seit meiner Kündigung erh… read more

Armer kleiner Postmaster

Geht es nur mir so, oder wird es immer schwieriger als kleiner privater Mailserver-Betreiber eine gute "deliverability" zu erreichen? Soweit ich das beurteilen kann, habe ich alles in meiner Macht stehende getan… read more

2016

fail2ban.log mit fail2ban überwachen für hartnäckige Angreifer

nn man mit fail2ban die eigene Logdatei überwacht kann man besonders hartnäckige Angreifer für einen längeren Zeitraum ausschließen. Dazu wird ein eigener Filter auf die fail2ban.log Datei angelegt. Fail2ban logt hier sämt… read more

Verschleierung von "SPIEGEL Plus" unter der Lupe

SPIEGEL Plus ist das neue Bezahlangebot von spiegel.de bei dem einzelne Artikel teilweise nur "verschwommen" angezeigt werden bis man diese eben durch einen kleinen Centbetrag freischaltet. So sieht das dann aus: Aus… read more

Wo bleibt E-Mail 2.0?

Web 2.0, Industrie 4.0, IPv6, ... und E-Mail 1.0? Die E-Mail ist schon sehr alt. Sogar schon älter als das Internet. Vieles hat sich seit deren Erfindung Anfang der 70er Jahre getan. Mehrere (R)evolutionen bei Internet- … read more

Tutorial: SSL-Zertifikate von Let's Encrypt

Wie bereits geschrieben verwende ich für diesen Blog jetzt ein SSL Zertifikat von Let's Encrypt. Und das funktioniert erstaunlich gut. Zu Beginn kann man aber schon mal etwas überfordert sein, da das Vergabesystem von Let's E… read more

SSL-Zertifikat von Let's Encrypt auf neunzehn83.de

Knapp ein Jahr ist's her, als ich meinen Blog mit SSL ausgestattet habe. Dies bedeutet auch, dass nun das kostenlose SSL-Zertifikat von StartSSL ausläuft und verlängert werden müsste. Da aber Let's Encrypt gerade in aller Mu… read more

2015

TOR-Nutzer blocken, umleiten oder mit PHP unterscheiden

{.main} TOR-Nutzer können manchmal lästig werden. Glücklicherweise sind diese aber sehr leicht zu identifizieren, denn sämtliche IP-Adressen von TOR Exit-Nodes lassen sich über die Webseite des TOR-Projektes abfragen. Der … read more

KabelBW und eine eigene, öffentliche IPv4-Adresse

Wer seine FritzBox an einem KabelBW-Anschluss von außerhalb via IPv4 erreichen möchte, der hat in der Regel ein Problem. KabelBW bindet die Modems nur noch über IPv6 direkt an das Internet an. Die IPv4 Konnektivität findet aus… read more

SSL überall - jetzt auch auf neunzehn83.de

{.main} Künftige Versionen des Chrome Browsers sollen vor unverschlüsselten HTTP-Verbindungen warnen. Höchste Zeit also auch den kleinsten Blog fit für HTTPS zu machen. SSL-Zertifikat von bekannten Vergabestellen gibt es … read more

2014

De-Mail Subdomains und sonstiger Registrierungswahn

Die De-Mail steht in den Startlöchern. So rührt 1und1 bei seien Firmenkunden aktuell kräftig die Werbetrommel für De-Mail mit eigener Subdomain. Für schlappe 10 Euro im Monat können Firmen über 1und1 also unter der offizi… read more

iOS PUSH-Nachricht bei Kontobewegung mit DKB Online-Banking

Da ich mich beruflich gerade mit dem Thema PUSH-Nachrichten auseinandergesetzt habe, war ich auf der Suche nach einer Testanwendung. Dann kam mir ein App in den Sinn, welches bei jeder Kontobewegung auf meinem DKB-Konto eine… read more

Google+ Konto mit Blog verknüpfen

Ist ein Blog oder bestimmte Beiträge davon mit einem Google+ Konto verknüpft, so erscheinen in den Suchergebnissen gleich die Autoreninformationen wie Name und Bild. Diese Informationen kommen vom verknüpften Google+ Ko… read more

BSI Datenklau: Hosteurope informiert über mögliche Kompromittierung

te habe ich eine E-Mail von Hosteurope mit folgendem Betreff erhalten: Host Europe informiert: mögliche Kompromittierung Ihres E-Mail-Kontos. Darin informiert mich Hosteurope, dass ein E-Mail-Account auf meinem vServer kompromittiert … read more

2013

Mac OS: VPN-Verbindung zur Fritzbox mit gleichzeitig direkter Internetverbindung

Eine VPN-Verbindung zur Fritzbox funktioniert unter MacOS X ohne zusätzliche Tools über IPSec. Standardmäßig wird bei aktiver VPN-Verbindung sämtlicher Traffic über diese Verbindung geleitet. Dabei ist es in vielen Fälle… read more

Passwort zum Google-Account vergessen?

Das Problem sollte eigentlich keines sein, da Google das Zurücksetzen des Passwortes über das Web anbietet. Doof nur, dass das Smartphone, im Gegensatz zu allen anderen, das Passwort nicht vergessen hat und sich damit p… read more

MacOS X: Netzwerk-Umgebung automatisch ändern

Verschiedene Netzwerkumgebungen sind auf einem MacBook sehr praktisch, besonders wenn dieses oft an unterschiedlichen Orten und somit in unterschiedlichen Netzwerken zum Einsatz kommt. Doof nur, dass nach einem Standortwechsel… read more

Raspberry Pi Colocation

Debian und ARMv6 Im Pi tickt ein ARMv6 Prozessor. Darauf Debian zu betreiben ist kein Problem. Könnte man meinen. Doch leider unterstützt der standard ARM-Port (Debian armel) keine Hard-Float-ABI, was zu ziemlich bescheidener P… read more

SIM Karte von HolidayPhone

Wer im Ausland erreichbar sein will oder mobile Daten benötigt kommt um eine SIM-Karte von einem lokalen Anbieter nicht herum. In den meisten Fällen sollte es auch kein Problem sein, vor Ort eine Prepaid-Karte zu kaufen. A… read more

Die Geschichte von der Shell und dem Ending-Slash

Über die Auswirkungen eines abschließenden Slashes bei Verzeichnisangaben unter Linux. Sollte ja eigentlich keine Rolle spielen, oder etwa doch? read more

Apple Hardware Test (AHT) Fehler 4HDD/11/40000000SATA(0.0)

At first I was like but then I was like Ein mir in die Hände gekommenes MacBook Pro aus 2010 war selbst nach frischer Neuinstallation quälend langsam. Boot-Zeiten von mehreren Minuten waren normal, das ganze System war t… read more

2012

Virtualisierung mit KVM unter Debian Squeeze

KVM ist der neue Star am Virtualisierungshimmel unter Linux. Die Begrifflichkeiten sind anfangs etwas verwirrend und der ein oder andere Stolperstein liegt auch herum. Deshalb dieser Blog-Eintrag als "Notiz an mich selbst". KVM… read more

neunzehn83.de v2.0

Zum Bloggen kam ich in 2012 eher weniger, dafür wurde aber hinter den Kulissen kräftig gearbeitet. Ab heute erscheint neunzehn83.de in neuem Glanz! Bye bye Wordpress Nach fast drei Jahren wurde das Wordpress durch etwas s… read more

IPv6 und die Dimension

Ja, so ganz durch ist das Thema IPv6 hier noch nicht - aber bald, versprochen! Also, einen noch: IPv4-Adressen werden knapp. So wie das Öl. Das weiß jeder. Bei Hetzner ist für Zusatz-Subnetze jetzt schon ein monatlicher Be… read more

Neuerungen in PHP 5.4

PHP 5.4 ist schon bei RC7, steht also sozusagen vor der Türe und schafft es wohl auch in das nächste Debian stable alias Wheezy. Wie auch schon bei 5.2->5.3 kommen einige nette und über Jahre in den PHP-RFC diskutierten Fe… read more

Postfix: reject_sender_login_mismatch pro SASL username

Die Postfix-Konfiguration kann einem einige graue Haare verursachen, so wie bei dieser Problemstellung hier. Ich habe manchmal den Eindruck, dass Postfix gar nicht dazu entwickelt worden ist, E-Mails zu senden und zu empfangen,… read more

neunzehn83.de jetzt auch über IPv6 erreichbar

Dank IPv6 zu Hause über den Tunnelbroker Sixxs konnte ich nun endlich meinen vServer fit für "das neue Internet" machen. Natives IPv6 ist wohl in absehbarer Zeit nicht zu erwarten, da von meinem ISP, der Kabel B… read more

Froxlor Bug: maximale Länge von ServerAlias (Apache)

SysCP bzw. dessen Nachfolger Froxlor kümmert sich hier auf diesem Server um das Erstellen diverser Konfigurationsdateien sowie um die Verwaltung der virtuellen User für E-Mail- und FTP-Zugänge. Schon vor einiger Zeit habe ic… read more

2011

PHP und Y2K38: Werden wir alle sterben?

Der 19. Januar 2038 3:14:07 Uhr ist ein besonderer Zeitpunkt. Dann sind nämlich genau 2147483647 Sekunden seit dem 1. Januar 1970 vergangen. PHPs date()-Funktion arbeitet genau auf dieser Grundlage - auch bekannt als der … read more

PHP CLI Fortschrittsbalken

Hin und wieder führt man PHP-Skripte direkt auf der Kommandozeile (CLI) aus. Das hat den Vorteil, dass man nicht den Umweg über den Webserver gehen muss, wenn man ihn garnicht braucht. Außerdem lässt sich das Skript leicht mit… read more

Zwei Jahre (und ein bisschen) neunzehn83.de

Wie auch schon letztes Jahr habe ich den Geburtstag (oder sagt man Jahrestag) meines Blogs knapp verpennt. Macht aber nichts, zu bloggen hab ich nämlich auch vergessen. 2011 waren die Anspüche groß, die Resultate blieben ab… read more

SVG nach PNG umwandeln mit Textpath [Debian Linux]

Kurz erwähnt, da es mich selbst zu viel Zeit gekostet hat dieses eigentlich einfache Problem zu lösen: Möchte man ein SVG in PNG (oder sonstige Pixelgrafikformate) umwandeln, versucht man das wohl zunächst mit ImageMagick. Das… read more

PHP-Security! Heute: path traversal

Path traversal bzw. directory traversal ist eine Methode, um aus vorgesehenen Verzeichnissen auszubrechen. In Bezug auf PHP findet diese Sicherheitslücke Anwendung, da Dateien oftmals anhand des Querystrings eingebunden … read more

Variablen tauschen ohne Hilfsvariable?

Pah! #!php list($a, $b) = array($b, $a); read more

Über Primary-Keys in URLs .. und sonstwo

Ein Primary-Key identifiziert eindeutig ein Tupel (Zeile/Reihe/Row) in einer relationalen Datenbank. Im trivialen Fall ist das eine Integer-Spalte mit auto_increment - wenn wir von MySQL reden, wie so oft hier. Eine fortlaufende… read more

Data URIs vs. CSS-Sprites

CSS-Sprites sind eine elegante Möglichkeit um GET-Requests zu minimieren und daruch den Seitenaufbau zu beschleunigen. Dabei werden viele kleine Symbole in einer großen Grafik zusammengefasst und via CSS  immer nur der pa… read more

PHP-Skript im Hintergrund ausführen #2

Die bereits erwähnte Methode über Content-Length funktioniert zwar etwas hakelig, ist aber in Webspace-Umgebungen oft die einzige Methode ein PHP-Skript im Hintergrund auszuführen. Eine andere Methode (neben dem Cronjob) be… read more

reCAPTCHA Tricks ;)

reCAPTCHA ist ein sehr verbreiteter Captcha-Service der von Google betrieben wird. Viele Webseiten zeigen via reCAPTCHA-Webservice diese Captchas an, um Ihre menschlichen Besucher von Bots zu unterscheiden. Das Besondere:… read more

Apples consolidated.db visualisieren

Es wurde wohl schon genug über das Speichern von Bewegungsdaten auf Apples iPhone geschrieben. Nur eins noch: Mit Hilfe dieser Webseite kann man die consolidated.db (die böse Datei, in der all die Bewegungsdaten gespeichert s… read more

jQuerys $-Funktion

Wie wir alle wissen, werden Variablen in JavaScript nicht mit einem vorangestellten Dollarzeichen kenntlich gemacht. Insofern ist das Dollarzeichen für Javascript einfach nur das 36. Zeichen der ASCII-Tabelle. Und zudem … read more

Protocol Relative URLs

Ist eine Webseite per https-Protokoll SSL-verschlüsselt aufrufbar, so müssen alle externen Objekte auf dieser Webseite ebenfalls über HTTPS geladen werden. Ist das nicht der Fall, gibt es im Internet-Explorer eine hässliche Mel… read more

Hosteurope vServer Ausfall! MTTR: 32 Stunden..

Ein Festplattencrash im Wirtssystem eines vServers Linux XL 4.0 von Hosteurope führte zu einer Downtime von Sage und Schreibe 32 Stunden. Beim Zurückspielen der von Hosteurope angelegten Backups gab es offensichtlich Schwierigkeiten. W… read more

Hash-Bangs (#!) in URLs

Hash-Bangs in URLs sind stark in Mode gekommen. Facebook, Twitter, DeviantART und viele weitere ganz oder teilweise auf Javascript/Ajax basierende Seiten benutzen es. Alles was nach einer Raute in der URL kommt, ist der… read more

xtc: Land-Dropdown im Warenkorb

Die Versandkosten im Warenkorb anzuzeigen ist ein toller Service. So sieht man direkt im Warenkorb den exakten Gesamtbetrag und die Gäste müssen sich nicht extra registrieren um die richtigen Versandkosten angezeigt zu b… read more

Adobe Reader und die Updates..

Der ISO PDF-Standard ist seit 2008 unverändert. Dennoch meldet sich der Adobe-Updater wöchentlich mit Update-Hinweisen. Der Installer des Adobe-Readers ist fast 7 mal Größer als der Installer des Foxit PDF Readers (47 MB … read more

2010

PHP-Skript im Hintergrund ausführen

Wenn gleichzeitig mit einem Seitenaufruf eine rechen- oder zeitintensive Aufgabe ausgeführt werden soll, hat das den Nachteil, dass der Benutzer im Browser so lange einen Ladebalken sieht, bis die gesamte Rechenoperation … read more

Augmented reality und OCR

Augmented reality, die erweiterte Realität: Beispiele dafür gibt es mittlerweile einige - fast alle sind total sinnlos. So wohl auch das App "Word Lens". Aber es ist einfach nett anzusehen. Im Moment gibt's d… read more

Ein Jahr neunzehn83.de

Habe ich doch glatt den ersten Geburtstag meines Blogs verpennt. Am 3. Dezember 2009 ging es hier offiziell los. Seither habe ich es auf immerhin 28 mehr oder minder sinnvolle Beiträge geschafft - diesen eingeschlossen … read more

MySQLs BIGINT .. und PHP

Übrigens: Ein MySQL BIGINT ist 8 Byte lang. Unsigned lassen sich also Ganzzahlen von 0 bis 18446744073709551615 speichern. Eine MySQL-BIGINT-Spalte mit auto_increment läuft bei 1000 Inserts pro Sekunde erst nach über 500 Mi… read more

Regworld Domainrobot

Wer eigene (v)Server betreibt kann Domains unabhängig vom Provider direkt bei einem Domainrobot registrieren. Das hat zum einen den Vorteil, dass man Handles (Kontaktdaten) und IP-Adressen selbstständig verwalten kann, z… read more

Webserver-Umgebung erkennen mit PHP

Development oder Production - das ist hier die Frage. Bei der Webseiten-Entwicklung bietet es sich selbst bei kleinsten Projekten an, zunächst in einer lokalen Entwicklungsumgebung die Anwendung zu testen. Ist der Test erfolgreich … read more

GET-Requests minimieren. Heute: Externe CSS-Dateien

Selbst bei kleineren Webprojekten hat man oft mehrere CSS-Dateien. Zumindest das CSS-Reset ist bei mir, zwecks Wiederverwendbarkeit, immer in einer separaten Datei. Eine weitere Unterteilung in typo.css, lists.css usw. macht… read more

Blättern mit MySQL und SQL_CALC_FOUND_ROWS

Verwendet man in einem MySQL-Query die Option SQL_CALC_FOUND_ROWS im Zusammenspiel mit LIMIT, berechnet MySQL die Gesamtzahl der Datensätze unabhängig vom verwendeten Limit. Beispiel: Will man Daten seitenweise darstellen (… read more

SOHO Mailserver unter Debian Lenny mit Getmail

Hier geht's um die Idee, einen schicken, lokalen SOHO Mailserver unter Debian Lenny einzurichten. SOHO bedeutet Small Office, Home Office - wir reden hier also vom klassischen Serverlein daheim im Schrank, bis hin zum ausgewachsenem… read more

Google!

Google ist nicht umsonst die Nr.1 unter den Suchmaschinen. Die Google-Homepage kommt so unscheinbar daher. Und dennoch steckt so unfassbar viel dahinter. Hier mal ein kleines Beispiel: Mysteriöserweise wird auch "remove" … read more

Runde Ecken mit CSS und ohne Stress

Es könnte alles so einfach sein. Runde Ecken sind mit der CSS3-Eigenschaft "border-radius" leicht zu realisieren. Das funktioniert in allen modernen Browsers (Opera, Firefox, Chrome und Safari). Nicht aber im Internet-Explorer. Um … read more

MySQL's GROUP_CONCAT()

Die GROUP_CONCAT-Funktion von MySQL ist eine tolle Erweiterung zu GROUP BY.  Insbesondere wenn man es mit one-to-many oder many-to-many Beziehungen zu tun hat. GROUP_CONCAT() ist seit der Version 4.1 Bestandteil von MySQL. Beispiel: … read more

SPAM im Griff mit Catch-All E-Mail-Adresse und Subdomain

Die meisten web2.0-Anwendungen verlangen eine Anmeldung, und somit auch eine E-Mail-Adresse, bevor man in den Genuss des kostenlosen Dienstes kommt. Eine Wegwerf-E-Mail-Adresse bietet sich hier nicht immer an. Schließlich … read more

PHP's PDO-Klasse erweitern

PDO ist eine PHP-Erweiterung, die einen konsistenten Zugriff auf Datenbanken ermöglicht. Seit PHP 5.1.0 ist PDO fester Bestandteil von PHP - also eine native (in C geschriebene) PHP-Extension. Dennoch lässt sich PDO mit P… read more

Policy based routing auf Debian Lenny/Etch mit Squid Proxyserver

Folgendes Szenario: Ein Debian Lenny Server und zwei Router mit je einer Internetverbindung befinden sich im selben (lokalen) Netzwerk. Wir wollen beide Router (sprich Internetverbindungen) für verschiedene Anwendungen nutzen. 192.168.123.0 … read more

Rdiff-backup unter Debian auf SMB/CIFS-Mount

Für inkrementelle Backups unter Debian Lenny kommt man an rdiff-backup wohl nicht vorbei. Es erstellt Rückwärts-Inkremente -- der aktuelle (neuste) Backup-Stand liegt also jederzeit als einfache Datei vor. Vorherige Backup-Stände kan… read more

Kurz notiert: einfache CSS Browser-Hacks für IE6/7

Mit nur einem Zeichen lassen sich CSS-Eigenschaften gezielt für den Internet Explorer 6 und 7 schreiben: So sieht das dann aus. Doch sind solche Anpassungen für bestimmte Browser in sparaten CSS-Dateien und per Conditional-Comment e… read more

PHP: gleich oder nicht gleich?

PHP ist schwach typisiert. Und das ist im Prinzip auch gut so! Dennoch passieren dadurch teilweise wirklich sonderbare Dinge: Das ist einfach: Strings unterschiedlicher Länge können niemals gleich sein. Aber:"2e3" =… read more

Spamassassin: Jahr 2010 Problem auf Debian Lenny?

Heise hat es direkt an Neujahr berichtet: Spamassassin hat offenbar ein Jahr-2010-Bug. So werden alle Mails mit Datum 2010 mit dem FH_DATE_PAST_20XX-Flag versehen. Spam-E-Mails haben oft ein Datum weit in der Zukunft, damit… read more

2009

PHP: seltener "goes to" Operator ( - - > )

PHP hat einen "goes to"-Operator. Oder doch nicht? read more

Wegwerf-E-Mail-Adressen: Sperrung umgehen

Anbieter für Wegwerf-E-Mail-Adressen gibt es viele. Ich persönlich bin Mailinator-Nutzer der ersten Stunde. Mailinator war immer zuverlässig und tut genau das was es soll: temporäre E-Mail-Postfächer bereitstellen. Mailinator gehö… read more

AWStats: die eigenen Besuche ausschließen

AWStats analysiert Logfiles und erstellt nette Statistiken. So auch hier für diesen Blog. Um die schier unfassbare Menge an Visits auch nur im Ansatz zu begreifen, rödelt also jede Nacht AWStats durch die Apache-Logfiles. D… read more

Cineplex Reservierungssystem fail

Beim Cineplex Neckarsulm kann man unter http://212.20.182.131/ online Karten (Sitzplätze) reservieren. Nach kostenloser Registrierung kann man ebenfalls kostenlos bis zu vier Sitzplätze reservieren. Das ist natürlich viel zu… read more

Domains mit einem Domainrobot direkt registrieren

Domains gibt es überall. Meist direkt vom Server-Anbieter. Diese sind aber oft teurer als nötig und zudem ziemlich unflexibel zu verwalten. Wenn man mit dem Server zu einem anderen Anbieter umzieht, muss man alle Domains m… read more

Die Technik hinter diesem Blog: Hosting für Schwaben

Dieser Blog läuft auf einem vServer von Netcup. Dieser Prachtkerl für schlappe 1,69€/Monat hat stolze 100MB RAM (nein, da fehlt keine Null)  und 4GB HDD. Darauf läuft ein Debian Lenny Minimal-System mit Web-, Mail-, FTP- … read more

.tel-Domains

Neue Top-Level-Domains gibt es immer mal wieder. .tel ist die jüngste, .post wird wohl die nächste werden. Die .tel-Domain unterscheidet sich aber von allen bisherigen generischen TLDs. Alle Informationen, die einer .tel-Domain z… read more

Kreative Servernamen

Bei der Vergabe von Servernamen wird ja oft nach einem bestimmten Schema vorgegangen: Hauptstädte, Sternzeichen, Charakter aus Filmen oder Serien. Wie unkreativ! read more

Sieve Mailfilter unter Debian Lenny mit Syscp und Dovecot

Mit Sieve können Serverseitig Filterregeln für E-Mails angelegt werden. So lassen sich z.B. Spam-eMails automatisch in einen SPAM-Ordner verschieben oder automatisch löschen. Um eine Sieve-Regel zu erstellen, braucht man en… read more

glTail mit Chipmunk 2D Physics unter Windows

glTail ist eine in Ruby geschriebene OpenGL-Anwendung zur Visualisierung von Logfiles in Echtzeit. So sieht das aus: Nett! Das funktioniert praktisch mit jeder Logdatei (Webserver, Mailserver usw.) dank SSH auch auf entfernten… read more

neunzehn83

Mein Blog über Dies & Das, Sel´ und Jenes, Webtechnik im Speziellen und Computer im Allgemeinen. read more