Skip to content

Ein VPN aus Einzelteilen: PPP, Tap-Devices und Netcat

Ein VPN sind zwei Aufgaben: etwas, das einen virtuellen Link macht, und etwas, das die Bytes trägt. PPP erledigt die erste seit 1994 und ist es egal, was die zweite ist — deshalb sind PPTP, L2TP und jede Wählleitung, die du je benutzt hast, dasselbe Protokoll über verschiedene Träger. Netcat ist ein Träger. Dieser Beitrag baut es auf beide Arten. Zuerst pppd: die pty-Option und was sie mit einem Pseudo-Terminal macht, die TCP-Variante, die jeder zuerst probiert, warum ein Stream-Protokoll in TCP unter Verlust zusammenbricht, die UDP-Variante, die man nehmen sollte, das asynchrone HDLC-Framing und die ACCM, die entscheidet, wie viel Bandbreite auf das Escapen von Steuerzeichen geht, Adressierung und Routing und IPV6CP, und den Link am Leben halten, wenn der Träger stirbt, ohne es zu sagen. Dann derselbe Tunnel ganz ohne PPP — ein Tap-Device, ein Datagramm pro Frame über UDP, das Längenpräfix, das man über TCP selbst erfinden muss, tun gegen tap, und Bridging. Dann der Teil, für den Netcat keine Antwort hat: den Träger in TLS wickeln mit ncat, stunnel und openssl, und in DTLS mit socat, was die Form ist, die man eigentlich will. Es ist nie wirklich das richtige Werkzeug, und das ist der Punkt: Es zeigt, wie sich Egress verhält, sobald ein Angreifer in deinem Netzwerk Root hat und der ausgehende Zugang nicht standardmäßig blockiert war, und warum Default-Deny an der Grenze die einzige Kontrolle ist, die je real war.

14. September 2026 · 58 Minuten · 12620 Wörter · Damien Dye

Deine Firewall nimmt Anweisungen von Fremden entgegen. Schalte die Protokoll-Helper ab.

Ein Protokoll-Helper — SIP ALG, FTP-Helper, H.323 ALG, conntrack-Helper, nenn ihn, wie dein Hersteller ihn nennt — liest die Nutzlast einer Verbindung, findet dort eine Adresse und einen Port und öffnet dafür ein eingehendes Loch. Er kann nicht erkennen, ob dieser Text von einem echten FTP-Client stammt oder von einem versteckten Formular auf einer Webseite, weil nichts darin das verrät. Samy Kamkar hat den Browser-Fall 2010 gezeigt, NAT Slipstreaming 2020 erneut, und Armis hat ihn 2021 so erweitert, dass jedes Gerät im Netz erreichbar wird, nicht nur der Rechner, der geklickt hat. Die IETF hat 2007 verlangt, dass diese Dinger standardmäßig aus sind, Linux hat sie 2016 abgeschaltet, und die Browser-Hersteller liefern am Ende eine Sperrliste von Ports aus, die sich liest wie ein Verzeichnis der conntrack-Module. Dieser Beitrag geht den Mechanismus Diagramm für Diagramm durch — die Expectation-Tabelle, den Segmentgrenzen-Trick, die H.323-Rufumleitung, den IRC-Helper, der auf die Nachricht eines Fremden anspringt —, nimmt den IPsec-Pass-through-Helper dazu, der ESP überhaupt nicht lesen kann und eingehende Pakete anhand eines SPI steuert, den er im Klartext vorbeiziehen sah, stellt das Ganze der Firewall-Anforderung von Cyber Essentials gegenüber, die er klar reißt, und gibt die Befehle, mit denen du das Ganze auf Linux, Cisco, Juniper, FortiGate und MikroTik abschaltest.

14. September 2026 · 54 Minuten · 12573 Wörter · Damien Dye

IPsec war eine gute Idee. Es ist Zeit, es abzuschalten.

