欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

荐 【Linux】循序渐进学运维-服务篇-ssh配置文件详解

程序员文章站 2022-06-23 19:20:27
大家好,我是高胜寒,本文是Linux运维-循序渐进学运维-服务篇的第4篇文章文章目录前言配置文件的路径配置文件详解1. 修改默认端口2. ListenAddress 0.0.0.03. LoginGraceTime 2m4. PermitRootLogin yes 允许root登录5. PubkeyAuthentication yes 密码验证6. PermitEmptyPasswords no 是否允许空密码登录7. UsePAM yes8. PrintMotd yes9. PrintLast...

大家好,我是高胜寒,本文是Linux运维-循序渐进学运维-服务篇的第4篇文章

前言

上篇文章,我们一起探讨了ssh的安装及远程登录的方法,要想学好一个服务,配置文件必须要勤加研究,今天我们一起来聊聊ssh的配置文件

如果你还没有探究过ssh的基础知识,请点击链接:

【Linux】循序渐进学运维-服务篇-ssh服务入门

配置文件的路径

ssh的配置文件路径:

[root@gaosh-64 ~]# ls /etc/ssh/sshd_config 
/etc/ssh/sshd_config

配置文件详解

1. 修改默认端口
#Port 22
改为
Port 8888

修改完配置文件需要重新启动

[root@gaosh-64 ~]# systemctl restart sshd

使用nmap查看端口

荐
                                                        【Linux】循序渐进学运维-服务篇-ssh配置文件详解

此时如果要远程登录,需要加-p 参数

[root@gaosh-64 ~]# ssh 192.168.1.64 -p 8888   ### -p后面跟端口号
The authenticity of host '[192.168.1.64]:8888 ([192.168.1.64]:8888)' can't be established.
ECDSA key fingerprint is SHA256:dx4/4h2rPUAzmdBpIqwRt6+LM6idqWBuA7Suw4Fiu4A.
ECDSA key fingerprint is MD5:a6:e7:16:fb:0c:8d:06:63:14:62:a4:f1:c5:16:00:bc.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '[192.168.1.64]:8888' (ECDSA) to the list of known hosts.
root@192.168.1.64's password: 
Last failed login: Tue Jul 14 08:52:30 CST 2020 from 192.168.1.64 on ssh:notty
There were 2 failed login attempts since the last successful login.
Last login: Mon Jul 13 23:09:06 2020 from 192.168.1.22

也可以用之前学过的netstat来查看端口号
荐
                                                        【Linux】循序渐进学运维-服务篇-ssh配置文件详解

2. ListenAddress 0.0.0.0

设置SSHD服务器绑定的IP 地址,0.0.0.0 表示侦听所有地址
安全建议:如果主机不需要从公网ssh访问,可以把监听地址改为内网地址
比如: ListenAddress 192.168.1.0

3. LoginGraceTime 2m

当使用者连上 SSH server 之后,会出现输入密码的画面,在该画面中在多久时间内没有成功连上SSH server 就强迫断线!若无单位则默认时间为秒!

LoginGraceTime 10   #10秒钟后断开

测试,10秒钟之后连接断开,没有在输入密码的机会。
荐
                                                        【Linux】循序渐进学运维-服务篇-ssh配置文件详解

4. PermitRootLogin yes 允许root登录

是否允许 root 登入,默认是允许的,但是建议设定成 no,真实的生产环境服务器,是不允许root账号直接登陆的,仅允许普通用户登录,需要用到root用户再切换到root用户。

5. PubkeyAuthentication yes 密码验证

密码验证当然是需要的!所以这里写 yes,也可以设置为no,在真实的生产服务器上,根据不同安全级别要求,有的是设置不需要密码登陆的,通过认证的秘钥来登陆。

6. PermitEmptyPasswords no 是否允许空密码登录

是否允许空密码的用户登录,默认为no,不允许空密码登录。

7. UsePAM yes

一般来说,为了要判断客户端来源是正常合法的,因此会使用 DNS 去反查客户端的主机名
不过如果是在内网互连,这项目设定为 no 会让联机速度比较快。

8. PrintMotd yes

登录后显示一些默认信息,如上次登录时间,地点,等等。 一般默认是yes
我们也可以设置打印/etc/motd里的内容

[root@gaosh-64 ~]# cat /etc/motd
你已进入监控区域,所有的操作都将作为对薄公堂的证据!

登录系统的时候,会显示/etc/motd里的内容
荐
                                                        【Linux】循序渐进学运维-服务篇-ssh配置文件详解

9. PrintLastLog yes

在8里面,当我们输出/etc/motd的内容的时候,他其实也默认显示上次登录信息,而这个上次登录信息就是由#PrintLastLog yes 这个参数控制, 默认为yes,如果你改为no

荐
                                                        【Linux】循序渐进学运维-服务篇-ssh配置文件详解
再来测试一下:
荐
                                                        【Linux】循序渐进学运维-服务篇-ssh配置文件详解
可以看到没有显示登录信息。

5. SyslogFacility AUTHPRIV

当有人使用 SSH 登入系统的时候,SSH 会记录信息,这个信息要记录的类型为AUTHPRIV,sshd服务日志存放在:/var/log/secure。

重要说明

  • 一般情况下,ssh配置文件默认的设置,就已经是比较严谨的SSH保护了,如非必要,不要修改默认值。最多改个端口。

  • 每次修改完之后,注意重启服务,确保修改的配置生效

我是高胜寒,一个在教培行业不忘初心的人,欢迎留言与我交流,我们下篇文章再见。

本文地址:https://blog.csdn.net/xinshuzhan/article/details/107330007