设置通过数字证书方式登录远程连接Linux服务器,禁止root账户远程密码方式远程连接服务器

 //前几步是做过实验的,会的盆友可以直接跳过看后面部分

一、首先开启SSH数字证书方式登录的策略

修改配置文件/etc/ssh/sshd_config,下列三项为图中的样子,去掉注释启用配置,开启数字证书登录方式

RSAAuthentication yes

PubkeyAuthentication yes

AuthorizedKeysFile .ssh/authorized_keys

二、设置公私钥

过程比较简单,之前是做过实验写过博客的(https://www.cnblogs.com/hai-long/p/10417046.html),所以这里简单写。打开puttygen.exe,点击Generate,然后鼠标在上面的红框里划拉,生成密钥对,进度条满就成功了。

 

 上面的框是公钥需要保存服务器里面,下面的按钮可以生成私钥,这是自己保存在本地,使用这个进行连接服务器,中间的Key passphrase可以为私钥设置密码。

本地保存私钥

 

 服务器保存公钥

1、首先创建mkdir /root/.ssh

2、修改目录权限为700,命令 chmod 700 /root/.ssh/

3、新建文件anthorized_keys,命令vim /root/.ssh/authorized_keys,将公钥粘贴进去(文本框里的需要全部粘贴)

 三、数字证书方式登录

首先输入虚拟机IP

然后点击左侧SSH-Auth,加载私钥,点击Open

 

出现了输入用户名界面,输入root

 

加载到了证书,此时输入私钥的密码就可以登录服务器了

 

 

 但是此时使用用户名/密码方式也是可以登录服务器的,所以设置这个其实并没有起到多少防护作用

 

 四、设置限制root远程密码登录

修改/etc/ssh/sshd_config文件PermitRootLogin without-password(这个字段为yes时是root可以远程登录,为no是禁止远程登陆),重启服务器

 再次使用用户名/密码登录试一下,发现失败了

 使用数字证书方式登录成功

猜你喜欢

转载自www.cnblogs.com/hai-long/p/12168853.html