Redhat之SSH

SSH

今天来个简单的。SSH使用TCP端口22。由于telnet不使用任何的安全机制,而ssh使用用户身份认证+证书验证的安全机制。相对telnet来说,ssh有较高的安全性。现实生产中,很多设备也只开启ssh,而不开telnet服务。

1、 解决ssh登录慢的问题

ssh登录慢是因为进行了DNS查询。我们只需要将DNS查询设置为NO即可。

vim /etc/ssh/sshd_config
systemctl restart sshd
DNS

2、 不让root登录

vim /etc/ssh/sshd_config
systemctl restart sshd

PermitRootLogin no

3、使用证书登录

证书加密解密过程借用网上一张图(一句话:公钥加密,私钥解密)
在这里插入图片描述

这里有一篇文章,详细生动地介绍了整个流程:https://blog.csdn.net/baidu_36327010/article/details/78659665
配置如下:

ssh-keygen -t rsa    #生成秘钥。指定加密方式为rsa
ssh-copy-id 192.168.0.200  #将公钥拷贝到192.168.0.200。
systemctl restart sshd

可以看到,在/root/.ssh/ 目录下生成了一个公钥和一个私钥。
在这里插入图片描述

可以看到登录到system2时候,直接使用证书而不需要用户名和密码。
在这里插入图片描述

  • 如果需要system2上使用证书ssh登陆system1。只需要将system2上生成的公钥拷贝到system1即可。
    system2上:
ssh-keygen -t rsa
scp id_rsa.pub 192.168.0.100:/root/.ssh/authorized_keys  #拷贝公钥到system1,注意名字authorized_keys。我试过,其他名字不行
systemctl restart sshd 

在这里插入图片描述

  • 如果需要使用hostname登陆,需要修改/ect/hosts
vim /etc/hosts

在这里插入图片描述
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/GhostRaven/article/details/85320607