Centos系统安全设置

news2025/1/10 10:14:05

1 设置密码复杂度帐号密码有效期3个月

密码复杂度要求:最小长度8位,至少2位大写字母,1位小写字母,4位数字,1位特殊字符

1)执行备份:

#cp -p /etc/login.defs /etc/login.defs_bak

#cp /etc/pam.d/system-auth /etc/pam.d/system-auth.bak

2)修改策略设置:

(1)密码有效期:

#vi /etc/login.defs

修改PASS_MIN_LEN的值为8

修改PASS_MAX_DAYS的值为90

保存退出

(2)密码复杂度

#vi /etc/pam.d/system-auth

将文件中的下面两行:

password    requisite     pam_cracklib.so try_first_pass retry=3 type=

password    sufficient    pam_unix.so sha512 shadow nullok try_first_pass use_authtok

改为:

password    requisite     pam_cracklib.so try_first_pass retry=5 type= minlen=8 ucredit=-2 lcredit=-1 dcredit=-4 ocredit=-1

password    sufficient    pam_unix.so md5 shadow nullok try_first_pass use_authtok

  • retry=5 定义登录/修改密码失败时,可以重试的次数;
  • type=xxx 当添加/修改密码时,系统给出的缺省提示符是什么,用来修改缺省的密码提示文本。默认是不修改的,如上例。
  • minlen=8 定义用户密码的最小长度为8位
  • ucredit=-2 定义用户密码中最少有2个大写字母 (数字为负数,表示至少有多少个大写字母;数字为正数,表示至多有多少个大写字母;下面同理)
  • lcredit=-1 定义用户密码中最少有1个小写字母
  • dcredit=-4 定义用户密码中最少有4个数字
  • ocredit=-1 定义用户密码中最少有1个特殊字符(除数字、字母之外)

2 登录失败5次锁定帐号5分钟

1)备份

#cp /etc/pam.d/system-auth /etc/pam.d/system-auth.bak2

#cp /etc/pam.d/sshd /etc/pam.d/sshd.bak

2)修改

#vi /etc/pam.d/system-auth

auth        required      pam_tally2.so onerr=fail deny=5 unlock_time=300 root_unlock_time=300

#vi /etc/pam.d/sshd

auth       required     pam_tally2.so onerr=fail deny=5 unlock_time=300 root_unlock_time=300

3 闲时5分钟无操作,自动退出会话

1)执行备份:

#cp -p /etc/profile /etc/profile_bak

2)在/etc/profile文件修改:

#vi /etc/profile

export TMOUT=300

保存退出,刷新

#source /etc/profile

4 不进行历史记录

1) 在/etc/profile文件修改:

#vi /etc/profile

export HISTSIZE=0

保存退出,刷新

#source /etc/profile

 5 日志保存时间设为6个月

1)备份

#cp /etc/logrotate.conf /etc/logrotate.conf.bak

2)修改文件

编辑/etc/logrotate.conf文件

  1. weekly下的rotate 4改为rotate 24,表示6个月;#系统默认日志保存时间为4周
  2. 将指定文件的monthly下的rotate 1改为rotate 6,表示6个月

保存退出,重启日志服务

#service rsyslog restart

6 远程连接白名单

第一种 用户白名单/黑名单

1)备份

#cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak

2)修改/etc/ssh/sshd_config

#vi /etc/ssh/sshd_config

#仅允许特定用户

AllowUsers user1

#仅允许特定用户特定IP

AllowUsers user1@10.10.10.1

#禁止某个用户

DenyUsers user2

保存退出

重启服务

#systemctl restart sshd

第二种 IP白名单

1)备份

cp etc/hosts.deny etc/hosts.deny.bak

cp /etc/hosts.allow /etc/hosts.allow.bak

2)编辑 /etc/hosts.deny

 vi /etc/hosts.deny

添加

sshd:ALL  #先禁止所有IP登录

3)编辑 /etc/hosts.allow

vi /etc/hosts.allow

#添加允许的IP,多个用逗号隔开

sshd:10.133.20.21,10.138.20.22,10.133.48.136:allow

或者下面这种格式

sshd:192.168.0.1/24,192.168.0.,192.168.1.:allow

无需重启ssh

 

7 删除多余帐号

1)检查设备存在非系统内置可登录账号;

2)检查设备不存在常见的test、admin、ceshi等账号;

3)检查设备不存在常见的厂商命名账号,如xjwh、tywh等;

建议,默认系统用户uid中,root为0;系统用户为1-999;普通用户为1000-65535;应保证只有root用户的uid为0,并检查有无其他可疑账户,及时进行删除或禁用。

(1)检查账号

cat /etc/passwd

awk -F':' '{ print $1 $3}' /etc/passwd

(2)删除账号

userdel 用户名  #仅删除用户

userdel -r 用户名  #删除用户和目录

8 删除多余服务

以下服务都需要关闭:

amanda chargen chargen-udp cups cups-lpd daytime daytime-udp echo echo-udp eklogin ekrb5-telnet finger gssftp imap imaps ipop2 ipop3 klogin krb5-telnet kshell ktalk ntalk rexec rlogin rsh rsync talk tcpmux-server telnet tftp time-dgram time-stream uucp;  

