Set up a persistent tunnel (using autossh) in Ubuntu systems (client side).
None
-
autossh_tunnel_client_autossh_debug: [default:1]: If this variable is set, the logging level is set toLOG_DEBUG -
autossh_tunnel_client_autossh_first_poll: [default:30]: Specifies the time to wait before the first connection test -
autossh_tunnel_client_autossh_gatetime: [default:0]: Specifies how long ssh must be up before we consider it a successful connection. If it is set to0, then not only is the gatetime behaviour turned off, but autossh also ignores the first run failure of ssh -
autossh_tunnel_client_autossh_loglevel: [default:7]: Specifies the log level, corresponding to the levels used by syslog -
autossh_tunnel_client_autossh_pidfile: [default:/var/run/autossh/autossh-tunnel-client.pid]: Write pid to specified file -
autossh_tunnel_client_autossh_poll: [default:60]: Specifies the connection poll time in seconds -
autossh_tunnel_client_key_map: [default:[]]: SSH key declarations -
autossh_tunnel_client_key_map.{n}.src: [required]: The local path of the file to copy, can be absolute or relative (e.g.../../../files/autossh-tunnel-client/etc/autossh/id_rsa) -
autossh_tunnel_client_key_map.{n}.dest: [optional, defaultsrc | basename]: The remote path of the file to copy, relative to/etc/autossh(e.g.id_rsa) -
autossh_tunnel_client_key_map.{n}.owner: [optional, defaultroot]: The name of the user that should own the file -
autossh_tunnel_client_key_map.{n}.group: [optional, defaultowner,root]: The name of the group that should own the file -
autossh_tunnel_client_key_map.{n}.mode: [optional, default0600]: The mode of the file to copy -
autossh_tunnel_client_host: [required] Remote host to connect to (e.g.example.com) -
autossh_tunnel_client_port: [default:22]: Remote port to connect to -
autossh_tunnel_client_user: [default:autossh]: Remote user for connection -
autossh_tunnel_client_identity: [default:id_rsa]: Remote user for connection -
autossh_tunnel_client_autossh_options: [default:['M 0', '4', 'N']]: Autossh options -
autossh_tunnel_client_ssh_options: [default:['ServerAliveInterval 60', 'ServerAliveCountMax 3', 'BatchMode=yes', 'StrictHostKeyChecking=no']]: SSH options -
autossh_tunnel_client_forward: [required]: Port forward to set up (e.g.['3307:127.0.0.1:3306'])
None
ansible-autossh-tunnel-server(see)
---
- hosts: all
roles:
- autossh-tunnel-client
vars:
autossh_tunnel_client_key_map:
- src: ../../../files/autossh-tunnel-client/etc/autossh/id_rsa
autossh_tunnel_client_host: 'example.com'
autossh_tunnel_client_forward: ['3307:127.0.0.1:3306']You will be able to connect to mysql using:
mysql -h 127.0.0.1 -P 3307 -u#### -p#### --skip-ssl;MIT
Mischa ter Smitten (based on work of netkernelroc)
Are welcome!