簡體   English   中英

rsync 文件作為用戶使用 ssh 密鑰

[英]rsync files as user using ssh key

我正在嘗試將一些文件同步到我擁有的備份主機上。
我希望能夠以 cron 用戶(在此示例中名為 cron_user)的身份執行此操作。
目標主機在 ~/.ssh/authorized_keys 文件中有一個“發件人”行,地址為 ip,我已將私有 DSA 密鑰復制到用戶保護目錄(在封裝的 ssh -i 命令中指定)。

我仍然收到輸入密碼的提示。 是否有另一種解決方法,或者我是否遺漏了一些繞過需要密碼並引用我指定的 ssh 密鑰的東西?

sudo rsync  --timeout=3600 -azO  -e 'ssh -i /var/cron_user/cron_user' /tmp/bacup1-$(date'+%Y-%m-%d' ).tgz /tmp/backup2$(date '+%Y-%m-%d' ).tgz cron_user@hbackup00:/database/backups/app_backup/

經過進一步調查,使用 -v 表明它不允許使用基於 IP 的密鑰:

 IP: debug1: Remote: Your host '10.5.122.118' is not permitted to use this key for login. 

盡管我在 /home/user_cron/.ssh/authorized_keys 文件中列出了 IP:

 [root@hbackup00 user]# cat ~cron_user/.ssh/authorized_keys 
 from="10.5.112.42,10.5.122.118,10.5.100.200,10.5.100.205,10.5.99.223,10.4.99.229,10.4.99.223,10.4.100.182" ssh-dss

我是否缺少允許此用戶在沒有密碼的情況下進行身份驗證的內容? 我已經使用 ssh 進行了測試 - 我從此處列出的其他主機調用相同的密鑰文件,沒有問題......

以下是一些幫助您調試的建議:

  • 直接嘗試ssh ,不使用rsync 這將有助於隔離問題——如果它仍然失敗,那么您需要測試的東西就更少了,如果它有效,那么您就知道rsync正在執行的ssh調用與您認為的不同,您可以對此進行調查。

  • 打開服務器上的日志記錄。 /etc/ssh/sshd_config中,設置LogLevel VERBOSE或更高。 (請參閱sshd_config手冊頁。)有時服務器會記錄它不與客戶端共享的有趣信息。

  • 使用-vvv在客戶端命令行中調高日志記錄。

sshd 是傀儡控制的。 哦!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM