SSH无密码怎么实现安全登录
导读:本文共2218.5字符,通常情况下阅读需要7分钟。同时您也可以点击右侧朗读,来听本文内容。按键盘←(左) →(右) 方向键可以翻页。
摘要: 今天我们通过使用ssh-kengen命令生成私钥&公钥对,目的:免密码登录SSH。其算法有两种,分别是RSA和DSA。RSA 是非对称加密算法,可以用来加密和签名。DSA(Digital Signature Algorithm) 只能用来数字签名的算法。以下操作适用于OS:Centos 7、Ubuntu 17,其他系统没测,理论上都可以使用。服务器:10... ...
目录
(为您整理了一些要点),点击可以直达。今天我们通过使用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无密码怎么实现安全登录的详细内容,希望对您有所帮助,信息来源于网络。