Angenommen, ich habe drei Computer
home
mein Computer zu Hausework
Mein Computer bei der Arbeitserver
mein Server
Ich kann wegen der Firewall meines Unternehmens keine Verbindung home
zu work
ssh herstellen. Aber ich kann jeden Computer von der Arbeit trennen. Zum Beispiel kann ich den Servercomputer von der Arbeit trennen. Was ich nicht tun möchte, ist, über die work
Verbindung eine Verbindung zum Internet herzustellen (ich möchte auf den Arbeitscomputer zugreifen localhost
). Ich lese aus einer Toturial, die ich machen kann:
woork:~# ssh -D 4096 server
Damit kann ich mich aber nur über den Server mit dem Internet verbinden. Ich mag die Inverse , dies zu tun , aber ich kann nicht darauf zugreifen work
aus server
.
Das Endergebnis ist, Firefox zu öffnen home
und zu localhost
of zu navigieren work
.
Was ist die Lösung für meinen Fall?
ssh
firewall
ssh-tunnel
Hunsu
quelle
quelle
Antworten:
Wenn Sie eine ausgehende SSH-Verbindung einrichten können, können Sie wahrscheinlich einen Reverse-Tunnel einrichten, um wieder einzusteigen (ich bin mir nicht bewusst, dass die IT dies verbieten kann, aber Sie wissen es nie).
Dann können Sie dies auf dem Server tun:
Und Sie werden auf magische Weise wieder mit dem SSH-Server-Port auf Ihrer Arbeitsmaschine verbunden. Standardmäßig ist der Port 2222 nur an die Adresse "localhost" gebunden, sodass Verbindungsanfragen von zu Hause aus nicht funktionieren :
Stattdessen können Sie dies tun:
oder beides in einem Befehl wie folgt:
Um Ihnen das Leben
.ssh/config
zu erleichtern, fügen Sie Folgendes zu Ihrem Zuhause hinzu:... und nun:
... wird einfach das Richtige tun.
Es ist möglich, die umgekehrte Tunnelbindung zu erstellen, sodass das Proxy-Geschäft nicht erforderlich ist, aber dann wird auch jeder Hacker auf der Welt auf Ihren Tunnel zugreifen (denken, Port 2222 ist nicht standardisiert und daher sicher ist naiv). Die fehlgeschlagenen Zugriffsversuche werden in den Protokollen unter "Arbeit" angezeigt. Die IT-Abteilung wird dies herausfinden und Sie werden entlassen. Natürlich ist der Tunnel allein wahrscheinlich ein Schussverstoß, aber es ist nicht nötig, ihn offensichtlich zu machen.
quelle
Angenommen, Sie haben
Und Arbeit: ~ # ist die Firewall, die Sie nicht kontrollieren können
Wenn Sie Server schreiben, sehe ich aus dem Kontext (SSH-D 4096 Server), dass Sie SSH-Server bedeuten. (und nicht zB VNC Server). Sie sollten wirklich angeben, es ist klarer. Normalerweise ist ein SSH-Server entweder auf der Arbeit oder zu Hause. Es sollte sich auf dem Computer mit der Firewall befinden, die Sie steuern können, dh Home.
Normalerweise haben Sie auch einen normalen Server, den Sie erreichen möchten, und das ist normalerweise kein SSH-Server. Obwohl es sein kann, gibt es eine Frage mit einem großartigen Beispiel, wo man es haben möchte.
Vielleicht können Sie mehr erklären, welcher Server: ~ # ist, aber ich werde es in der Zwischenzeit auslassen, weil es unnötig erscheint und es nicht klar ist, was Sie damit meinen, weil Sie dann einen SSH-Server haben, z. B. auf der Arbeit Sie würden eine sofortige Arbeit bekommen: ~ #
Also, was Sie tun, ist
Von dem aus, den Sie nicht kontrollieren können, stellen Sie eine ausgehende Verbindung her. Weil die Firewall sie raus lässt.
Zuhause sieht Arbeit.
Die für SSH zu erkennenden Schalter sind -L, -R und -D
Und wenn Sie das Client-Programm so mit dem Listening-Port verbinden, dass sich das Client-Programm auf einem anderen Computer als Ihr Listening-Port befindet, muss es -R
*:1234:127.0.0.1:5901
oder sein0.0.0.0:1234:127.0.0.1:5901
Denken Sie daran, dass dies für etwas wie VNC gilt, aber wenn Sie es für HTTP getan haben, können Sie nur eine Site anzeigen. Es gibt -D, was, wie Sie sehen, lokal ist.
Einige Personen sind zu Hause und möchten bei der Arbeit auf einen Server zugreifen. Dieser Server befindet sich hinter einer Firewall, die sie nicht steuern können.
Wenn Sie jedoch einen Internetzugang wünschen, sind Sie auf der Arbeit und möchten von zu Hause aus auf einen Server zugreifen.
Warum um alles in der Welt kannst du das nicht?
Versuchen Sie, den SSHD-Server zu Hause auf Port 80 oder Port 443 auszuführen, und führen Sie dies aus
work~:#ssh homeip -p 443
quelle