首页
运维教程
Linux基础
系统服务
系统架构
数据库
shell脚本
虚拟化
大数据
DevOps
企业案例
运维开发
python
go语言
运维安全
行业资讯
网络基础
系统安全
运维面试
学习路线
学习方法
面试题库
职场解惑
软件
运维软件
办公软件
书籍资源
技术陪跑营
重要信息
首页 运维教程Linux基础【Linux】循序渐进学运维-服务篇-ssh配置文件详解

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

文章目录

前言
配置文件的路径
配置文件详解
1. 修改默认端口
2. ListenAddress 0.0.0.0
3. LoginGraceTime 2m
4. PermitRootLogin yes 允许root登录
5. PubkeyAuthentication yes 密码验证
6. PermitEmptyPasswords no 是否允许空密码登录
7. UsePAM yes
8. PrintMotd yes
9. PrintLastLog yes
5. SyslogFacility AUTHPRIV
重要说明

前言

上篇文章,我们一起探讨了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查看端口

在这里插入图片描述

此时如果要远程登录,需要加-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来查看端口号
在这里插入图片描述

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秒钟之后连接断开,没有在输入密码的机会。
在这里插入图片描述

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里的内容
在这里插入图片描述

9. PrintLastLog yes

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

在这里插入图片描述
再来测试一下:
在这里插入图片描述
可以看到没有显示登录信息。

5. SyslogFacility AUTHPRIV

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

重要说明

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

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

本文链接:http://www.geekyunwei.com/1864.html

网友评论comments

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注

暂无评论

Copyright © 2021 极客运维 公众号《极客运维之家》
扫二维码
扫二维码
返回顶部