操作系统加固

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
运维安全中心(堡垒机),免费版 6个月
运维安全中心(堡垒机),企业双擎版|50资产|一周时长
简介: 操作系统加固

1 检查是否配置登陆超时时间设置

1

2

3

编辑vi /etc/profile文件,配置TMOUT将值设置为低于300.

 

TMOUT=300

2 检查是否禁止root用户登录FTP

设置如下将对应配置文件中,设置root,禁止登录的用户列表中添加root用户

1

2

3

4

5

6

1.编辑vi /etc/ftpaccess,将root前的#去掉

2.编辑vi /etc/vsftpd/ftpusers,将root前的#去掉

3.编辑vi /etc/ftpusers,将root前的#去掉

4.编辑vi /etc/vsftpd.ftpusers,将root前的#去掉

5.编辑v i /etc/pam.d/vsftpd,将root前的#去掉

6.编辑vi /etc/pam.d/ftp,将root前的#去掉

3 检查是否使用SSH协议进行远程维护

1

2

3

4

5

6

开启ssh,关闭telnet

 

1.关闭telnet服务[仅供参考,不通的系统会有差别]

  a)vi /etc/xinetd.d/telnet,将disable=no改成disable=yes;

  b)chkconfig telnet off;如果需要设置telnet服务不为开机自启动,使用命令chkconfig -del telnet或者chkconfig --del telnet

2.使用命令server xinetd restart或者/etc/init.d/xinetd restart使更改生效。

4 检查是否配置日志文件安全权限

1

2

3

4

5

6

1.对日志文件进行赋权:chmod 640 /var/log/messages,权限要小于等于640

2.对日志文件进行赋权:chmod 640 /var/log/secure,权限要小于等于640

3.对日志文件进行赋权:chmod 640 /var/log/maillog,权限要小于等于640

4.对日志文件进行赋权:chmod 640 /var/log/cron,权限要小于等于640

5.对日志文件进行赋权:chmod 640 /var/log/spooler,权限要小于等于640

6.对日志文件进行赋权:chmod 640 /var/log/boot.log,权限要小于等于640

5 检查是否启用Syslog日志审计

1

2

3

4

系统可能是syslog或rsyslog,配置存在其中一个即可。

 

1.vi /etc/syslog.conf,修改或配置authpriv.* /var/log/secure

2.vi /etc/rsyslog.conf,修改或配置authpriv.* /var/log/secure

6 检查是否启用远程日志功能

1

2

3

4

系统可能是syslog或rsyslog,配置存在其中一个即可。

 

1.配置文件添加:vi /etc/syslog.conf,加上*.* @10.254.90.58 //注意空白处为tab键

2.配置文件添加:vi /etc/rsyslog.conf,加上*.* @10.254.90.58 //注意空白处为tab键

7 检查是否记录cron行为日志

1

2

3

4

系统可能是syslog或rsyslog,配置存在其中一个即可。

 

1.vi /etc/syslog.conf,修改或配置cron.* /var/log/cron

2.vi /etc/rsyslog.conf,修改或配置cron.* /var/log/cron

8 检查是否配置文件与目录缺省权限控制

1

2

3

4

配置的值可以为:027|037|077|127|137|177|327|337|377|777|067|167|367|767

 

1.vi /etc/login.defs,修改或配置umask 027

2.vi /etc/profile,修改或配置umask 027

9 检测是否限制 root 用户远程登录

1

修改配置:vi /etc/ssh/sshd_config,修改或配置PermitRootLogin no

10 检查是否限制用户su到root

1

2

1.添加配置:vi /etc/pam.d/su,修改或配置auth sufficient pam_rootok.so

2.添加配置:vi /etc/pam.d/su,修改或配置auth required pam_wheel.so group=wheel

11 检查是否配置用户最小授权

1

2

3

1.chmod 644 /etc/passwd 设置文件权限低于等于644

2.chmod 644 /etc/group设置文件权限低于等于644

3.chmod 600 /etc/shadow设置文件权限低于等于600

12 检查是否关闭不必要的服务和端口

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

