VPN-Verbindung an der PowerShell erstellen (und Optionen setzen)

Um neue VPN-Verbindungen auf mehrere Computer zu verteilen und in den Verbindungseigenschaften Optionen zu setzen gibt es ganz brauchbare PowerShell-Tools.

Die Parameter von Add-VPNConnection und Set-VPNConnection sind glücklicherweise auch praktisch identisch, so daß man entweder eine neue Verbindung erstellen oder eine vorhandene Verbindung bearbeiten kann.

Erstellt eine (SSTP-) VPN-Verbindung an der PowerShell:

Add-VpnConnection -Name "VPNNAME" -ServerAddress VPN.EXAMPLE.COM -RememberCredential:$false -SplitTunneling:$true -DnsSuffix EXAMPLE.LOCAL -AuthenticationMethod MsChapv2 -TunnelType SSTP -DestinationPrefix 10.42.42.0/24

Add-VpnConnection Parameter im einzelnen

  • -Name "VPNNAME" Name der Verbindung
  • -ServerAddress VPN.EXAMPLE.COM Adresse/URL des VPN-Servers
  • -RememberCredential:$false Sollen die Anmeldeinformationen gespeichert werden? In diesem Fall wollen wir das verhindern, damit eine eingesetze 2FA-Lösung die die Eingabe eines OTP Codes bei jeder Einwahl erzwingt funktioniert.
  • -SplitTunneling:$true Sollen VPN-Traffic und sonstiger Internet-Traffic getrennt werden? Spannend zum Beispiel für Netzwerkdrucker im HomeOffice.
  • -DnsSuffix EXAMPLE.LOCAL Setzt den DNS-Suffix auf die remote-Domäne. Nicht notwendig wenn man ausschliesslich ordentliche FQDNs für interne Ressourcen nutzt.
  • -AuthenticationMethod MsChapv2 setzt die Authentifizierungsmethode. Die meisten 2FA-Lösungen müssen den Benutzernamen „sehen“, was via EAP ausschliesst.
  • -TunnelType SSTP Verbindungstyp des Tunnels, hier SSTP.
  • -DestinationPrefix 10.42.42.0/24 Sorgt für weitere Routen zu erreichbaren Netzen, wenn SplitTunneling $true ist

Microsoft 365 Exchange Online E-Mails zählen

Manchmal muss man wissen, wie viele Nachrichten an einen bestimmten Empfänger gesendet wurden. Zum Beispiel „Wie viele Nachrichten wurden in den letzten 24 Stunden an dieses Postfach gesendet?“.

Das ist leider nicht ganz so einfach, weil Get-MessageTrace nur 1000 Zeilen ausgibt. Man kann das Commandlet zwar mit -PageSize 5000 etwas tunen, aber wenn es um mehr Nachrichten geht, muss man die abzufragende Zeit eingrenzen und addieren.

Anzahl empfangener E-Mails in 24h anzeigen

Wenn man erst mit Import-Module ExchangeOnlineManagement das Exchange Online PowerShell-Modul importiert hat und sich via Connect-ExchangeOnline auch verbunden hat, kann man Nachrichen auflisten und zählen:

Get-MessageTrace -PageSize 5000 -RecipientAddress [email protected] -Start ((get-date -hour 0 -Minute 0 -Second 0).adddays(-1)) -End (get-date -Hour 0 -Minute 0 -Second 0) | Measure-Object

Firefox Wartezeit beim Download abschalten

Bevor man in Mozilla Firefox eine Datei herunterladen kann, gibt es eine Merhsekündige Wartepause. In dieser Wartezeit kann man im download-Dialog nicht auf „OK“ klicken, um den Download zu starten.

Aus Sicherheitsgründen ist das vielleicht für einige Nutzer eine gute Idee, für den schnellen und sicherheitsbewussten Admin eher ärgerlich.

Lösung

In about:config kann man die Wartezeit mit dem Parameter security.dialog_enable_delay konfigurieren. Ein Wert von „0“ schaltet die Wartezeit komplett ab.

Log4j Zugriffe (Exploits) zuverlässig mit IIS ARR (reverse Proxy) filtern

Über eine kritische Sicherheitslücke namens „Log4Shell“ in der weitverbreiteten Java-Logging-Bibliothek „Log4j“ können Angreifer beliebigen Code ausführen lassen.

Seit Kurzem steht ein Quellcode-Update des Log4j Apache-Projekts bereit; Entwickler und Admins sollten dringend aktiv werden.

Ein Angreifer kann die Sicherheitslücke ausnutzen, indem er manipulierte Anfragen an einen verwundbaren Server oder eine angreifbare Anwendung schickt. Das geschieht in der Regel (z.B. Tomcat) via USER_AGENT logging. ein Internet-Nutzer kann also Code hinterlegen, den der Server dann ausführt. Die log4j-Lücke greift aber nicht nur beim USER_AGENT, sondern bei *allem* was im Log landen kann. Je nach Applikation muss man hier also genauer hinschauen, das Vorgehen im IIS URLrewrite ist aber immer das selbe und funktioniert dafür sehr gut.

Den Versuch dazu kann man in ISS via ARR aber schnell filtern. Hier die Anleitung um mittels Reverse Proxy das Exploit abzufangen bevor es interne Systeme erreicht.

Lösung

Am besten auf höchster Ebene (link auf dem Serverknoten) das Modul „URL rewrite“ öffnen. Die dort erstelle Regel greift auf allen Sites.

An dieser Stelle eine leere Regel einfügen, die die folgenden Einstellungen hat:

  • Übereinstimmung mi URL: .*
  • Groß/Kleinschreibung ignorieren: Angehakt
  • Bedingungen
    • Übereistimmung mit allen Elementen > hinzufügen
    • Bedingungseingabe: {HTTP_USER_AGENT}
    • Muster: .*jndi:ldap*
  • Aktion (hier ist etwas kreative Freiheit möglich)
    • URL Umleiten: http://endless.horse/
    • Dauerhaft (301)

Fritz!Box Kennwort auslesen und entschlüsseln (ohne PHP)

Für AVM Fritz!Boxen gibt es wieder einen klaren Fall von „Notiz an uns selbst“. Ab und zu geht ja schonmal das DSL-Zugangskennwort für das Internet verlorern. Soll der Internet-Roter ausgetauscht werden, fängt man an zu suchen.

Der schnelle Admin kann hier natürlich einfach ein Backup der Konfiguration erstellen (System > Sicherung > Sichern), aber selbiges ist unleserlich verschlüsselt. Und selbst wenn man die *.export Datei entschlüsselt hat, stehen da die Kennwörter noch immer verschlüsselt drin. Grundsätzlich ist das natürlich eine gute Sache, für den Admin aber manchmal hinderlich.

Glücklicherweise kann man *.export Dateien ohne weitere Software direkt online entschlüsseln lassen:

https://fbedit.com