ubuntu中配置ssh无密码登入应该怎么操作
发布网友
发布时间:2023-10-23 12:12
我来回答
共1个回答
热心网友
时间:2024-11-24 14:22
ssh与-keygen之间没有空格。
ssh-keygen用来产生密钥对。
命令是:
ssh -keygen -t dsa -f ~/.ssh/id_dsa
回车后会提示你输入口令passphrase, 直接跳过就行了。
完成后,会在~/.ssh/目录下新产生两个文件,而非文件夹。
id-dsa #私钥
id_dsa.pub #后缀public, 公钥
还有,你-p命令可能有点混淆
man ssh-keygen
-P phrase Provide old passphrase. # -P后面跟上的参数是之前设定的旧口令。
-p Change passphrase of private key file. #-p,小写p,不带参数,表示你要修改口令
其实《鸟哥的私房菜》ssh一节讲得很详细,有图有*,你可以参考一下。
我把我尝试的过程与你分享一下:
#设置使用密钥验证
1.产生本地的公钥,私钥对
2.修改私钥权限为600,只能本人访问。
3.上传公钥到服务器
4.将公钥内容附加到远程主机主目录的/.ssh/authorized_keys文件内。
修改authorized_keys权限为600
删除上传的公钥。
5.在本地的密钥环中导入新建的密钥对。
命令如下:
1.
ssh-keygen -t rsa
#中途提示输入passphraze,不要输入,直接enter前进到底。
结果:产生密钥对
Your identification has been saved in /home/Lynn/.ssh/id_rsa.
Your public key has been saved in /home/Lynn/.ssh/id_rsa.pub.
2.
chmod 600 /home/Lynn/.ssh/id_rsa
3.
cd ~/.ssh
sftp Capricorn@192.168.1.100
sftp> put id_rsa.pub
exit
4.
ssh Capricorn@192.168.1.100
cat id_rsa.pub >> ./.ssh/authorized_keys
chmod 600 ./.ssh/authorized_keys
rm id_rsa.pub
exit
5.#客户机导入keygen产生的新私钥
# ssh-add — adds private key identities to the authentication agent
ssh-add
完成。