SSH无密码怎么实现安全登录(ssh,开发技术)

时间:2024-05-06 09:43:00 作者 : 石家庄SEO 分类 : 开发技术
  • TAG :
SSH无密码怎么实现安全登录

今天我们通过使用ssh-kengen命令生成私钥&公钥对,目的:免密码登录SSH。其算法有两种,分别是RSA和DSA。

RSA 是非对称加密算法,可以用来加密和签名。

DSA(Digital Signature Algorithm) 只能用来数字签名的算法。

以下操作适用于OS:Centos 7、Ubuntu 17,其他系统没测,理论上都可以使用。

服务器:

10.10.204.63

10.10.204.64

1.如何生成ssh公钥

登录10.10.204.63服务器生成公私密钥对:

[root@10-10-204-63~]#ssh-keygen-b4096-trsaGeneratingpublic/privatersakeypair.Enterfileinwhichtosavethekey(/root/.ssh/id_rsa):Createddirectory'/root/.ssh'.Enterpassphrase(emptyfornopassphrase):Entersamepassphraseagain:Youridentificationhasbeensavedin/root/.ssh/id_rsa.Yourpublickeyhasbeensavedin/root/.ssh/id_rsa.pub.Thekeyfingerprintis:SHA256:qLcoj2nSzq6G9ZpFQZ/OFqFT+oBDf3ousHkt82F1/xMroot@10-10-204-63.10.10.204.63Thekey'srandomartimageis:+---[RSA4096]----+|..o||.+=o||oB=||.Xo||.oBS.||.=*...E||.oo.B*..||oo+*.Oo..||o*O+oo..|+----[SHA256]-----+三次回车即可生成sshkey。

注解:

-b 指定密钥长度。对于RSA密钥,最小要求768位,默认是2048位,最长4096字节。

-t 指定要创建的密钥类型。可以使用:”rsa1″(SSH-1) “rsa”(SSH-2) “dsa”(SSH-2)。

2.查看生成的文件

[root@10-10-204-63~]#ll.ssh/total8-rw-------1rootroot3243Nov2515:58id_rsa-rw-r--r--1rootroot758Nov2515:58id_rsa.pub说明:id_rsa私钥id_rsa.pub公钥

3.将公钥上传到10.10.204.64

[root@10-10-204-63~]#ssh-copy-id-i~/.ssh/id_rsa.pubroot@10.10.204.64/usr/bin/ssh-copy-id:INFO:Sourceofkey(s)tobeinstalled:"/root/.ssh/id_rsa.pub"Theauthenticityofhost'10.10.204.64(10.10.204.64)'can'tbeestablished.ECDSAkeyfingerprintisSHA256:/YI/L4RT1QH7lkfxMCAkKnvniQslyUl15mOUKUo8K3k.ECDSAkeyfingerprintisMD5:6d:b6:f3:93:8e:48:53:24:9d:5d:c2:2a:5f:28:f4:d2.Areyousureyouwanttocontinueconnecting(yes/no)?yes【输入yes回车】/usr/bin/ssh-copy-id:INFO:attemptingtologinwiththenewkey(s),tofilteroutanythatarealreadyinstalled/usr/bin/ssh-copy-id:INFO:1key(s)remaintobeinstalled--ifyouarepromptednowitistoinstallthenewkeysroot@10.10.204.64'spassword:【输入服务器密码回车】Numberofkey(s)added:1Nowtryloggingintothemachine,with:"ssh'root@10.10.204.64'"andchecktomakesurethatonlythekey(s)youwantedwereadded.

上传成功。

4.修改SSH配置文件

登录10.28.204.64修改,操作如下:

$vim/etc/ssh/sshd_config去除以下注释:RSAAuthenticationyesPubkeyAuthenticationyes

5.重启SSH服务

$systemctlrestartsshd

6.测试免密码登录10.10.204.64

[root@10-10-204-63~]#ssh'root@10.10.204.64'Lastfailedlogin:SatNov2516:09:48CST2017from83.234.149.66onssh:nottyTherewas1failedloginattemptsincethelastsuccessfullogin.Lastlogin:SatNov2515:57:332017from36.7.69.84[root@10-10-204-64~]#

在不输入密码的情况下成功登录。

登陆成功后,建议在10.10.204.64服务器上也生成ssh公钥,并上传到10.10.204.63服务器,这样以来我们就可以相互免密码SSH登陆。多台服务器亦是如此。

7.查看公钥

[root@10-10-204-64~]#ll/root/.ssh/total8-rw-------1rootroot758Nov2516:08authorized_keys-rw-r--r--.1rootroot175Aug909:19known_hosts

authorized_keys是刚上传过来的公钥名称

8.如果公钥丢失,可以使用私钥再次生成公钥,命令如下:

[root@10-10-204-63~]#ssh-keygen-y-f~/.ssh/id_rsa>~/.ssh/id_rsa.pub
 </div> <div class="zixun-tj-product adv-bottom"></div> </div> </div> <div class="prve-next-news">
本文:SSH无密码怎么实现安全登录的详细内容,希望对您有所帮助,信息来源于网络。
上一篇:HTML段落和换行的示例分析下一篇:

5 人围观 / 0 条评论 ↓快速评论↓

(必须)

(必须,保密)

阿狸1 阿狸2 阿狸3 阿狸4 阿狸5 阿狸6 阿狸7 阿狸8 阿狸9 阿狸10 阿狸11 阿狸12 阿狸13 阿狸14 阿狸15 阿狸16 阿狸17 阿狸18