(1)#chkconfig --list

(2)禁止非必要服务:#chkconfig [service] off

        开启服务为:#chkconfig [service] on

禁用135,137,138,139,21,23,25,445,3389,6000,177,514等端口

(1)查看端口

netstat -pantu

(2)查看端口对应服务

lsof -i :22

cat /etc/services | grep -w 22

(3)chkconfig --list |grep ssh (过滤出ssh服务)

(4)关闭服务

service sshd stop

systemctl stop sshd

并且设置此服务为开机不启动:

chkconfig sshd off

9 开启关键文件审计

1)查看和开启auditd

#service auditd status

#service auditd start

2)查看enable 是否为1

#auditctl -s

所有的审计日志会记录在/var/log/audit/audit.log文件中,配置信息在/etc/audit/auditd.conf

3)审计指定文件

(1)临时添加规则

auditctl -w path -p permission -k key_name

  1. path为需要审计的文件或目录
  2. 权限可以是r,w,x,a(r为读,w为写,x为执行,a代表文件或目录的属性发生变化)
  3. key_name为可选项,方便识别哪些规则生成特定的日志项
    1. 设置规则所有对passwd文件的写、属性修改操作都会被记录审计日志
    2. # auditctl -w /etc/passwd -p wa -k passwd_change
    3. 设置规则,监控/etc/selinux目录
    4. # auditctl -w /etc/selinux/ -p wa -k selinux_change
    5. 设置规则,监控fdisk程序
    6. # auditctl -w /usr/sbin/fdisk -p x -k disk_partition

(2)永久添加规则

备份文件

#cp /etc/audit/audit.rules /etc/audit/audit.rules.bak

(3)编辑文件

# vim /etc/audit/rules.d/audit.rules

-w /etc/passwd -p wa -k passwd_changes

-w /usr/sbin/fdisk -p x -k partition_disks

(4)重启服务

service auditd restart

auditctl -l 查看定义的规则

10 设置三权分立帐号

管理员帐号,安全员帐号,审计员帐号

1)管理员帐号

(1)添加用户

useradd sysadmin

passwd sysadmin

(2)创建组

groupadd sysgroup

usermod -G sysgroup sysadmin

(3)授予权限

chown -R sysadmin:sysgroup /

2)安全员帐号

useradd secadmin

passwd secadmin

chown -R secadmin:secadmin /etc

chmod 700 /etc

3)审计员帐号

useradd auditadmin

passwd auditadmin

vi /etc/sudoers后编辑插入以下内容:

auditadmin     ALL = (root) NOPASSWD: /usr/bin/cat , /usr/bin/less , /usr/bin/more , /usr/bin/tail , /usr/bin/head

chown -R auditadmin:auditadmin /var/log

chmod 700 /var/log

chmod 700 /var/log

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1389929.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

zotero使用gpt

zotero使用gpt 下载 zotero下载:https://www.zotero.org/download/ 插件下载:https://github.com/MuiseDestiny/zotero-gpt?tabreadme-ov-file 插件安装 zotero中选择 工具->添加组件 选择右上角的齿轮,选择Install add-on from fil…

c++继承和派生(1)

目录 1.含义:从不同层面看的,同一种意思 2. 继承的使用场景 1. 共同之处 2. 迭代更新 3. 代码重构 3. 继承的基本语法 4. 继承了什么 1. 查看占用内存大小 2. 使用vs自带的功能查看类的内存分布 布局: 3. 结果 5. pr…

软件测试|使用Python提取出语句中的人名

简介 在自然语言处理(NLP)中,提取文本中的人名是一项常见的任务。Python作为一种流行的编程语言,拥有强大的NLP库和工具,使我们能够轻松地进行这项任务。在本文中,我们将使用Python示例来演示如何提取文本…

Linux第23步_安装windows下的STM32CubeProgrammer软件和安装 DFU驱动程序

STM32CubeProgrammer软件是通过USB3.0接口烧写系统软件。 STM32CubeProgrammer需要java运行环境,因此需要安装JAVA软件。 Java 运行环境版本必须是 V1.7 及以上,一定要用 64位的,和win系统一致,否则使用 STM32CubeProgrammer烧…

深入解析JavaScript中的函数绑定和命名函数表达式

🧑‍🎓 个人主页:《爱蹦跶的大A阿》 🔥当前正在更新专栏:《VUE》 、《JavaScript保姆级教程》、《krpano》、《krpano中文文档》 ​ ​ ✨ 前言 函数是JavaScript中最重要的组成部分之一。但是函数的this绑定和作用…

Power Query 中常用的数据清洗、转换操作

(一)数据筛选、保留、删除、去重 1、数据筛选 操作步骤 选中列——点击列名右侧箭头——进行筛选 可选操作 勾选文本筛选器:等于/不等于、开头是/开头不是、结尾是/结尾不是、包含/不包含数字筛选器:等于/不等于、大于/大于等于…

harbor https

