Personal tools

Difference between revisions of "CookbookChapter04"

From Rivendell Wiki

Jump to: navigation, search
(Beginning notes on vnc and rivendell over ssh tunnels.)
 
m (categorize)
 
(4 intermediate revisions by 2 users not shown)
Line 1: Line 1:
Initial notes.
+
=== All Roads Lead to Rivendell ===
  
We set up the vnc and other tunnels via ssh with a bash script like this:
+
VNC access from inside and outside the studios.
  
 +
Or ... how to gain access to your Rivendell system from anywhere in the Universe.
  
<nowiki>
+
==== Initial notes ====
#!/bin/bash
+
  
echo "SSH to port forwarded rdserver with tunnels"
+
<This set of initial notes from drew Roberts. Should get fleshed out and made more portable.>
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 rd@some.routable.ip.address
+
</nowiki>
+
  
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.
+
We set up the VNC and other tunnels via SSH with a BASH script like this:
 +
 
 +
 
 +
<nowiki>
 +
#!/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 rd@some.routable.ip.address
 +
</nowiki>
 +
 
 +
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
 
In this example, that would be something like: 192.168.1.10
Line 19: Line 27:
 
The port forwards would be something like this:
 
The port forwards would be something like this:
  
2022 external -> 192.168.1.10:22 internal (vnc control of rivendell server)
+
: 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)
+
: 8100 external -> 192.168.1.9:8000 internal (Icecast server for relay pull)
  
 
The tunnels are like this:
 
The tunnels are like this:
  
*vnc client connects to 5971 and gets to 5900 on localhost
+
* 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: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
+
* 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 <nowiki>http://localhost:8100/stream.m3u</nowiki> 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
+
* VLC or another audio player capable of streaming from an Icecast server can connect to <nowiki>http://some.routable.ip.address:8100/stream.m3u</nowiki> 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
+
* Optimod software can connect to localhost on port 6201 to connect to the Optimod port 6201 at 192.168.1.15
 +
 
 +
We run x11vnc for the vnc client to connect to over the ssh tunnel described above. What we do is have the user rd set to log in automatically, Then we start x11vnc as enabled by the following:
 +
 
 +
<nowiki>
 +
$ cat /home/rd/.config/autostart/x11vnc.desktop
 +
 +
[Desktop Entry]
 +
Encoding=UTF-8
 +
Name=x11vnc
 +
Comment=X11 VNC server
 +
Exec=/usr/bin/gnome-terminal -x /usr/bin/x11vnc -rfbauth /home/rd/.vnc/passwd -display :0 -shared -forever -solid red
 +
Terminal=false
 +
Type=Application
 +
Categories=Application
 +
 +
</nowiki>
 +
 
 +
Basically, the desktop entry in .configure/autostart is run on login. This uses gnome terminal to kick off x11vnc with the parameters shown and uses the password stored in /home/rd/.vnc/passwd as shown
 +
 
 +
x11vnc was installed as follows:
 +
 
 +
<nowiki>
 +
yum install x11vnc.x86_64
 +
</nowiki>
 +
 
 +
[[Category:Cookbook]]

Latest revision as of 02:38, 4 August 2020

All Roads Lead to Rivendell

VNC access from inside and outside the studios.

Or ... how to gain access to your Rivendell system from anywhere in the Universe.

Initial notes

<This set of initial notes from drew Roberts. Should get fleshed out and made more portable.>

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 rd@some.routable.ip.address
 

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

We run x11vnc for the vnc client to connect to over the ssh tunnel described above. What we do is have the user rd set to log in automatically, Then we start x11vnc as enabled by the following:

 $ cat /home/rd/.config/autostart/x11vnc.desktop 
 
 [Desktop Entry]
 Encoding=UTF-8
 Name=x11vnc
 Comment=X11 VNC server
 Exec=/usr/bin/gnome-terminal -x /usr/bin/x11vnc -rfbauth /home/rd/.vnc/passwd -display :0 -shared -forever -solid red
 Terminal=false
 Type=Application
 Categories=Application
 
 

Basically, the desktop entry in .configure/autostart is run on login. This uses gnome terminal to kick off x11vnc with the parameters shown and uses the password stored in /home/rd/.vnc/passwd as shown

x11vnc was installed as follows:

 yum install x11vnc.x86_64