1、方便将服务器安全情况通过检测脚本直接输出txt文件,同时便于检查出安全隐患。

2、缩短安全检查和防护时间,提高安全检查和防护效率

github地址 https://github.com/xiaoyunjie/Shell_Script.git

一、Linux检测脚本

1.1、文件

压缩包包含2个文件:

CentOS_Check_Script.sh : 脚本文件

README.txt : 说明文件

1.2、操作说明

执行CentOS_Check_Script.sh脚本文件进行检查,每次体检生成文件都是唯一的,命令格式如下:

sudo sh CentOS_Check_Script.sh | tee check_`date +%Y%m%d_%H%M%S`.txt

1.3、脚本简介

按三级等保要求,编写的一键检查脚本,此脚本只适合linux分支中的redhat、centos,运行脚本将结果输出到自定义的文件中,脚本结果需要管理员人为检查,脚本结果中有相应提示检测内容是否需要整改。

1.4、脚本检测内容

警告:本脚本只是一个检查的操作,未对服务器做任何修改,管理员可以根据此报告进行相应的安全整改

管理员需要根据检测报告进行安全加固,需要加固的条目都会标记 [需调整]

二、Linux加固脚本

2.1、脚本文件

CentOS_Protective_Script.sh : 脚本文件

README.txt : 说明文件

2.2、脚本操作说明

执行CentOS_Protective_Script.sh脚本文件进行加固,命令格式如下

sudo sh CentOS_Protective_Script.sh

执行完成后,请按脚本提示重启相应服务

如果ostype是unknow,请不要继续执行

2.3、脚本简介

一键加固脚本为linux系统提供基础安全加固,包括以下几块内容加固:

口令复杂度:密码修改重试3次机会,新密码与老密码必须有3字符不同,最小密码长度12个字符,包含大写字符至少一个,小写字母至少一个,数字至少一个,特殊字符至少一个。

新增管理员账号:不直接使用root账号,新增管理员eproot账号,用于命令执行,远程登入。

远程登入账户设置:限制root账号远程登入

账号登入安全设置:配置系统历史命令操作记录和定时帐户自动登出时间

远程登入端口设置:修改默认SSH端口

账户登入失败处理:限制登入失败三次,普通账号锁定5分钟,root账号锁定5分钟

系统配置文件备份还原:脚本在首次执行时会将系统配置保存于脚本所在目录下的backup目录下,以便后续需要恢复配置时使用。再次运行脚本时,将不会再进行备份,除非原备份目录被删除。

2.3.1、简介

首次运行脚本,会检测当前系统类型,以及备份重要系统配置文件,包括system-auth、authorized_keys、sshd、sudoers、sshd_config、profile、su。通过选择加固编号进行相应的内容进行加固,也可以选择编号1,将所有内容都进行加固。

2.3.2、密码复杂度设置[Set Password Complexity Requirements ]

选择编号2,脚本会自动进行密码复杂度配置,配置内容为:密码修改重试3次机会,新密码与老密码必须有3字符不同,最小密码长度12个字符,包含大写字符至少一个,小写字母至少一个,数字至少一个,特殊字符至少一个。

配置成功,会提示[Password complexity set success],失败会提示[Password complexity set failed],重复执行脚本选择此编号,脚本每次都会配置,不会提示已配置过。

2.3.3、新增管理员账号[Create eproot account]

禁止使用root登入系统,需要创建eproot账号,授予管理员权限,并且保证运行命令时无需输入root密码。

选择编号3,会提示是否创建eproot账号,确认后,请输入密码,回车,脚本会自行创建eproot账号,并且授予管理员权限。重复执行脚本,选择编号3,如果已经创建过eproot账号,会列出创建的信息,并提示已创建。

2.3.4、远程登入账户设置[Set Remote Login Configuration(SSH)]

选择编号‘4’进行SSH远程登录相关安全配置,脚本会自动配置SSH协议为2,然后提示是否禁止root账号远程登入,并确定已经有其余可远程登入的账号。输入y,确认后回车关闭root远程登入。

重复执行脚本,选择编号4,会提示已经禁止root远程。

2.3.5、账户登入安全设置[Set Shell History and TMOUT]

选择编号5账户登入安全设置,输入y回车,设置history命令保存行数以及打印history命令时间。

设置shell环境超时时间,选择区间为300~600秒,如果不输入任何值,脚本默认设置为600秒。

重复执行脚本,选择编号5,会重新设置history和TMOUT

2.3.6、远程登入端口设置[Set SSH Port]

选择编号6进行SSH服务端口配置,输入y,回车输入端口号,脚本会根据用户输入的端口号,配置更改相应的端口

脚本会对输入的端口进行判断是否满足要求,如果满足要求会进行设置,如果不满足要求脚本会给出提示,并要求用户重新输入确认更改端口,并输入端口号。

端口号规则: 输入端口号区间 1024

重复执行脚本,选择编号6,修改ssh端口,无法通过脚本改回端口22。

2.3.7、账户登入失败处理[Set Logon failure handling]

执行脚本,选择编号7,设置账户登入失败处理,输入y确认回车,脚本会自动进行配置。

登入失败处理内容:登入失败三次后账号会被限制登入,普通账号锁定5分钟,root账号锁定5分钟,超过限制时间,才可以重新登入。

#使用一下命令查看指定账户的失败次数

pam_tally2 --user=root

Login Failures Latest failure From

