diff --git a/AUTHORS b/AUTHORS index 6f3e279..cf8d695 100644 --- a/AUTHORS +++ b/AUTHORS @@ -4,3 +4,8 @@ E:nojhan@nojhan.net D:2009-06-23 C:Initial code, lead developper +N:Ghislain Picard +P:ghislainp +E:ghislain.picard@univ-grenoble-alpes.fr +D:2021-01-22 +C:Fixes on tunnels detection diff --git a/CHANGELOG b/CHANGELOG deleted file mode 100644 index 7109a0a..0000000 --- a/CHANGELOG +++ /dev/null @@ -1,24 +0,0 @@ -0.5: -* python3 -* complete rewrite for portability -* handle autossh tunnels *and* raw ssh tunnels -* better formatting - -0.4: -* adds IPv6 support -* bugfixes - -0.3: -* added a via_host field (show on which host the tunnel is build) -* don't try to show connections if the user is not root - -0.2: -* update from the deprecated popen3 functions to the subprocess module (need python >= 2.4) -* html help page - -0.1: -* command line interface -* curses interface -* list of active autossh instances -* associated active ssh connections - diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..402f281 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,34 @@ +1.1: "Ñìrikarñar" +- handle local, remote and dynamic port forwading tunnels, +- different colors for different types. + +1.0: "Ereshkigal" +- python 3.8, +- fix tunnels detection, +- fix logging, +- code formating. + +0.5: +- python3, +- complete rewrite for portability, +- handle autossh tunnels *and* raw ssh tunnels, +- better formatting. + +0.4: +- adds IPv6 support, +- bugfixes. + +0.3: +- added a via_host field (show on which host the tunnel is build), +- don't try to show connections if the user is not root. + +0.2: +- update from the deprecated popen3 functions to the subprocess module (need python >= 2.4), +- html help page. + +0.1: +- command line interface, +- curses interface, +- list of active autossh instances, +- associated active ssh connections. + diff --git a/README.md b/README.md index 49ac77e..f5093a0 100644 --- a/README.md +++ b/README.md @@ -10,12 +10,14 @@ tunnelmon -- Monitor and manage autoSSH tunnels ## DESCRIPTION -`tunnelmon` is an autossh tunnel monitor. It gives a user interface to monitor existing SSH tunnel that are managed with autossh. +`tunnelmon` is an autossh tunnel monitor. It gives a user interface to monitor existing SSH tunnel, and tunnels managed with autossh. It can print the current state of your tunnels or display them in an interactive text-based interface. `tunnelmon` is released under the GNU Public License v3. +![Screenshot](https://raw.github.com/nojhan/tunnelmon/master/screenshot.png) + ## INSTALLATION @@ -63,6 +65,30 @@ Keyboard commands: * `Q`: Quit tunnelmon. +## DISPLAY + +Tunnelmon displays a table where lines are [auto]ssh processes that sets up a tunnel. +Columns of the table indicates: +- TYPE: `auto` if the process is managed by autossh, `ssh` if it is a "raw" SSH tunnel; +- FORWARD: the type of port forwarding method (either `local`, `remote` or `dynamic`, see the SSH manual for details); +- SSHPID: the process identifier; +- INPORT: the client port; +- VIA: the client host; +- TARGET: the host address; +- OUTPORT: the host port. + +The interactive interface adds a CONNECTIONS columns that displays one vertical bar for each connection set up by the tunnel. + +If you ask for showing the connections list (typing `N` in the interactive interface, or not passing `-u` to the command line one), +Tunnelmon will show indented lines with the type of the connection, its status and the related address:port informations. + +In the interactive interface, different colors are used for: +- the tunnel type, +- the port forwarding methods, +- privileged and unprivileged ports, +- loopback, private and regular addresses. + + ## SSH Tunnels in a nutshell To open a tunnel to port 1234 of `server` through a `host` reached on port 4567: @@ -75,3 +101,4 @@ Autossh can restart tunnels for you, in case they crash: ``` autossh -f host -L4567:server:1234 ``` + diff --git a/screenshot.png b/screenshot.png new file mode 100644 index 0000000..d81baed Binary files /dev/null and b/screenshot.png differ