1.通过chkconfig --list daytime查看对应的服务是否开启,通过chkconfig daytime off 关闭。

 

同理关闭如下服务:

2.daytime-udp

3.time

4.time-udp

5.echo

6.echo-udp

7.discard,

8.discard-udp

9.chargen

10.chargen-udp,

11.ntalk

12.ident

13.printer

14.bootps

15.tftp

16.kshell

17.klogin

18.lpd

19.nfs

20.nfs.lock

21.sendmail

22.ypbind

13 检查是否删除或锁定无关账号

1

2

3

4

5

6

7

8

配置listen,gdm,webservd,nobody,nobody4,noaccess账号的状态,通过命令如下:

 

1.chsh listen -s /sbin/nologin

2.chsh gdm -s /sbin/nologin

3.chsh webservd -s /sbin/nologin

4.chsh nobody -s /sbin/nologin

5.chsh nobody4 -s /sbin/nologin

6.chsh noaccess -s /sbin/nologin

14 检查用户 FTP 访问安全是否配置

1

2

3

4

如果有开启vsftpd则需要配置如下两个文件,内容添加root

 

1.vi /etc/vsftpd.chroot_list配置root

2.vi /etc/vsftpd/chroot_list配置root

15 检测是否删除潜在危险文件

1

2

3

1.全局搜索是否存在:.rhosts文件,如果存在则删除掉。

2.全局搜索是否存在:.netrc文件,如果存在则删除掉。

3.全局搜索是否存在:.hosts.equiv文件,如果存在则删除掉。

16 检查密码过期时间

1

编辑:vi /etc/login.defs设置PASS_MAX_DAYS=90,时间要小于等于90

17 检查密码创建要求是否配置

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

1.vi /etc/pam.d/common-password,修改或配置password requisite pam_cracklib.so retry=3 minlen=8 lcredit=-1 ocredit=-1 ucredit=-1 dcredit=-1 use_authtok

 

匹配正则如下:

 

^password\\s+requisite\\s+pam_cracklib\\.so\\s+.*retry=\\d\\s+.*((minlen=([8-9]|[1-9]\\d)+\\s+.*minclass=[3-4])|(minclass=[3-4]\\s+.*minlen=([8-9]|[1-9]\\d+)))

 

2.vi /etc/pam.d/system-auth,password requisite pam_cracklib.so try_first_pass retry=3 minlen=8 minclass=3

 

匹配正则如下:

 

^(\\s*|\\t*)password\\s+requisite\\s+pam_cracklib\\.so\\s+.*retry=\\d\\s+.*((minlen=([8-9]|[1-9]\\d)+\\s+.*minclass=[3-4])|(minclass=[3-4]\\s+.*minlen=([8-9]|[1-9]\\d+)))

 

3.vi /etc/login.defs,修改或配置PASS_MIN_LEN 8,设置为大于等于8

 

4.vi /etc/pam.d/system-auth,修改或配置pam_passwdqc.so

18 检查是否禁止匿名FTP

1

2

3

1.vi /etc/vsftpd.conf,配置修改anonymous_enable=NO

 

2.vi /etc/vsftpd/vsftd.conf,配置修改anonymous_enable=NO

19.用户密码强度 16位

 

20.禁止普通用户 su 到root 完成

1

echo 'auth required pam_wheel.so use_uid' >> /etc/pam.d/su

21.设置用户登录错误次数

1

2

3

4

5

6

sed -i '/%PAM-1.0/a\auth required pam_tally2.so deny=3 unlock_time=150 even_deny_root root_unlock_time300' /etc/pam.d/sshd

#am_succeed_if模块为某些用户提供例外

#http://www.voidcn.com/article/p-rubmrbyd-bua.html

 /sbin/pam_tally2 -u <username> --reset=0 手动解锁

注意事项

centos7上需要将:/etc/hosts.deny文件中对应的失败IP地址删除

22.锁定重要文件 完成

1

2

3

4

chattr +i /etc/passwd /etc/shadow /etc/group /etc/gshadow

chattr -i /etc/passwd /etc/shadow /etc/group /etc/gshadow