root 4 03/20/19 16:57:09 192.168.149.9

#以下命令可以立马重置账户的失败次数,解除限制(前提是已经进入系统)

pam_tally2 --user=root --reset

2.3.8、配置备份与恢复[Recover Configuration]

执行脚本,选择编号8,脚本会将保存于所在backup目录下的系统配置还原。

无法还原以下配置

新增的eproot账户不删除,防止误删。(eproot权限为修改前的状态)

2.3.9、全部加固[ALL protective]

选择标号1,脚本会按[2-7]顺序自动执行脚本加固,部分参数需要手动输入。

linux 加固检测脚本,Linux系统检测和防护脚本相关推荐

  1. android内存检测方法,Android_Android系统检测程序内存占用各种方法,1.检查系统总内存 复制代码 - phpStudy...

    Android系统检测程序内存占用各种方法 1.检查系统总内存 liuhx@uc ~ $ adb shell cat /proc/meminfo MemTotal:         840868 kB ...

  2. win7 系统 内存测试软件,win7怎么检测内存 win7系统检测内存的三种方法

    win7系统检测内存的方法有很多种,我们都知道内存是电脑中十分重要的硬件,内存越大,电脑运行速度越快.当然内存也会发生错误,和磁盘坏道一样,内存有问题时容易导致系统崩溃,数据丢失,那么 Win7 64 ...

  3. linux python cpu温度,linux-raspbian系统下编写python脚本显示树莓派的当前cpu温度、使用率、内存和硬盘信息...

    描述:之前查看树莓派的温度一直都需要输命令: cd /sys/class/thermal/thermal_zone0 然后cat temp 才能给出数据比如45084,给出的数据需要除以1000才是实 ...

  4. 系统检测效果html,系统检测(MonitorTest)

    MonitorTest是一款实用性非常强的系统测试软件,MonitorTest(显示器性能测试软件)最新版界面简单,功能强大,且占用内存小,保证平稳运行.用户如果使用MonitorTest(显示器性能 ...

  5. Linux 系统检测和加固脚本

    获取脚本(建议使用前找测试机器验证后在线上环境使用) git clone https://github.com/duanshuaixing/tools.git cd tools/shell/Shell ...

  6. Linux系统检测工具

    通过检测系统,可以获取一些基准数据,进行分析,根据不同的业务特点系统不同组件的压力,可以有cpu密集型,内存密集型,网络吞吐密集性型,io密集型 一  系统检测工具 Free,Top,ps,Vmsta ...

  7. Linux应急处置/信息搜集/漏洞检测工具---附脚本下载

    Linux应急处置/信息搜集/漏洞检测工具,支持基础配置/网络流量/任务计划/环境变量/用户信息/Services/bash/恶意文件/内核Rootkit/SSH/Webshell/挖矿文件/挖矿进程 ...

  8. Linux脚本实战之检测网卡流量

    Linux脚本实战之检测网卡流量 一.脚本要求 二.脚本内容 三.运行脚本 一.脚本要求 1.检测网卡流量,并按规定格式记录在日志中,输出到/data/net.log/目录中以执行脚本时间命令的文件中 ...

  9. Linux系统检测命令有哪些

    2019独角兽企业重金招聘Python工程师标准>>> Linux系统检测命令有哪些 | 浏览:44 | 更新:2015-02-02 10:16 | 标签:linux top:一个命 ...

最新文章

  1. C primer plus 练习题 第三章
  2. 使用selector修改TextView中字体的颜色
  3. Docker(基础理解)
  4. iOS开发之线程间的MachPort通信与子线程中的Notification转发
  5. php开发是可视的吗,javascript,html_Jquery判断页面元素是否在浏览器的可视区域内,javascript,html,css,html5 - phpStudy...
  6. BugkuCTF-MISC题闪的好快
  7. MessageBox消息框 1126
  8. 一文读懂Python 装饰器函数
  9. 笨办法学python4_笨办法学Python(四十)
  10. 软件架构--《企业IT架构转型之道》笔记
  11. 关于Retinex理论的一些理解
  12. 离散傅里叶变换公式推导
  13. matplotlib柱状图给指定的柱换颜色_matplotlib绘图基本操作amp;美化教程
  14. 【物联网】阿里云iot物联网平台监控设备 在线离线状态 解决方案
  15. cps评分和tps评分_一文总结:PD-1/PD-L1免疫检查点抑制剂和TPS、CPS、IPS
  16. 分享几个写英文论文的网页和软件
  17. Java多线程--概述-转自Kyrie lrving
  18. [悦读] 让听得见炮声的人来决策——《赋能》读书笔记
  19. Uva10616+10820
  20. java实现整数翻转

热门文章

  1. 弘辽科技:淘宝狂欢大促怎么取消?要怎么做活动?
  2. 一个前端搞淘宝模板那些事
  3. C语言基础入门——打印“hello word“
  4. 18. BootStrap 卡片组件Cards (2)
  5. <Notes>城市复杂环境的视觉定位与建图(报告人:上交邹丹平教授)
  6. 港大计算机学院副院长,中科院许榕生教授、香港大学邹锦沛博士等一行访问我校...
  7. 保研夏令营、考研复试、出国时个人陈述模板与撰写注意事项
  8. BT.656、PAL、NTSC标准并行数据结构
  9. java代码编写的文本特征提取_文本特征词提取算法
  10. Autodesk的照片建模云服务—Autodesk ReCap 360 photo 的测试数据