Was möglich ist, hängt davon ab, was die Firewall zulässt.
Wenn die Firewall beliebigen Datenverkehr auf Port 443 zulässt
Einige Firewalls nehmen den einfachen Ausweg und lassen alles auf Port 443 zu. Wenn dies der Fall ist, können Sie Ihren Heimserver am einfachsten erreichen, indem Sie ihn dazu bringen, SSH-Verbindungen auf Port 443 abzuhören. Wenn Ihr Computer direkt mit dem Internet verbunden ist, einfach fügen Sie hinzu Port 443
, /etc/ssh/sshd_config
oder /etc/sshd_config
gerade unter der Linie, die sagt Port 22
. Wenn sich Ihr Computer hinter einem Router / einer Firewall befindet, der / die eingehende Verbindungen umleitet, leiten Sie eingehende Verbindungen an Port 443 mit so etwas wie dem Port 22 Ihres Servers um
iptables -t nat -I PREROUTING -p tcp -i wan0 --dport 443 -j DNAT --to-destination 10.1.2.3:22
Wo wan0
ist die WAN-Schnittstelle auf Ihrem Router und 10.1.2.3 ist die IP-Adresse Ihres Servers in Ihrem Heimnetzwerk.
Wenn Sie Ihrem Heimserver erlauben möchten, sowohl HTTPS-Verbindungen als auch SSH-Verbindungen an Port 443 abzuhören, können Sie leicht zwischen SSH- und HTTPS-Verkehr unterscheiden (in SSH spricht der Server zuerst, in HTTP und HTTPS dagegen der Client zuerst). Anleitungen zum Einstellen finden Sie unter http://blog.stalkr.net/2012/02/sshhttps-multiplexing-with-sshttp.html und http://wrouesnel.github.io/articles/Setting%20up%20sshttp/ up mit sshttp , und auch Haben Sie SSH auf Port 80 oder 443 während Webserver (nginx) läuft auf diesen Ports
Wenn Sie einen Web-Proxy haben, der CONNECT-Tunneling ermöglicht
Einige Firewalls blockieren alle ausgehenden Verbindungen, ermöglichen jedoch das Surfen im Internet über einen Proxy, mit dem die HTTP-CONNECT
Methode effektiv ein Loch in die Firewall stechen kann. Die CONNECT
Methode ist möglicherweise auf bestimmte Ports beschränkt, daher müssen Sie dies möglicherweise wie oben beschrieben mit der Überwachung von Port 443 kombinieren.
Um SSH über den Proxy zu aktivieren, können Sie ein Tool wie Korkenzieher verwenden . Fügen Sie in Ihrem ~/.ssh/config
eine ProxyCommand
Zeile wie die folgende hinzu, wenn Ihr Webproxy wie folgt lautet http://web-proxy.work.example.com:3128
:
Host home
HostName mmm.dyndns.example.net
ProxyCommand corkscrew web-proxy.work.example.com 3128 %h %p
SSH in HTTP (S) einbinden
Einige Firewalls lassen selbst auf Port 443 keinen SSH-Verkehr zu. Um dies zu bewältigen, müssen Sie SSH tarnen oder in etwas tunneln, das die Firewall durchlässt. Siehe http://dag.wiee.rs/howto/ssh-http-tunneling/ für ein Tutorial dies mit auf dem Tun proxytunnel .