May 24, 20242 yr Wer von unterwegs mit der heimischen IP ins Internet möchte, der kann zB eine VPN Verbindung verwenden. Eine Alternative dazu ist ein SOCKS Proxy. Da SOCKS keine Verschlüsselung unterstützt, lassen wir das wie folgt über einen verschlüsselten SSH Tunnel laufen: Schritt 1 - SSH Tunnel Container starten Wir verwenden den OpenSSH Container von "Linuxserver" und über die Variable "DOCKER_MODS" aktivieren wir in dessen SSH Einstellungen das TCP Forwarding, was für SOCKS notwendig ist. In Unraid > Docker > Add Container Name: ssh-tunnel Repository: linuxserver/openssh-server Add Path: Container: /config Host: /mnt/user/appdata/ssh-tunnel Add Port: Container: 2222 Host: Am besten einen unpopulären Port wie 29xxx, 36xxx, 37xxx, 39xxx, 43xxx, 46xxx, 47xxx, 53xxx oder 59xxx (xxx gegen drei zufällige Zahlen ersetzen) Add Variable: Key: DOCKER_MODS Value: linuxserver/mods:openssh-server-ssh-tunnel Add Variable: Key: LOG_STDOUT Value: true Add Variable: Key: USER_NAME Value: <deinWunschUsername> Add Variable: Key: PUBLIC_KEY Value: Lassen wir erst mal leer, füllen wir später Das sollte nun so aussehen: Schritt 2 - Port-Freigabe im Router einrichten Den oben eingestellten Host Port im Router Richtung Unraid Server freigeben Schritt 3 - SSH SOCKS Proxy starten das beigefügte Powershell Skript auf dem Desktop ablegen das Skript bearbeiten und diese drei Werte anpassen und das Skript speichern: $sshUsername = "user" $sshHostname = "hostname" $sshPort = "123456" $sshUsername: Der USER_NAME, den ihr bei dem Container gewählt habt $sshPort: Der Port, den ihr bei dem Container gewählt und im Router freigegeben habt $sshHostname: Eine Domain, die auf euren Router / Server verweist (DDNS oder was auch immer) zB abcdefgh.myfritz.net, wenn ihr eine Fritz!Box habt mit rechter Maustaste > Powershell ausführen starten Das Skript erzeugt nun falls nicht bereits vorhanden einen SSH Schlüssel Das Skript gibt in der obersten Zeile den öffentlichen SSH Schlüssel aus Den SSH Schlüssel wie zB "ssh-rsa abcdefg.... name@windows" kopiert ihr nun Den oben genannten SSH Tunnel Container bearbeiten und bei der Variablen "PUBLIC_KEY" den SSH Schlüssel einfügen und mit "APPLY" bestätigen Hinweis: Wenn ihr mehrere Keys hinzugefügen wollt, einfach immer wieder das Feld überschreiben und die Änderung mit "APPLY" übernehmen. Der Container ist so gebaut, dass er neue Schlüssel hinzufügt und alte in der Datei behält: /mnt/user/appdata/ssh-tunnel/.ssh/authorized_keys Das Powershell Skript schließen und erneut starten Das Terminal sollte nun eine Verbindung zum Docker Container aufgebaut haben. Das sieht dann ungefähr so aus: Also wenn ihr "Welcome to OpenSSH Server" seht, steht die Verbindung Solange das Powershell-Fenster offen ist, steht die SSH-Verbindung zu dem Container und SSH bietet auf dem Rechner den lokalen SOCKS Port "5055" an. Ihr könnt nun einen Browser so einstellen, dass er über diesen SOCKS Port ins Internet geht. Schritt 4 - Mit Firefox über SOCKS Proxy surfen Firefox starten Einstellungen öffnen Nach "Proxy" suchen "Manuelle Proxy Konfiguration" auswählen SOCKS-Host auf "127.0.0.1" stellen SOCKS-Port auf "5055" stellen "SOCKS v5" auswählen Optional: "Verwende Proxy für DNS" auswählen Mit "OK" bestätigen Das sollte nun also so aussehen: Wer einen anderen Browser dafür verwenden möchte, da dieser nur noch verwendet werden kann, solange das Skript läuft, der kann online nach "SSH SOCKS Browsername" suchen. Vom Prinzip geht das nämlich mit jedem Browser. socks-proxy.ps1
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.