Проверьте таблицу маршрутизации, когда подключен только wifi. (Если я правильно понял, вышеописанное происходит при подключении и проводного, и wifi). Правильно ли он маршрутизирует?
debug1: Offering RSA public key: /home/zach/.ssh/id_rsa
debug3: send_pubkey_test
debug3: send packet: type 50
debug2: we sent a publickey packet, wait for reply
debug3: receive packet: type 60
debug1: Server accepts key: pkalg ssh-rsa blen 279
debug2: input_userauth_pk_ok: fp SHA256:jsePXa9FO8c9f0bVwdgvXMJQ2GyHVqz5spaO13EQ0/M
debug3: sign_and_send_pubkey: RSA SHA256:jsePXa9FO8c9f0bVwdgvXMJQ2GyHVqz5spaO13EQ0/M
debug1: read_passphrase: can't open /dev/tty: No such device or address
debug2: no passphrase given, try next key
Ваш ключ защищен парольной фразой, но вы, вероятно, не заметили, потому что вы используют gnome-keyring
, который позаботится об этом. Итак, каковы возможности:
Используйте отдельный ключ, который не зашифрован для заданий cron, потому что у вас по-прежнему нет разумного и безопасного способа предоставления кодовой фразы в задании cron. Это предпочтительно.
Если вы не против сохранить кодовую фразу в виде открытого текста, используйте sshpass
:
sshpass -p your_passhprase -vvv my_account @ my_remote "touch temp.temp"
Другое есть возможность попытаться «захватить» соединение с вашим gnome-keyring
(используя переменную среды SSH_AUTH_SOCK
). Но учтите, что это может работать не всегда (как только вы выйдете из графического сеанса, gnome-keyring
больше не будет работать, и вы снова увидите ошибки:
SSH_AUTH_SOCK = / run / user / 1000 / keyring / ssh ssh -vvv my_account @ my_remote "touch temp.temp"