Ssh

使用 systemd-cron 的反向 ssh 未連接

  • July 31, 2018

我有一個腳本,它使用 ssh、pk auth 檢查我的家庭 rpi2 中的文件,如果該文件存在,它將刪除它(再次 ssh pk auth)並打開一個反向 ssh:

ssh -fN -R xxxx:localhost:22 user@myhomepiserver.com

從命令行執行腳本時效果很好,我得到了反向shell。

從 systemd-cron 執行時,我沒有啟動程序!檢查與ps -efwww|grep "ssh -f"|grep -v grep

crontab 很簡單: */1 * * * * /home/me/my_r_ssh_script.sh

我驗證了:

  1. 在安裝了 systemd-cron 的拱臂和拱 x86 上都會發生。
  2. 在安裝了 crontab 的 ubuntu 上不會發生。

順便說一句,我已經驗證了該腳本作為使用“我”執行,並且確實它確實這樣做了,我確定它使用了正確的密鑰,我也嘗試使用 -vvv 記錄 g,我看到的是,與命令行不同的是當我從 cron 執行時,遠端沒有回答,或者由於某種原因,答案可能沒有到達客戶端,不知道為什麼。

任何幫助\提示表示讚賞!

systemd-cron不是官方的 systemd 軟體包。它似乎沒有提供執行的 systemd 單元的任何詳細配置,因此我建議您自己配置計時器,例如參見https://wiki.archlinux.org/index.php/Systemd/Timers#As_a_cron_replacement

然後你可以使用以下選項:KillModeType 、 RemainAfterExit 、 PIDFile、 .. 以防止程序被殺死。

引用自:https://serverfault.com/questions/924228