harbor https部署 准备docker-compose安装https 证书harbor安装访问harbor推镜像到harbor 准备 192.168.112.99,harbor,centos7 192.168.112.3,测试机,centos7 docker版本:docker-ce 20.10.16(部署参考&a…

主流浏览器设置代理IP之搜狗浏览器

给浏览器设置代理IP是目前代理IP的主流使用场景之一,接下来小编就手把手教你如何对搜狗浏览器进行代理IP设置 注:本次使用IP来源于携趣代理平台 搜狗浏览器内设置IP代理 1、首先需要进入浏览器【设置】 2.点击【代理设置】选择【代理服务器设置】然后进…

ITE IT6801FNBX HDMI接收器 芯片

一、物料概述 IT6801FN是一款单端口HDMI接收器,可在HDMI1.4和MHL2.1双模式下工作,完全兼容MHL2.1、HDMI 1.4a、HDMI 1.4a3D和HDCP1.4,还可向后兼容DVI 1.0规格。IT6801FN具有深彩色功能(高达36位),可确保接…

腾讯开源AI工具PhotoMaker,无需训练模型就能保持脸部一致随意换装。

腾讯开源AI工具PhotoMaker,无需训练模型就能保持脸部一致随意换装。 最近,AI文本到图像生成领域取得了显著进展,然而,现有的个性化生成方法已经无法同时满足用户的需求,这次腾讯发布了PhotoMaker框架,可以在…

IaC基础设施即代码:Terraform 通过后端使用 alicloud的OSS 实现资源管理

目录 一、实验 1.环境 2.Windows创建Terraform后端项目 3.Windows实例化Terraform后端项目 3.Windows给Terraform项目添加alicloud阿里云OSS (实现代码与资源分离) 4.Windows给Terraform项目添加封装的模块 5.Terraform通过后端使用 alicloud阿里…

价值7500的在线授权网站源码支持IP+域名+双向授权全开源

PHP授权验证更新系统完整版,一键更新系统,一键卡密生成自助授权功能,域名ip双重验证功能等等 修复盗版检测,确保实时查看盗版 修复在线加密系统,一键加密 授权系统几乎所有的程序都能整合使用,包括您的app和计算机程序…

el-table右固定最后一列显示不全或者是倒数第二列无边框线

问题图片: 解决方式1: >>>.el-table__row td:not(.is-hidden):last-child { border-left:1px solid #EBEEF5; } >>>.el-table__header th:not(.is-hidden):last-child{ border-left:1px solid #EBEEF5; } >>>.el-table__head…

文件压缩完还是过大怎么办?这些参数你设置了吗?

不同的压缩算法对不同类型的文件可能有不同的效果。尝试使用不同的压缩算法、压缩模式、调整压缩工具的参数或者设置输出的文件格式等方法解决问题。下面以嗨格式压缩大师作为操作示范。 方法一:对文件进行分类压缩 将文件按照视频、图片、pdf、word、PPT分类压缩…

uni-app的项目创建和环境搭建

uni-app 是一个使用 Vue.js 开发所有前端应用的框架,开发者编写一套代码,可发布到iOS、Android、Web(响应式)、以及各种小程序(微信/支付宝/百度/头条/飞书/QQ/快手/钉钉/淘宝)、快应用等多个平台。 第一步…

Linux内核架构和工作原理详解(二)

Linux内核体系结构简析简析 图1 Linux系统层次结构 最上面是用户(或应用程序)空间。这是用户应用程序执行的地方。用户空间之下是内核空间,Linux 内核正是位于这里。GNU C Library (glibc)也在这里。它提供了连接内核…

游戏素材永不缺,免费在线AI工具Scenario功能齐全,简单易用

Scenario是一个在线的AI驱动的工具,主要用于游戏艺术创作。它提供了一套全面的功能,旨在帮助游戏开发者创建与其独特风格和艺术方向相符的独特、高质量的游戏艺术。Scenario的突出特点之一是它的微调能力,允许用户根据独特的风格和艺术方向训…

Linux 内核被冬季风暴 “封印“

Linus Torvalds在内核邮件列表上宣布,由于他所在的美国俄勒冈州波特兰地区受到严重冬季风暴的影响,导致网络和电力中断。波特兰及其周边地区气温急降至零下 -10C,因此他不得不临时中断对Linux 6.8内核的合并窗口操作。 Linus于1月7日发布了Li…

最优订单执行算法相关论文介绍

数量技术宅团队在CSDN学院推出了量化投资系列课程 欢迎有兴趣系统学习量化投资的同学,点击下方链接报名: 量化投资速成营(入门课程) Python股票量化投资 Python期货量化投资 Python数字货币量化投资 C语言CTP期货交易系统开…

Resemble Enhance音频失真损坏修复AI工具:一个开源语音超分辨率AI模型

Resemble Enhance是一款强大的音频处理工具,可以将嘈杂的录音转化为清晰而有力的声音,为用户提供更优质的听觉体验。这个工具不仅可以有效去除录音中的各种噪声和杂音,还能够恢复音频失真并扩展音频带宽,使原本的声音听起来更加清…