文章目录
- 一、前言
- 二、配置方法
- 三、遇到报错的解决方案
一、前言
在安装配置linux服务器,设置私钥登录可以有两个好处,第一个好处防止对外linux服务器遭受ssh爆破攻击,提高了安全性;第二个好处登录服务器不需要输入密码(无密码登录),提升了便捷性。与此同时,私钥对于用户来说就像身份证一样重要,所以要存放并备份好自己的私钥。
二、配置方法
公私文件要位置 id_rsa(私钥) id_rsa.pub (公钥)
mac os
/Users/用户名/.ssh/
windows
c:\users\用户名\.ssh\
linux
/Users/用户名/.ssh/
如果没有.ssh文件,可以使用以下命令然后一直按回车就可以生成了
ssh-agent
上传公钥到服务器
ssh-copy-id -i ./id_rsa.pub root@ip
上次成功服务器的.ssh文件夹会有authorized_keys文件,这就表明上传成功。
禁用使用密码登录
vim /etc/ssh/sshd_config
PasswordAuthentication yes改为no
systemctl restart sshd
修改root没有密码,这样不能使用密码登录
vim /etc/shadow 密码用*号代替
三、遇到报错的解决方案
1、ssh登陆报错“WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED“问题原因及解决方法
问题原因
WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!
翻译过来就是
警告:远程主机标识已更改!
此报错是由于远程的主机的公钥发生了变化导致的。
ssh服务是通过公钥和私钥来进行连接的,它会把每个曾经访问过计算机或服务器的公钥(public key),记录在~/.ssh/known_hosts 中,当下次访问曾经访问过的计算机或服务器时,ssh就会核对公钥,如果和上次记录的不同,OpenSSH会发出警告。
解决方法
删除对应ip的在known_hosts相关信息
vim /root/.ssh/known_hosts
更多推荐
Linux使用publick key 登录(无密码登录)
发布评论