diff options
Diffstat (limited to 'local')
-rwxr-xr-x | local/bin/sshvnc | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/local/bin/sshvnc b/local/bin/sshvnc new file mode 100755 index 0000000..8b6fa0d --- /dev/null +++ b/local/bin/sshvnc @@ -0,0 +1,17 @@ +#!/bin/bash +set -eu + +target="$1" + +localport="5901" +while lsof -i:$localport; do + localport=$((localport + 1)) +done + +ssh -L "$localport":localhost:5900 "$target" \ + 'x11vnc -bg -localhost -display :0' + +vncviewer "localhost:$localport" + +ssh "$target" 'x11vnc -remote stop -localhost -display :0' +ssh -O cancel -L "$localport":localhost:5900 "$target" |