Moin moin,
ich habe folgendes Problem:
Um mich in ein Firmennetzwerk einzuloggen habe ich über HTTP einen Portalzugang, von dem aus nach Authentifizierung mir RSA SecurID eine Java-Software "Network Connect" von Juniper gestartet wird, welche mir erlaubt auf einen Server (als Beispiel 1.1.1.1) per SSH zuzugreifen (ganz normal über Putty o.ä.). Soweit schonmal fein. In der Windows-Netzwerkumgebung wird für die Dauer der Verbindung ein Netzwerkadapter eingeblendet und in der Routingtabelle finde ich einen Eintrag des benötigten Servers (1.1.1.1) mit Metrik 1 auf den Adapter.
Vermutlich ist auf dem Dial-In-Server eine entsprechende Accessliste installiert, die nur Port 22 zulässt, deswegen würde ich gerne HTTP über SSH tunneln.
In Putty konnte ich einrichten, dass für die Ziel-IP (1.1.1.1) ein lokaler Port (127.0.0.1:80) auf den SSH-Tunnel geleitet wird. Auch das funktioniert noch.
Wenn ich jetzt im Browser localhost aufrufe lande ich auf der Website des Servers.
ABER: Wenn ich z.B. phpmyadmin aufrufe treffe ich auf absolute Pfade in denen die wirkliche IP des Servers (1.1.1.1) steht, anstelle der lokalen IP 127.0.0.1 die Putty benötigen würde um die Pakete auf den SSH-Tunnel zu lenken. Folglich kann ich das Webinterface nicht verwenden.
Jetzt such ich nach einer Möglichkeit in Windows, in einem beliebigen Browser oder über kostenfreie Zusatzsoftware die Server-IP 1.1.1.1 auf Localhost (127.0.0.1) zu mappen.
Ideen?
Willkommen im #Neuland
Login wie bei quake.ingame.de zuvor, die Passwörter aus der alten Datenbank wurden aber gelöscht - einmal hier neu anfordern.
Wer seine E-Mail-Adresse nicht mehr hat oder kennt, bitte eine Nachricht mit Infos schicken o. im Discord melden.
PQ Discord Server: #planetquake Spenden? Hier entlang!
Login wie bei quake.ingame.de zuvor, die Passwörter aus der alten Datenbank wurden aber gelöscht - einmal hier neu anfordern.
Wer seine E-Mail-Adresse nicht mehr hat oder kennt, bitte eine Nachricht mit Infos schicken o. im Discord melden.
PQ Discord Server: #planetquake Spenden? Hier entlang!
Windows 7 o. Firefox o. Opera o. IE -IP-Adresse auf Localhost NATten
-
- Accuracy
- Beiträge: 8184
- Registriert: Aug 2000
-
- Accuracy
- Beiträge: 8184
- Registriert: Aug 2000
Jein... Das Problem ist ja, dass ich nur eine ganz bestimmte IP (OK, später mal mehrere, aber aktuell reicht die eine...) auf den SSH-Tunnel lenken will. Der Rest der Webseiten soll ganz normal den lokalen Internet-Breakout nutzen (der Server hätte auch keinen und wenn das Login-Portal nicht mehr erreichbar ist bricht auch die Session zusammen).
Ich hab jetzt mal mit Greasemokey experimentiert:
Das funktioniert im Prinzip schon ganz gut, aber wenn in irgendwelchen JavaScripten von PHPMyAdmin die IP noch fix drin steht bekomme ich die damit nicht heraus. Etwas träge ist die Lösung auch noch (Ich vermute mal, weil erst die Requests an 1.1.1.1 austimen müssen)....
Gibt es eine Möglichkeit die Javascript-Sachen noch mit abzufangen?
Also JavaScript mit JavaScript zu ändern?
Ich hab jetzt mal mit Greasemokey experimentiert:
Code: Alles auswählen
// ==UserScript==
// @name HTTP Tunnel Redirect-Script
// @version 0.1
// @namespace *
// @author rund
// @include http://localhost*
// ==/UserScript==
//
var replace_ip = '1.1.1.1';
var replace_with = 'localhost';
//Parse links
var allLinks, thisLink;
allLinks = document.evaluate(
'//a[@href] | //base[@href] | //link[@href]',
document,
null,
XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,
null);
for (var i = 0; i < allLinks.snapshotLength; i++)
{
thisLink = allLinks.snapshotItem(i);
if (thisLink.href.match(replace_ip))
{ thisLink.href = thisLink.href.replace(replace_ip, replace_with); }
}
//Parse images
var allImgs, thisImg;
allImgs = document.evaluate(
'//img',
document,
null,
XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,
null);
for (var i = 0; i < allImgs.snapshotLength; i++)
{
thisImg = allImgs.snapshotItem(i);
if (thisImg.src.match(replace_ip))
{ thisImg.src = thisImg.src.replace(replace_ip, replace_with); }
}
//Parse forms
var allImgs, thisImg;
allImgs = document.evaluate(
'//form[@action]',
document,
null,
XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,
null);
for (var i = 0; i < allImgs.snapshotLength; i++)
{
thisImg = allImgs.snapshotItem(i);
if (thisImg.action.match(replace_ip))
{ thisImg.action = thisImg.action.replace(replace_ip, replace_with); }
}
Das funktioniert im Prinzip schon ganz gut, aber wenn in irgendwelchen JavaScripten von PHPMyAdmin die IP noch fix drin steht bekomme ich die damit nicht heraus. Etwas träge ist die Lösung auch noch (Ich vermute mal, weil erst die Requests an 1.1.1.1 austimen müssen)....
Gibt es eine Möglichkeit die Javascript-Sachen noch mit abzufangen?
Also JavaScript mit JavaScript zu ändern?
-
- Accuracy
- Beiträge: 8184
- Registriert: Aug 2000
Hi again,
für Lunix hab ich jetzt eine Lösung gefunden:
Erst eine SSH-Session öffnen (wie mit Putty unter Win), die einen lokalen Socket öffnet:
ssh -XY -L 80:1.1.1.1:80 user@1.1.1.1
Dann mit iptables die Ziel-IPs natten:
iptables -t nat -A OUTPUT -p tcp -d 1.1.1.1 --dport 80 -j DNAT --to-destination 127.0.0.1:80
Unter Windows bin ich leider noch nicht weiter.....
für Lunix hab ich jetzt eine Lösung gefunden:
Erst eine SSH-Session öffnen (wie mit Putty unter Win), die einen lokalen Socket öffnet:
ssh -XY -L 80:1.1.1.1:80 user@1.1.1.1
Dann mit iptables die Ziel-IPs natten:
iptables -t nat -A OUTPUT -p tcp -d 1.1.1.1 --dport 80 -j DNAT --to-destination 127.0.0.1:80
Unter Windows bin ich leider noch nicht weiter.....
-
- Accuracy
- Beiträge: 8184
- Registriert: Aug 2000