From Rivendell Wiki
We set up the vnc and other tunnels via ssh with a bash script like this:
#!/bin/bash echo "SSH to port forwarded rdserver with tunnels" echo "vnc71, 6201:6201, 8090:80, 8100:8000" echo "6201 is the orban?)" ssh -p 2022 -L 6201:192.168.1.15:6201 -L 5971:localhost:5901 -L 8090:localhost:80 -L 8100:192.168.1.9:8000 -X email@example.com
At the some.routable.ip.address we have the firewall/router that the rivendell server sits behind on a static ip address or on a reserved ip address in the router so that we can set up the port forward on the router.
In this example, that would be something like: 192.168.1.10
The port forwards would be something like this:
2022 external -> 192.168.1.10:22 internal (vnc control of rivendell server) 8100 external -> 192.168.1.9:8000 internal (icecast server for relay pull)
The tunnels are like this:
- vnc client connects to 5971 and gets to 5900 on localhost
- web browser connects to localhost:8090 and goes to port 80 on localhost which is an apache web server
- web browser connects to localhost:8100 and goes to port 8000 on the icecast server
- vlc or another audio player capable of streaming from an icecast server can connect to http://localhost:8100/stream.m3u to listen to the stream over the tunnel.
- vlc or another audio player capable of streaming from an icecast server can connect to http://some.routable.ip.address:8100/stream.m3u to listen to the stream over the open internet
- optimod software can connect to localhost on port 6201 to connect to the optimod port 6201 at 192.168.1.15