mirror of
https://github.com/rootzoll/raspiblitz.git
synced 2024-11-19 09:50:19 +01:00
changed syntax to allow local ssh tunnel in future
This commit is contained in:
parent
324420a163
commit
ef99172712
4
FAQ.md
4
FAQ.md
@ -644,11 +644,11 @@ You can add those at the end of the file, save and reboot.
|
||||
|
||||
On the RaspiBlitz you can then setup for example to forward the gRPC port 10009 (internal port) to the port 20009 on the public server (external port) with the user = `test` and server address = `raspiblitz.com` with the following command:
|
||||
|
||||
`/home/admin/config.scripts/internet.sshtunnel.py on test@raspiblitz.com 10009:20009`
|
||||
`/home/admin/config.scripts/internet.sshtunnel.py on test@raspiblitz.com 10009<20009`
|
||||
|
||||
You can even set multiple port forwardings like with:
|
||||
|
||||
`/home/admin/config.scripts/internet.sshtunnel.py on test@raspiblitz.com 10009:20009 8080:9090`
|
||||
`/home/admin/config.scripts/internet.sshtunnel.py on test@raspiblitz.com 10009<20009 8080<9090`
|
||||
|
||||
Please beware that after you set such a port forwarding you need to set the domain of the public server as a `DynamicDNS` name (leave update url empty) and then connect mobile wallets fresh or export again the macaroons/certs. When connecting the mobile wallets you may need to adjust ports manually after QR code scan. And if you SSH tunnel the LND node port `9735` you may also need to sun the custom LND port script and maybe also a manual set of the domain in the LND service is needed. This all is very experimental at the moment ... better integration will come in the future.
|
||||
|
||||
|
@ -3,11 +3,15 @@
|
||||
import sys, subprocess, re
|
||||
from pathlib import Path
|
||||
|
||||
# IDEA: At the momemt its just Reverse-SSh Tunnels thats why [INTERNAL-PORT]<[EXTERNAL-PORT]
|
||||
# For the future also just local ssh tunnels could be added with [INTERNAL-PORT]>[EXTERNAL-PORT]
|
||||
# for the use case when a server wants to use a RaspiBlitz behind a NAT as Lightning backend
|
||||
|
||||
# display config script info
|
||||
if len(sys.argv) <= 1 or sys.argv[1] == "-h" or sys.argv[1] == "help":
|
||||
print("forward ports from another server to raspiblitz with reverse SSH tunnel")
|
||||
print("internet.sshtunnel.py [on|off|restore] [USER]@[SERVER] [INTERNAL-PORT]:[EXTERNAL-PORT]")
|
||||
print("note that [INTERNAL-PORT]:[EXTERNAL-PORT] can one or multiple forwardings")
|
||||
print("internet.sshtunnel.py [on|off|restore] [USER]@[SERVER] [INTERNAL-PORT]<[EXTERNAL-PORT]")
|
||||
print("note that [INTERNAL-PORT]<[EXTERNAL-PORT] can one or multiple forwardings")
|
||||
sys.exit(1)
|
||||
|
||||
#
|
||||
@ -68,26 +72,26 @@ if sys.argv[1] == "on":
|
||||
|
||||
# genenate additional parameter for autossh (forwarding ports)
|
||||
if len(sys.argv) < 4:
|
||||
print("[INTERNAL-PORT]:[EXTERNAL-PORT] missing - run 'internet.sshtunnel.py off' first")
|
||||
print("[INTERNAL-PORT]<[EXTERNAL-PORT] missing - run 'internet.sshtunnel.py off' first")
|
||||
sys.exit(1)
|
||||
additional_parameters=""
|
||||
i = 3
|
||||
while i < len(sys.argv):
|
||||
|
||||
# check forwarding format
|
||||
if sys.argv[i].count(":") != 1:
|
||||
print("[INTERNAL-PORT]:[EXTERNAL-PORT] wrong format '%s'" % (sys.argv[i]))
|
||||
if sys.argv[i].count("<") != 1:
|
||||
print("[INTERNAL-PORT]<[EXTERNAL-PORT] wrong format '%s'" % (sys.argv[i]))
|
||||
sys.exit(1)
|
||||
|
||||
# get ports
|
||||
ports = sys.argv[i].split(":")
|
||||
ports = sys.argv[i].split("<")
|
||||
port_internal = ports[0]
|
||||
port_external = ports[1]
|
||||
if port_internal.isdigit() == False:
|
||||
print("[INTERNAL-PORT]:[EXTERNAL-PORT] internal not number '%s'" % (sys.argv[i]))
|
||||
print("[INTERNAL-PORT]<[EXTERNAL-PORT] internal not number '%s'" % (sys.argv[i]))
|
||||
sys.exit(1)
|
||||
if port_external.isdigit() == False:
|
||||
print("[INTERNAL-PORT]:[EXTERNAL-PORT] external not number '%s'" % (sys.argv[i]))
|
||||
print("[INTERNAL-PORT]<[EXTERNAL-PORT] external not number '%s'" % (sys.argv[i]))
|
||||
sys.exit(1)
|
||||
|
||||
additional_parameters= additional_parameters + "-R %s:localhost:%s " % (port_external,port_internal)
|
||||
|
Loading…
Reference in New Issue
Block a user