5.设置禁止密码登录,只允许使用key登录 完成

sed -i 's/^PasswordAuthentication yes/PasswordAuthentication no/g' /etc/ssh/sshd_config"

23.删除系统信息 完成

1

rm -f /etc/issue /etc/issue.net /etc/redhat-release /etc/motd /etc/centos-release /etc/system-release


  

 

 

抄自于:https://www.toutiao.com/a6818744680826536451/?tt_from=mobile_qq&utm_campaign=client_share&timestamp=1587700114&app=news_article&utm_source=mobile_qq&utm_medium=toutiao_android&req_id=2020042411483401002103407414069329&group_id=6818744680826536451

相关文章
|
SQL 安全 Oracle
系统加固之Windows操作系统加固(上)
系统加固之Windows操作系统加固
138 0
系统加固之Windows操作系统加固(上)
|
存储 缓存 安全
系统加固之Windows操作系统加固
系统加固之Windows操作系统加固
317 0
系统加固之Windows操作系统加固
|
存储 缓存 安全
系统加固之Windows操作系统加固(下)
系统加固之Windows操作系统加固(下)
293 0
系统加固之Windows操作系统加固(下)
|
安全 Cloud Native Linux
ACK正式支持对基于Alibaba Cloud Linux操作系统的集群进行等保加固
前言      根据国家信息安全部发布的《GB/T22239-2019信息安全技术网络安全等级保护基本要求》,其中对操作系统提出了一些等级保护的要求。同时,越来越多的企业、行业开始全面拥抱云原生,并充分利用云原生基础设施。云原生技术已经无处不在, 作为云原生服务的提供者,阿里云将会持续、高速发展云原生技术。而安全是云原生不可或缺的重要组成部分。Alibaba C
ACK正式支持对基于Alibaba Cloud Linux操作系统的集群进行等保加固
|
1月前
|
安全 Linux 数据安全/隐私保护
Vanilla OS:下一代安全 Linux 发行版
【10月更文挑战第30天】
59 0
Vanilla OS:下一代安全 Linux 发行版
|
1月前
|
NoSQL Linux PHP
如何在不同操作系统上安装 Redis 服务器,包括 Linux 和 Windows 的具体步骤
本文介绍了如何在不同操作系统上安装 Redis 服务器,包括 Linux 和 Windows 的具体步骤。接着,对比了两种常用的 PHP Redis 客户端扩展:PhpRedis 和 Predis,详细说明了它们的安装方法及优缺点。最后,提供了使用 PhpRedis 和 Predis 在 PHP 中连接 Redis 服务器及进行字符串、列表、集合和哈希等数据类型的基本操作示例。
66 4
|
1月前
|
人工智能 安全 Linux
|
5月前
|
安全 Linux 网络安全
部署07--远程连接Linux系统,利用FinalShell可以远程连接到我们的操作系统上
部署07--远程连接Linux系统,利用FinalShell可以远程连接到我们的操作系统上
|
2月前
|
Unix 物联网 大数据
操作系统的演化与比较:从Unix到Linux
本文将探讨操作系统的历史发展,重点关注Unix和Linux两个主要的操作系统分支。通过分析它们的起源、设计哲学、技术特点以及在现代计算中的影响,我们可以更好地理解操作系统在计算机科学中的核心地位及其未来发展趋势。
|
4月前
|
编解码 安全 Linux
基于arm64架构国产操作系统|Linux下的RTMP|RTSP低延时直播播放器开发探究
这段内容讲述了国产操作系统背景下,大牛直播SDK针对国产操作系统与Linux平台发布的RTMP/RTSP直播播放SDK。此SDK支持arm64架构,基于X协议输出视频,采用PulseAudio和Alsa Lib处理音频,具备实时静音、快照、缓冲时间设定等功能,并支持H.265编码格式。此外,提供了示例代码展示如何实现多实例播放器的创建与管理,包括窗口布局调整、事件监听、视频分辨率变化和实时快照回调等关键功能。这一技术实现有助于提高直播服务的稳定性和响应速度,适应国产操作系统在各行业中的应用需求。
143 3