如何从 ubuntu 到 centOS 机器无需密码运行 scp 命令

如何从 ubuntu 到 centOS 机器无需密码运行 scp 命令

我想从我的机器(Ubuntu_14)运行 scp 命令到我的服务器(CentOS_6)

我已经生成了一对身份验证密钥,并将我的公钥附加到我的服务器的 .ssh/authorized_keys 中,现在我可以从我的机器运行 ssh 命令到我的服务器而无需密码,但是当我要运行 scp 命令时,它会要求输入密码

请帮我..

答案1

由于您只能使用密钥通过 ssh 连接到服务器,因此您也可以使用密钥进行 scp - 只需确保用 指向它即可scp -i /path/to/private_key <source> <target>

您也可以使用ssh-agent程序 - 您不必-i keyfile每次都使用开关(这也适用于 ssh)。使用以下命令启动它:

ssh-agent bash
ssh-add -L #this lists the keys you have added (the public key)
ssh-add /path/to/private_key #this will add a key

答案2

ssh-keygen按照说明进行设置后这里, 你可以做

scp -i ~/.ssh/id_rsa /local/path/to/file [email protected]:/path/in/remote/server/

id_rsa设置中生成的本地密钥在哪里ssh-keygen

如果你想减少每次打字,你可以修改.bash_profile文件并把

alias remote_scp='scp -i ~/.ssh/id_rsa /local/path/to/file [email protected]:/path/in/remote/server/

然后从你的终端执行source ~/.bash_profile。之后如果你remote_scp在终端中输入,它应该会scp在没有密码的情况下运行命令。

相关内容