一个用户ID创建的SSH密钥是否可以被其他ID用于SFTP?

时间:2015-05-13 21:51:09

标签: sftp ssh-keys

我是UNix scipt和SFTP流程的新手。我需要编写一个KSH脚本,通过它我可以将文件传输到sftp服务器。我创建了SSH密钥对。我也开发了KSH代码。但是每当KSH脚本被其他ID执行时,它会提示输入密码,就像我执行密码时一样,即使这两个用户ID的组ID相同,也不要求任何密码。以下是我发送文件的部分

###################################################
# SFTP to MFT ---> SFTP to MFT ---> SFTP to MFT   #
###################################################
# Execute SFTP command to PUT a file on MFT       #
#  $1 - SSH Private Key File                      #
#  $2 - SFTP User ID @ MFT Server                 #
#  $3 - Source Directory (to take files from)     #
#  $4 - MFT Directory    (to place files into)    #
#  $5 - File to MPUT                              #
#  $6 - MFT PWD                                   #
###################################################
function sftpputtomft {

sftp -o identityfile=${1} ${2} >> $SFTP_LOG << ENDSFTP
   lcd  ${3}
   cd   ${4}
   mput ${5}
   bye
ENDSFTP

1 个答案:

答案 0 :(得分:0)

OpemSSH将拒绝使用其他人可读的密钥。如果您尝试,您将得到类似的警告,如下所示。

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@         WARNING: UNPROTECTED PRIVATE KEY FILE!          @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0644 for '/Users/XXXXXXXX/.ssh/id_rsa' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
bad permissions: ignore key: /Users/XXXXXXXX/.ssh/id_rsa

希望这有帮助。