Hallo,
Original von keksinat0r
Wo ist da das Problem?
MFG - Keks
Ich muss xblax schon recht geben.
In vielen Schulen/Unis/Firmen ist der einzige Zugriff aufs Internet mittels HTTP Proxy möglich.
Dieser nimmt
HTTP Header entgegen und verarbeitet diese.
Ein solche Header sieht z.B. so aus:
Code:
GET http://www.google.de/ HTTP/1.1
Host: www.google.de
Proxy-Connection: Keep-Alive
Der Proxy nimmt den Header entgegen, verarbeitet diesen, lädt von Google die Seiten und antwortet mir entsprechend.
Man muss unterscheiden, ob eine Firewall alle ausgehenden Verbindungen außer die über Port 80 blockt oder ob der Internetverkehr über einen Proxy läuft.
Die Firewall kann man normalerweise recht leicht umgehen, wie gesagt mit dem SSH-Server der auf Port 80 lauscht, über den ich dann eine Verbindung zum Internet herstelle. Dies klappt einwandfrei, sofern kein Packetfilter verwendet wird.
In dem Tutorial wird aber gesagt, dass der Internetverkehr über ein Proxy läuft. Dieser ist i.d.R. ein HTTP Proxy welcher nur HTTP Header entgegen nimmt und verarbeitet. Wenn ich also ein SSH Packet an den Proxy sende, kann dieser damit nix anfangen und sendet mit die Fehlermeldung 'Bad request' zurück.
Was ich also machen müsste, wäre es den SSH Packeten ein gültigen HTTP Header zu verpassen, so dass diese den Proxy passieren können.
Da aber HTTP ein paar unangenehme Eigenschaften wir z.B. keine permanenten Verbindungen zu lässt, ist dieses gar nicht so leicht.
Wie kann ich nun erkennen, ob Proxy oder Firewall:
Wenn ein Proxy verwendet wird, dann ist dieser oftmals unter Einstellungen => Verbindungen => HTTP Proxy eingetragen.
Hier einfach localhost mit Port 8080 anzugeben führt zu nix, da Putty die Daten an den Standard Gateway sendet und nicht mehr an den HTTP Proxy. Der Gateway verwirft dann die Packete.
Die Lösung wäre evt., habs nicht getestet, unter Putty => Connection => Proxy die Adresse des Proxyservers anzugeben über den der Verkehr läuft.