Autossh的问题:从cron vs terminal运行
我正在尝试在服务器和几个客户端盒之间建立可靠的反向隧道。我正在使用autossh来重新建立连接,如果它们掉线或过时但我遇到了一些问题。 服务器: 服务器具有链接到DDNS服务的动态IP。我希望SSH中的'-o“CheckHostIP = no”'参数可以防止服务器的IP发生变化时出现问题。 服务器通过端口转发从其网关路由器获取SSH。路由器端口3141上的传入连接转到服务器端口22。 客户: 每个客户端从配置文件获得不同的autossh监控端口和反向隧道端口。 python脚本读取cfg文件并构建一个使用“os.system(cmd)”运行的autossh cmd。它们各自具有用于进入服务器的密钥。目前,AutoSSH命令在重新启动时从cron运行,所有输出都记录在文本文件中。命令是: autossh -v -M 23000 -N -o "CheckHostIP=no" -o "ExitOnForwardFailure=yes" -o "ServerAliveInterval=10" -o "PubkeyAuthentication=yes" -o "PasswordAuthentication=no" -i /home/client1/.ssh/id_ed25519 -R 22000:localhost:22 user@server.ddns.org -p 3141 该命令在终端中调用时工作正常但不能从cron工作。 来自CRON: OpenSSH_6.7p1 Raspbian-5+deb8u1, OpenSSL 1.0.1k 8 Jan 2015 debug1: Reading configuration data /etc/ssh/ssh_config debug1: /etc/ssh/ssh_config line 19: …