我通过 ssh 通过密钥对从堡垒(服务器名称)连接到另一台服务器(ecash)。
我必须将一个名为htdocs
ecash 的文件复制到 bastion,所以我正在运行:
scp source_user@source_remote_host:/usr/bin/mysql_backup.sh \
target_user@target_remote_host:/var/tmp/
但这要求我输入密码,即使我是通过密钥对连接的。
当我输入密码时,出现权限被拒绝错误(公钥,键盘交互)。
命令或文件权限是否有问题?我能做些什么?
答案1
但这要求我输入密码,即使我是通过密钥对连接的。
使用此语法从第一个主机(而不是从您的主机)连接到第二个主机。您可以使用 switch 从主机进行身份验证-3
,这通常更方便:
scp -3 source_user@source_remote_host:/usr/bin/mysql_backup.sh \
target_user@target_remote_host:/var/tmp/
答案2
我使用了这个对我有用的命令:
rsync -avp ssh --progress /home/ root@ecash-staging:/var/www/localhost/htdocs