ubuntu20.04服务器安全策略设定

琉璃3年前技术文章3278

密码策略

1、经核查,服务器用户身份标识唯一,口令存储在服务器中采用SHA512算法,服务器配置口令复杂度,口令要求8位以上,字母、数字、特殊字符组成,口令180天定期更换。

# SHA512算法查看

cat /etc/login.defs |grep ENCRYPT_METHOD

image.png

#口令180天更换

 cat /etc/login.defs |egrep -v  "#" |grep PASS_MAX_DAYS

image.png

# 密码负载度策略查看,看password那一栏是否引入pam_cracklib.so参数

需要先安装模块

apt-get update&&apt-get install libpam-cracklib

编辑/etc/pam.d/common-password,在password requisite pam_cracklib.so开头的这一行配置minclass(至少包含小写字母、大写字母、数字、特殊字符等4类字符中的3类或4类)设置为3或4,即在行末尾加上参数minclass=3;在password [success=1 default=ignore] pam_unix.so开头的这一行增加配置minlen(密码最小长度)设置为8-32位,建议为10,即在行末尾加上参数minlen=10

image.png


登录超时设定

2、经核查,服务器启用登录失败功能,登录失败3次后用户锁定20分钟,root用户锁定20分钟,启用登录连接超时自动退出功能,超时10分钟自动退出。

vim /etc/pam.d/login

添加:

auth required pam_tally2.so deny=3 unlock_time=1200  even_deny_root root_unlock_time=1200

参数介绍:

1.auth required pam_tally2.so    #是固定的

2.deny   #设置普通用户和root用户连续错误登陆的最大次数,超过最大次数,则锁定该用户

3.unlock_time  #设定普通用户锁定后,多少时间后解锁,单位为秒

4.root_unlock_time  #设定root用户锁定后,多少时间后解锁,单位是秒

image.png

编辑/etc/ssh/sshd_config

10分钟空间超时 退出,最多3个活跃用户登录设置如下:将ClientAliveInterval 设置为300到900,即5-15分钟,将ClientAliveCountMax设置为0-3之间。

10分钟空间超时 退出,最多两个活跃用户登录

ClientAliveInterval 600
ClientAliveCountMax 2


image.png

在/etc/ssh/sshd_config中取消MaxAuthTries注释符号#,设置最大密码尝试失败次数3-6,建议为3:

MaxAuthTries 3

image.png

重启ssh服务

systemctl restart ssh
systemctl enable ssh


telnet服务关闭

3、经核查,服务器通过SSH连接堡垒机后,使用SSH协议登录服务器的方式进行远程管理,且关闭了Telnet和HTTP明文传输协议,可防止鉴别信息在网络传输过程中被窃听。

apt-get remove telnet


image.png

审计日志开启

4、经核查,服务器已开启rsyslogd和auditd进程进行审计,审计内容包括系统内重要安全相关事件,包括auth 认证行为、cron执行计划行为、mail邮件行为等。

service rsyslog status

image.png

apt-get install auditd -y 
systemctl start auditd
systemctl enable  auditd


image.png





相关文章

MySQL Group Replication(一)部署篇

MySQL Group Replication(一)部署篇

MGR 简介Group Replication 是 MySQL 在 2016 年 12 月以 GA 的形式发布,以插件的形式绑定在 MySQL 服务器上。传统的 MySQL 复制功能是异步复制,而 M...

基于Gitlab和Kubernetes的CI/CD

基于Gitlab和Kubernetes的CI/CD

此套CI/CD流程仅依赖gitlab。runner等组件安装在kubernetes集群中,尽量减少其他依赖,便于维护。依赖介绍gitlab runnergitlab runner用来运行我们的作业并将...

MySQL 在线开启 GTID

MySQL 在线开启 GTID

描述生产环境上也会遇到需要开启 GTID ,有什么风险?如何在线开启?本篇 SOP 将介绍。GTID 限制由于基于 GTID 复制依赖于事务,所有开启 GTID 时,有些 MySQL 特性不支持:事务...

helm部署gitlab

helm部署gitlab

官方文档地址添加gitlab的helm仓库helm repo add gitlab https://charts.gitlab.io/�查看已经安装的helm仓库helm repo list安装git...

mysql高可用部署(主主模式)

添加主从同步用户1. 登陆mysqlmysql -uroot -p 2. 创建同步用户CREATE USER 'sync_user'@'%' IDENTIFIED BY '1qaz!QAZ'; 3. ...

Hbase Rowkey设计方法

良好的 rowkey 设计,应当遵循以上四大原则,并且能让数据分散,从而避免热点问题。下面是几种常用的 rowkey 设计方法。1 Salt 加盐这里说的 Salt 加盐方法,是给每一个 rowkey...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。