2015-12-02 73 views
0

我使用curl --insecure --user user1:password1 -T test.txt sftp://company1.com/incoming/ -vvv将我的文件发送到SFTP。使curl使用密码auth而不是公钥认证

在输出我看到

% Total % Received % Xferd Average Speed Time Time  Time Current 
           Dload Upload Total Spent Left Speed 
    0  0 0  0 0  0  0  0 --:--:-- --:--:-- --:--:--  0* Trying xxx.xxx.xxx.xxx... 
    0  0 0  0 0  0  0  0 --:--:-- 0:00:02 --:--:--  0* Connected to transfer.dotz.com.br (xxx.xxx.xxx.xxx) port 22 (#0) 
    0  0 0  0 0  0  0  0 --:--:-- 0:00:03 --:--:--  0* SSH MD5 fingerprint: 1954076a7e4299f00df823fa1ca2d30e 
    0  0 0  0 0  0  0  0 --:--:-- 0:00:04 --:--:--  0* SSH authentication methods available: password,publickey 
* Using SSH public key file '(nil)' 
* Using SSH private key file '/home/ec2-user/.ssh/id_rsa' 
* SSH public key authentication failed: Username/PublicKey combination invalid 
* Failure connecting to agent 
* Authentication failure 
    0  0 0  0 0  0  0  0 --:--:-- 0:00:04 --:--:--  0 
* Closing connection 0 
curl: (67) Authentication failure 

我不明白为什么它抱怨的“SSH公钥验证失败”,而我明确表示--user说法。显然我的密码没有使用...

你能帮忙吗?

回答

0

为什么不使用直接sftp命令?它也会尝试按键,但是以相当的方式,所以你甚至不知道它。

这样做是因为它是ssh的默认行为,使用默认位置的密钥(请参阅手册页的sshd_config(5))。

有些事情很少,你可以做些什么来避免这种情况:

  • 取下默认位置的键删除警告
  • 尝试修改客户端配置文件中禁用PUBKEY认证:PubkeyAuthentication no~/.ssh/config(它可能不会被兑现)
  • 在服务器上使用/etc/sshd_config中的相同选项禁用pubkey身份验证并重新启动服务器(但这通常不是您想要的)。

但无论如何,这里是另外一个问题更solution

curl -v --insecure sftp://user1:[email protected] 
+0

我试过,SFTP://用户1:[email protected]失败,同样的结果 – snowindy

相关问题