Ich habe einen PC hinter einem NAT, der eine umgekehrte SSH-Verbindung zu meiner Digitalocean VPC herstellt. Ich verwende diese umgekehrte SSH-Verbindung von zu Hause aus, um mich bei meinem Büro-PC anzumelden (ich bin dazu berechtigt), Dateien zu kopieren und andere wichtige Dinge zu tun.
Obwohl nicht oft, bemerkte ich, dass mein Büro-PC neu startet (aufgrund von Stromausfällen usw.) und die umgekehrte SSH-Verbindung, die er mit meiner VPC hergestellt hat, unterbricht. In solchen Fällen kann ich keine Verbindung von meinem Heim-PC zu meinem Büro-PC herstellen.
Ich führe das folgende Skript aus, um die umgekehrte Verbindung + den dynamischen Proxy herzustellen, um meinen auf dem Büro-PC generierten Datenverkehr (da ich keine Browserinformationen freigeben muss) zu anonymisieren.
autossh -CD 8080 -i digitalOcean -R 8081:localhost:22 root@IPofDigitalOceanPC
Es gibt keine Möglichkeit, dieses Skript nach einem Neustart erneut auf meinem Büro-PC auszuführen, da ich physisch nicht da bin. Um dieses Problem zu lösen, habe ich die folgende Crontab installiert.
Hinweis: Die rev.sh
Datei enthält die obige Zeile. Das Zertifikat "digitalOcean" und rev.sh befindet sich in Ubuntu home
. Wenn ich ./rev.sh
in meinem Ubuntu-Terminal ausführe, erhalte ich daher einen dynamischen Proxy und Zugriff auf den ym DigitalOcean-Server. Diese Methode funktioniert zu 100%.
Wenn ich die chrontab jedoch in der folgenden Methode installiere, erstellt mein Ubuntu-PC niemals einen dynamischen Proxy. Ich kann dies sehen, weil beim Überprüfen dieses Proxys in Google Chrome angezeigt wird, dass der Proxy die Verbindung verweigert.
Hier sind die Cronejobs, die ich als Roots-Cronejobs ausprobiert habe. Ich habe diese auch als normaler Benutzer ausprobiert, aber sie haben immer noch nicht funktioniert.
@reboot bash /home/user/rev.sh
@reboot /home/user/rev.sh
@reboot cd /home/user && ./rev.sh
Ich habe dann einige Minuten vor der aktuellen Zeit eine Chrontab installiert und darauf gewartet, dass sie ausgeführt wird.
24 12 8 * * * bash /home/user/rev.sh
24 12 8 * * * /home/user/rev.sh
diese wurden auch nicht ausgeführt.
Bitte seien Sie so freundlich, mir zu helfen, meinen Fehler zu erkennen. Es gibt viele ähnliche Fragen auf dieser Website zu meinem Problem. Ich habe daher viele Antworten gegeben, aber keine davon schien zu helfen.
/var/log/cron*
. Zu Testzwecken können Sie einfach so etwas schreiben*/2 * * * * /path/to/script
- es wird alle 2 Minuten ein Skript ausgeführt. Suchen Sie auch nach E-Mails für Benutzer, die cron ausführen. Ist es Wurzel? Verwendenmail
Befehl. Oh, ich kann sehen, dass Sie den SSH-Schlüssel verwenden? Ich bezweifle, dass Cron Job es finden kann, wenn Sie nach dem-i
Wechsel keinen vollständigen Pfad dazu angeben.