IPsec lag 1995 richtig: unterhalb der Anwendung verschlüsseln, die Security Association an die IP-Adresse binden, jedes Protokoll erbt sie. Dann kam NAT, Carrier-Grade NAT hat den Rest erledigt, und die Lösung bestand darin, das Ganze in UDP zu verpacken und einen Timer laufen zu lassen, damit eine Übersetzungstabelle dich nicht vergisst. Dieser Beitrag zeigt Diagramm für Diagramm, wie es zusammenbricht — die Security Association, die einen umgeschriebenen Header nicht überlebt, die zwei Übersetzer, die heute an jedem CGNAT-Anschluss hängen, der NAT64-Standard, der IPsec ausdrücklich ausschließt, der Tunnel, der keine zweite Leitung nutzen kann, weil ESP keine Ports hat, die MTU, für die sich niemand zuständig fühlt, und L2TP und PPTP als die zwei Protokolle, die hier nie hingehört haben. Dazu die Herstellerdokumentation von Cisco, Juniper und Microsoft, die all das einräumt, die achtzehn Bestandteile, die sich IPsec-VPN nennen, darunter zwei, die nie ein Standard waren, warum das Fisher-Price OS nie wirklich mit einem offenen Stack zusammengearbeitet hat, eine funktionierende Diagnosemethode für die Zeit, in der du IPsec noch betreibst, und die Begründung, das Ganze mit festen Terminen stillzulegen.

13. September 2026 · 65 Minuten · 16183 Wörter · Damien Dye
Ein Browser verbindet über Cloudflare Access zu Windows-VMs auf einem Proxmox-Host mit virtuellen Funktionen einer Intel Arc Pro

Zero-Trust-VDI ohne Cloud-Rechnung — Proxmox, Intel Arc Pro und Cloudflare Access

Teil eins: die Architektur und das Kostenargument dafür, Azure Virtual Desktop durch Proxmox, Intel Arc Pro SR-IOV und Cloudflare Access zu ersetzen. OAuth auf eigener Hardware für die Identität, RDP im Browser gerendert, ein per Firewall eingehegter LXC-Tunnel auf eigenem VLAN, KSM für Speicherdichte und Profile auf Ceph. Der nächste Beitrag baut es.

2. September 2026 · 17 Minuten · 3569 Wörter · Damien Dye

Ping: das Diagnosewerkzeug, das viel mehr öffnet

Ping, nicht der Rest von ICMP, ist die Haftung: Echo ist ein Kanal, den jeder Host mit deinen eigenen Byte beantworten muss, ein Netz, das ‚nur Ping erlaubt‘, hat also schon ein volles VPN nach draußen. Der Beitrag geht zuerst die Bedrohung durch — was sie deinen Ausgang kostet, und wie ein Besucher in deinem WLAN oder an einer offenen Ethernet-Buchse eines öffnet —, dann drei funktionierende Tunnel allein auf Ping (Hans, icmptunnel und ein kurzer Python-Tunnel mit AES-128), die MTU- und IPv6-Fallen, und die Regel, die es schließt: Echo verwerfen, die Fehler behalten, in nftables, pf, Cisco, Junos, MikroTik und Windows.

1. September 2026 · 35 Minuten · 7479 Wörter · Damien Dye

Die Firewall ist elf Hops entfernt

„Port 445 ist irgendwo blockiert“ ist keine Diagnose, und genau darum springen Firewall-Tickets eine Woche lang zwischen dir und deinem Provider hin und her. Jeder Router auf dem Pfad schuldet dir ein ICMP Time Exceeded, wenn dein Hop-Budget aufgebraucht ist, und das macht aus einem Timeout eine Entfernung. Ich bin das TTL auf meiner eigenen Leitung hochgelaufen und fand drei Fehler, von denen ich nichts wusste: einen SMB-Drop elf Hops weit draußen, gefälschte SMTP-Resets einen Hop entfernt und eine IPv4-Regel ohne IPv6-Zwilling.

28. August 2026 · 37 Minuten · 7752 Wörter · Damien Dye

Uns sind nie die Adressen ausgegangen. Uns ist die Mühe ausgegangen.

IPv6 ist seit fast zwanzig Jahren fertig, kostenlos und in jedem Betriebssystem standardmäßig eingeschaltet. Die Antwort des UK darauf waren Carrier-Grade NAT, ein Gesetz über Protokollierung und 5 Pfund im Monat dafür, dir die Adresse zurückzugeben, die du früher hattest. Ich habe jedes britische Netz in der globalen Routingtabelle gezählt, um herauszufinden, wer IPv6 wirklich eingeschaltet hat — 1.200 haben es nicht, und 463 davon sitzen auf Adressraum, den sie beantragt und nie benutzt haben.

27. August 2026 · 66 Minuten · 13977 Wörter · Damien Dye