Bash shell脚本用于回答SSH密钥生成的问题

时间:2013-04-21 17:29:10

标签: shell scripting public-key-encryption ssh-keys openssh

我想回答bash shell中出现的问题

前:

脚本

#!/bin/bash
ssh-keygen -t rsa

#it will appear a question >> Enter file in which to save the key 
# (/root/.shh/id_rsa) so how  can i read answer from the user(which is the path)
# and **enter it to be the answer of the question.

2 个答案:

答案 0 :(得分:0)

尝试这样做(无需使用STDIN):

rm -f ~/.ssh/id_rsa*
ssh-keygen -q -t rsa -P MyOwnPassPhrase -f ~/.ssh/id_rsa

你读过吗?

man ssh-keygen 

? =)

答案 1 :(得分:0)

如果您已经知道要在其中存储输出的文件的名称,则可以在脚本的命令行上指定该名称,如下所示:

ssh-keygen -t rsa -f keyfile

否则,您可以要求用户指定名称,否则请使用提供的参数。如果他们没有在命令行上传递名称,则该方法将允许他们指定名称。 (用法是:您的脚本名密钥文件名)

if [ $# -eq 0 ]; then
        read -p "Enter filename for key: " keyfile
        ssh-keygen -t rsa -f $keyfile  
else
        ssh-keygen -t rsa -f $1 
fi