使用Upstart管理AutoSSH反向隧道


9

我正在使用upstart通过autossh管理反向SSH隧道。当我做一个“ sudo启动隧道”时,连接就很好了。但是,启动网络服务时该命令不会自动运行,并且无论我如何更改“启动”属性,我似乎都无法以自动化方式运行它。

但是,就像我说的那样,我可以启动/停止它。

这是我的/etc/init/tunnel.conf,其中删除了敏感内容:

description "SSH Tunnel"

start on started networking
stop on stopping networking

respawn

env DISPLAY=:0.0

exec autossh -nNT -R 22100:localhost:22 myuser@myserver.com -p 2201

我想我也不需要env属性,那只是我复制和修改的工作中遗留下来的。
Nuri Hodges

Answers:


12

弄清楚了,我需要等待特定的设备,这是我正在工作的Upstart作业文件:

description "SSH Tunnel"

start on (net-device-up IFACE=eth0)
stop on runlevel[016]

respawn

env DISPLAY=:0.0

exec autossh -nNT -o ServerAliveInterval=15 -R 22100:localhost:22 myuser@myserver.com -p 2201

对于多个接口:start on (net-device-up IFACE=eth0 or net-device-up IFACE=wlan0)
kontextify
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.