CentOS 7.9下SSH安全加固建议
时间:2023年09月02日
/来源:网络
/编辑:佚名
恶意扫描攻击服务器的人越来越多,运维们为了防止服务器被入侵,真是煞费苦心。不做点儿什么,服务器真就被攻破了!
多数的攻击手段,都是从ssh下手的,攻破ssh,相当于整台服务器都是黑客的了。我之前发过一篇关于宝塔的安全设置,防御手段都用上了。当然除了宝塔的安排配置,感觉还差些什么,所以就有了这篇文章。
本文演示所用系统为CentOS 7.9
以“# ”(#加空格)开头的是注释信息,以“#”开头的是默认配置信息
如果默认内容有修改,需删除该设置前的#,如果不删除#符号配置是不会生效的
服务器端配置文件
打开/etc/ssh/sshd_config文件,这个文件是SSH 守护进程的配置文件
1.确保密码登陆失败次数3-6
设置最大密码尝试登陆失败次数3-6,建议为4
搜索MaxAuthTries
MaxAuthTries 4
图片[1]-SSH安全加固建议
2.禁止空密码登陆
设置为no
搜索PermitEmptyPasswords
PermitEmptyPasswords no
图片[2]-SSH安全加固建议
3.设置SSH空闲超时退出时间
将ClientAliveInterval设置为300-900(即客户端存活时间时长5到15分钟),建议设置为600,将ClientAliveCountMax设置为0-3(即客户端存活数0到3个),建议设置为2
搜索ClientAlive
ClientAliveInterval 600
ClientAliveCountMax 2
图片[3]-SSH安全加固建议
4.设置SSH日志级别
设置为INFO
搜索LogLevel
LogLevel INFO
图片[4]-SSH安全加固建议
5.SSHD强制使用V2安全协议
如果配置中有这个属性就设置为2,没有就略过
搜索Protocol
Protocol 2
图片[5]-SSH安全加固建议
6.SSH 禁止root远程登录
设置为no
搜索PermitRootLogin
PermitRootLogin no
图片[6]-SSH安全加固建议
进行设置禁止root远程登录前,请确保有一个非root,且可以使用sudo命令的用户。如果误操作了这一步,将导致root无法无法登陆ssh请使用vnc操作终端,使vi命令将此处修改为yes即可使root可登陆
完成以上配置后,需重启sshd服务或重启服务器,使设置生效!
service sshd restart
SSH密码相关配置
1.1.SSH密码修改最小间隔
打开/etc/login.defs文件
设置为大于等于7
搜索PASS_MIN_DAYS
PASS_MIN_DAYS 7
图片[7]-SSH安全加固建议
1.2.SSH密码失效时间
参数设置为90-180之间,使用非密码登陆方式时,忽略此设置
搜索PASS_MAX_DAYS
PASS_MAX_DAYS 120
图片[8]-SSH安全加固建议
1.3.SSH过期提前警告天数
设置为大于等于7
搜索PASS_WARN_AGE
PASS_WARN_AGE 7
图片[9]-SSH安全加固建议
2.1.SSH密码长度度检查
打开/etc/security/pwquality.conf文件
设置为9-32位
搜索minlen
minlen = 9
图片[10]-SSH安全加固建议-王先生笔记
2.2.SSH密码复杂度检查
(至少包含小写字母、大写字母、数字、特殊字符等4类字符中等3类或4类)设置为3或4
搜索minclass
minclass = 3
图片[11]-SSH安全加固建议
对默认配置文件进行简单的修改,即可提高安全度。与下文配合使用,效果更佳
多数的攻击手段,都是从ssh下手的,攻破ssh,相当于整台服务器都是黑客的了。我之前发过一篇关于宝塔的安全设置,防御手段都用上了。当然除了宝塔的安排配置,感觉还差些什么,所以就有了这篇文章。
本文演示所用系统为CentOS 7.9
以“# ”(#加空格)开头的是注释信息,以“#”开头的是默认配置信息
如果默认内容有修改,需删除该设置前的#,如果不删除#符号配置是不会生效的
服务器端配置文件
打开/etc/ssh/sshd_config文件,这个文件是SSH 守护进程的配置文件
1.确保密码登陆失败次数3-6
设置最大密码尝试登陆失败次数3-6,建议为4
搜索MaxAuthTries
MaxAuthTries 4
图片[1]-SSH安全加固建议
2.禁止空密码登陆
设置为no
搜索PermitEmptyPasswords
PermitEmptyPasswords no
图片[2]-SSH安全加固建议
3.设置SSH空闲超时退出时间
将ClientAliveInterval设置为300-900(即客户端存活时间时长5到15分钟),建议设置为600,将ClientAliveCountMax设置为0-3(即客户端存活数0到3个),建议设置为2
搜索ClientAlive
ClientAliveInterval 600
ClientAliveCountMax 2
图片[3]-SSH安全加固建议
4.设置SSH日志级别
设置为INFO
搜索LogLevel
LogLevel INFO
图片[4]-SSH安全加固建议
5.SSHD强制使用V2安全协议
如果配置中有这个属性就设置为2,没有就略过
搜索Protocol
Protocol 2
图片[5]-SSH安全加固建议
6.SSH 禁止root远程登录
设置为no
搜索PermitRootLogin
PermitRootLogin no
图片[6]-SSH安全加固建议
进行设置禁止root远程登录前,请确保有一个非root,且可以使用sudo命令的用户。如果误操作了这一步,将导致root无法无法登陆ssh请使用vnc操作终端,使vi命令将此处修改为yes即可使root可登陆
完成以上配置后,需重启sshd服务或重启服务器,使设置生效!
service sshd restart
SSH密码相关配置
1.1.SSH密码修改最小间隔
打开/etc/login.defs文件
设置为大于等于7
搜索PASS_MIN_DAYS
PASS_MIN_DAYS 7
图片[7]-SSH安全加固建议
1.2.SSH密码失效时间
参数设置为90-180之间,使用非密码登陆方式时,忽略此设置
搜索PASS_MAX_DAYS
PASS_MAX_DAYS 120
图片[8]-SSH安全加固建议
1.3.SSH过期提前警告天数
设置为大于等于7
搜索PASS_WARN_AGE
PASS_WARN_AGE 7
图片[9]-SSH安全加固建议
2.1.SSH密码长度度检查
打开/etc/security/pwquality.conf文件
设置为9-32位
搜索minlen
minlen = 9
图片[10]-SSH安全加固建议-王先生笔记
2.2.SSH密码复杂度检查
(至少包含小写字母、大写字母、数字、特殊字符等4类字符中等3类或4类)设置为3或4
搜索minclass
minclass = 3
图片[11]-SSH安全加固建议
对默认配置文件进行简单的修改,即可提高安全度。与下文配合使用,效果更佳
新闻资讯 更多
- 【建站知识】查询nginx日志状态码大于400的请求并打印整行04-03
- 【建站知识】Python中的logger和handler到底是个什么?04-03
- 【建站知识】python3拉勾网爬虫之(您操作太频繁,请稍后访问)04-03
- 【建站知识】xpath 获取meta里的keywords及description的方法04-03
- 【建站知识】python向上取整以50为界04-03
- 【建站知识】scrapy xpath遇见乱码解决04-03
- 【建站知识】scrapy爬取后中文乱码,解决word转为html 时cp1252编码问题04-03
- 【建站知识】scrapy采集—爬取中文乱码,gb2312转为utf-804-03