Posts by m_ueberall

    Kennt jemand ein gutes Buch zu nginx?

    (Falls jemand nicht mehr weiß was das ist: Das sind diese zusammengebundenen, bedrucken Blätter, die man verwendet hat, bevor es google gab)

    Ich weiß, es gibt genug Infos im Netz, aber ich bin altmodisch und blättere gerne.

    Keine 1000 Seiten. Beschränkung auf das Wesentliche und Notwendige reicht.

    Über das nginx-Wiki wird man bspw. auf das "NGINX Cookbook" verwiesen, welches durch Aktualisierung letztes Jahr definitiv eines der neuesten Bücher zu diesem Thema sein dürfte. Ganz schlecht kann es auch nicht sein, weil es ansonsten kaum als "Werbebroschüre" kostenlos angeboten würde. Wenn es über O'Reilly keine Toter-Baum-Ausgabe zu ordern gibt, hilft hier ggf. das Ausdrucken? (Wobei ich sagen muss, dass ich mich selbst langsam, aber stetig von gedruckten Büchern auf die elektronische Darstellung auf einem DIN-A4-Tablett umgewöhne.)

    Wenn ich das Richtig sehe, kann ich über AllowedIP "nur" explizit Adressen auf die Whitelist setzen, welche dann überhaupt erst über den VPN erreichbar gemacht werden.

    Dies löst so gesehen aber nicht mein Problem. Denn ich möchte ja, wenn ich datapass.de (109.237.176.33) aufrufe, dass die VPN Verbindung meine reale IP Adresse nutz und nicht die vom VPN.

    Sprich auch mit aktivierten Wireguard VPN möchte ich bei Aufruf von datapass.de meine reale IP leaken damit mir mein mobiler Traffic angezeigt wird.

    Ich hätte schwören können, es gäbe ein logisches Präfix, mit dem ich Einzeladressen/-Subnetze ausschließen kann… muss nochmal nachsehen, ob ich hier zwei Anwendungen vermengt habe. Wie auch oben korrekt ausgeführt, definiert man mit AllowedIP eine Whitelist (im einfachsten Fall alles via 0.0.0.0, ::).

    Man kann sich die resultierenden IP4-/IP6-Bereiche mit exkludierten IP-Adressen allerdings berechnen lassen: Adding a Subnet but excluding one IP

    kannst du evtl. händisch eine Route für dein Ziel anlegen, welche eine höhere Priorität (Metrik) hat, als die Routen von Wireguard? :/

    Ja, das ist eine Alternative. Ist dann aber insbesondere bei Android-Geräten nicht über dieselbe App möglich. Und wenn sich die Adresse des Gateways ändert, ist hier auch wieder eine Interaktion fällig.

    Besteht in Wireguard (oder direkt per routing auf dem VPS) die Möglichkeit eine Ausnahme für eine spezifische Domain ([datapass.de]) zu erstellen? Sprich [dass] bei Aufruf der Domain meine reale IP genutzt wird und nicht die des [VPNs]?

    Sofern die IP4-/IP6-Adressen von datapass.de "einigermaßen" statisch sind, sollte das über zwei(?) "/32|/128"-Ausnahmen mittels "AllowedIPs" möglich sein…

    Der J4005 unterstützt nur maximal 8GB RAM laut Datenblatt […]

    Erfahrungsgemäß kann man bei Intel-NUCs, sofern verfügbar, problemlos das doppelte RAM installieren – Intel testet hier sehr "vorsichtig". Man muss zwar nicht unbedingt der Erste sein, der das ausprobiert, aber im Internet wird man wenige Monate, nachdem das NUC-Modell erhältlich ist, fündig, was Kompatibilitätstests von Dritten (Endanwendern, meistens Homelab-Enthusiasten) anbelangt.

    Mein aktueller NUC ist laut Datenblatt auch nur für 32GB ausgelegt, aber eine Aufrüstung auf 64GB (2x32GB-Riegel) nach einem Jahr verlief reibungslos.

    (Beim Early-/Late-2009-MacMini lief das damals ähnlich, der war laut Apple auch nur für 4GB RAM ausgelegt und "fraß" doch zwei 4GB-Riegel.)

    Du kannst stattdessen auch gleich APT-Pinning verwenden. Bei Updates von bereits installierten Paketen ist das afaik nicht mehr explizit notwendig, es ist aber trotzdem ganz praktisch und meiner Meinung nach übersichtlicher.


    https://wiki.debian.org/de/AptPreferences#Pinning

    Genau darüber bin ich inzwischen in Verbidung mit den Vorgaben der Backports-Repositories mehrmals gestolpert, denn via Pinning wird das vorgenannte Verhalten ja realisiert (sprich: gelesen, wieder vergessen, erneut gewundert). IMHO macht dies aber durchaus Sinn, hier die Standardvorgaben zu übernehmen und eigenen Arbeitsabläufe entsprechend anzupassen. Nicht alles, was via Backports kommt (wie oben/unten bereits ausgeführt) will man unbedingt "mitnehmen".

    […] teilweise musste ich feststellen, dass die Pakete auch während der Oldstable-Zeit etwas lieblos behandelt werden.

    Das ist einer der Gründe, warum ich meine eigenen Repositories pflege (etwa, um bei aktuellen Debian-/Ubuntu-Distributionen das derzeitige ksh-Paket zu übersteuern, vgl. Rename this shell to krsh (or similar) – Issue #1444, oder je nach Umgebung wirklich entsprechend spezifizierte Pakete einzubinden, vgl. Bereitstellungsumgebung).

    Nutzt hier unter Debian jemand die backports-Repositories? Ich würde gerne durch Einbinden derselben eine neuere Version von cmake installieren, aber obwohl ich die zugehörigen Pakete in den Repositories selbst sehe, werden sie nicht angezogen. Um jegliche Abhängigkeitsprobleme zu vermeiden, habe ich es in einem minimalistischem Stretch-Bauabbild (neudeutsch build image) einmal mit der Bibliothek libuv1 probiert, nachdem ich stretch-backports eingebunden habe – ich bekomme aber nur die alten Version…

    Code
    1. root@pbuilder:/tmp# echo "deb http://ftp.debian.org/debian/ stretch-backports main contrib" >>/etc/apt/sources.list
    2. root@pbuilder:/tmp# apt-get update
    3. root@pbuilder:/tmp# apt-get install -y libuv1
    4. Unpacking libuv1:amd64 (1.9.1-3) ...
    5. Setting up libuv1:amd64 (1.9.1-3) ...
    6. Processing triggers for libc-bin (2.24-11+deb9u4) ...
    7. root@pbuilder:/tmp#

    Gegenprobe:

    Code
    1. root@pbuilder:/tmp# apt-get install -y wget; wget http://ftp.debian.org/debian/pool/main/libu/libuv1/libuv1_1.34.2-1~bpo9+1_amd64.deb; dpkg -i libuv1_1.34.2-1~bpo9+1_amd64.deb
    2. [...]
    3. Preparing to unpack libuv1_1.34.2-1~bpo9+1_amd64.deb ...
    4. Unpacking libuv1:amd64 (1.34.2-1~bpo9+1) ...
    5. Setting up libuv1:amd64 (1.34.2-1~bpo9+1) ...
    6. Processing triggers for libc-bin (2.24-11+deb9u4) ...
    7. root@pbuilder:/tmp#

    Kann das jemand nachvollziehen (oder besser noch: einen Fehler hierin finden)?


    EDIT: Fehler gefunden – alle Backports-Repositories sind standardmäßig deaktiviert, man muss sie mittels "apt-get -t <dist>-backports [...]" explizit referenzieren. Problem behoben. Gut, dass wir einmal darüber gesprochen haben… 8o

    In jeder Programmiersprache hatte ich bis jetzt die Mglkt. gehabt eine Ganzzahl rechtsbündig auszugeben

    z. B. in C mit printf( "%8d", 3 );

    [...] ich hatte das da als Workaround gestrickt [...]

    Das muss doch deutlich länger gedauert haben als mit Google nach der korrekten Lösung zu suchen? Siehe https://ss64.com/ps/syntax-f-operator.html:

    wieso hier der FF " zeigt, obwohl der Server ' liefert, weiß der Geier ...

    Schuß ins Blaue: Kann es sein, dass Content-Security-Policy mehrmals in den Response-Headern auftaucht (insbesondere bisweilen dann der Fall, wenn Apache als SSL-Terminierungs-Proxy verwendet wird)? Ich habe einige Anwendungen, welche eigene Header-Zeilen ausliefern (wollen), die ich jedoch via Apache überschreibe (mittels header always unset, header always set).

    es gibt ja diverse HTTP-Header z.B. Content-Security-Policy, Feature-Policy u. a. m.

    [...] mit HTTPS passt alles und etwaige Javascripte funktionieren; das selbe aber mit HTTP versagt, ist das das erwartete Ergebnis?

    Grundsätzlich sollte das auch für HTTP gelten (es gibt hier beispielsweise die "Content-Security-Policy: upgrade-insecure-requests"). Inwiefern sich ein Client jedoch an die Vorgaben des Servers gebunden fühlt, ist Auslegungssache. Obengenanntes Problem stellt sich mir nicht, da ich via HSTS einen sofortigen Wechsel auf HTTPS erzwinge.

    Wenn der Fehler bei eigenen Seiten auftritt, hilft jedoch häufig ein Blick auf die Diagnosemeldungen des jeweiligen Browsers – vielleicht werden die Scripte auf beiden Ports unterschiedlich ausgeliefert?