在SCP上设置密码的位置?

时间:2014-07-03 13:15:03

标签: linux

我找不到任何关于如何使用scp设置密码以通过命令远程传输文件的示例

http://www.garron.me/en/linux/scp-linux-mac-command-windows-copy-files-over-ssh.html

currenty写道:

scp “/localFolder/localFile.txt” userName@172.11.111.345:”/RemoteFiolder/AA/”

我在哪里输入将自动运行的脚本的密码?

3 个答案:

答案 0 :(得分:2)

您不能以这种方式输入密码。虽然有一个实用程序可以自动处理密码输入"。安装expect程序并编写如下脚本:

#!/usr/bin/expect

spawn scp “/localFolder/localFile.txt” userName@172.11.111.345:”/RemoteFiolder/AA/”

expect "yes/no" {

    send "yes\n"

    expect "*?assword" { send <your_pass>\n }

    } "*?assword" { send <your_pass>\n }

interact

答案 1 :(得分:2)

使用以下方法生成密钥:     ssh-keygen -t rsa -C“your_email@example.com”

您的公钥已保存在〜/ .ssh / id_rsa.pub中。获取该密钥并将其放入远程控制台上的〜/ .ssh / authorized_keys。要添加多个键,请每行添加一个。

etvoilà,该密钥无密码登录(只要您不用密码保护它)

答案 2 :(得分:1)

出于安全原因,密码提示无法自动执行,但您可以使用公钥身份验证。

有关详细信息,请参阅ssh-keygen(1)手册。