Jain, ich habe mal versucht die WebUI durch einen https proxy (caddy, geht analog mit nginx oder apache) nach Außen hin erreichbar zu machen. Leider funktioniert das aber (noch) nicht so ganz. Es scheint als funktioniert nur der Zugriff über http. Den habe ich nicht ausprobiert, wollte ich aber in meinem Fall auch nicht, da mein Server nicht in meinem LAN steht.
Also mal ausprobieren:
Via http reverse proxy (unverschlüsselt)
Via ssh tunneln: Müsste in etwa so gehen ssh -L5001:localhost:5001 user@ipDesRasPI, dann im Browser per localhost:5001 weiter machen als liefe die node lokal.
weil die API nur auf 127.0.0.1 bindet "API": "/ip4/127.0.0.1/tcp/5001", kannst du ja umstellen, wenn du eh in einem privaten Netz bist. 127.0.0.1 durch 0.0.0.0 ersetzten, danach ist der Port aber im gesamten Netzwerk erreichbar. Die Datei ist standardmäßig unter ~/.ipfs/config zu finden. Ggf musst du noch
"Access-Control-Allow-Origin":["*"]
eintragen, wenn da 127.0.0.1 statt * eingetragen ist.
Aber deutlich sicher und einfacher ist es nen ssh tunnel zu verwenden.
das mit ssh tunnel habe ich auch versucht, aber da wurde ich immer auch localhot/ipfs/irgendeinHash umgeleitet und die Seite hat sich einen Wolf geladen.
Das umstellen in den Settings werde ich mal testen.
Ich hab das Tunneln jetzt erfolgreich hinbekommen. Da die webseite die hinter der webui steckt auch über ipfs bereitgestellt wird muss natürlich auch der Gateway weitergeleitet werden.
Jain, ich habe mal versucht die WebUI durch einen https proxy (caddy, geht analog mit nginx oder apache) nach Außen hin erreichbar zu machen. Leider funktioniert das aber (noch) nicht so ganz. Es scheint als funktioniert nur der Zugriff über http. Den habe ich nicht ausprobiert, wollte ich aber in meinem Fall auch nicht, da mein Server nicht in meinem LAN steht.
Also mal ausprobieren:
ssh -L5001:localhost:5001 user@ipDesRasPI
, dann im Browser per localhost:5001 weiter machen als liefe die node lokal.Also, ich habe das Tunneling jetzt erfolgreich hinbekommen. Der Befehl oben ist fast richtig. So gehts:
ssh -L 5001:localhost:5001 -L 4001:localhost:4001 user@IPDesPI
Dann im Browser auf
localhost:5001/webui
gehen.Man muss auch 4001 weiterleiten, weil da der Gateway hinter steht und die webui Seite wird bereits auch über ipfs ausgeliefert.
Oder natürlich mal den trivialen Fall ausprobieren und im Browser "IpDesPi:5001/webui" aufrufen.
Das Funktioniert bei mir zum Bsp nicht, eine Idee warum?
weil die API nur auf 127.0.0.1 bindet
"API": "/ip4/127.0.0.1/tcp/5001"
, kannst du ja umstellen, wenn du eh in einem privaten Netz bist.127.0.0.1
durch0.0.0.0
ersetzten, danach ist der Port aber im gesamten Netzwerk erreichbar. Die Datei ist standardmäßig unter~/.ipfs/config
zu finden. Ggf musst du noch"Access-Control-Allow-Origin": [ "*" ]
eintragen, wenn da
127.0.0.1
statt*
eingetragen ist.Aber deutlich sicher und einfacher ist es nen ssh tunnel zu verwenden.
das mit ssh tunnel habe ich auch versucht, aber da wurde ich immer auch localhot/ipfs/irgendeinHash umgeleitet und die Seite hat sich einen Wolf geladen.
Das umstellen in den Settings werde ich mal testen.
Ich hab das Tunneln jetzt erfolgreich hinbekommen. Da die webseite die hinter der webui steckt auch über ipfs bereitgestellt wird muss natürlich auch der Gateway weitergeleitet werden.
ssh -L 5001:localhost:5001 -L 4001:localhost:4001 user@IPDesPI
Und dann im Browser
localhost:5001/webui
aufrufen. Der redirect ist ganz normal.siehe meinen Kommentar unten ;-)