系统加固之Linux安全加固

简介: 系统加固之Linux安全加固

640.png

Linux系统基本操作

文件结构图及关键文件功能介绍

Linux文件结构

640.png

Linux文件结构图

640.png

二级目录

目录 功能
/bin 放置的是在单人维护模式下能被操作的指令,在/bin底下的指令可以被root与一般账号所使用
/boot 这个目录只要在放置开机会使用到的文件,包括 Linux核心文件以及开机选单与开机所需配置的文件等等
/dev 在Linux系统上,任何装置与接口设备都是以文件的形态存在于这个目录当中的
/etc

系统主要的配置文件几乎都放在这个目录内,例如人员账号密码各种服务的启动档,系统变量配置等

/home 这个是系统默认的用户家目录(home directory)
/lib /lib放置的则是在开机时会用到的函式库,以及在/lib或/sbin底下的指令会呼叫的函式库
/media /media底下放置的是可以移出的装置,包括软盘、光盘、DVD等等装置都挂载于此
/opt 给第三方协议软件放置的目录
/root 系统管理员(root)的家目录
/sbin 放置/sbin底下的为开机过程中所需要的,里面包括了开机、修复、还原系统所需的指令。
/srv srv可视为[service]的缩写,是一些网络服务启动之后,这些服务所需要取用的数据目录
/tmp 这是让一般使用者或是正在执行的程序暂时放置文件的地方

文件

640.jpg

账号和权限

系统用户

超级管理员        uid=0

系统默认用户     系统程序使用,从不登录

新建普通用户     uid大于500

640.jpg

/etc/passwd

640.jpg

/etc/shadow

640.jpg

用户管理

640.png

权限管理

解析文件权限

640.jpg

文件系统安全

查看权限:ls -l

640.png

640.png

修改权限:

chmod  

640.png640.png

      chown

640.png

640.png

       chgrp

640.png

640.png

设置合理的初始文件权限

很奇妙的UMASK:

640.png

umask值为0022所对应的默认文件和文件夹创建的缺省权限分别为644和755

文件夹其权限规则为:777-022-755

文件其权限规则为:777-111-022=644(因为文件默认没有执行权限)

修改UMASK值:

1、直接在命令行下 umask xxx(重启后消失)

2、修改/etc/profile中设定的umask值

640.png640.png

系统加固

锁定系统中多余的自建账号

640.png

检查shadow中空口令账号

检查方法:

640.png

640.png

加固方法:

使用命令passwd -l  <用户名> 锁定不必要的账号

使用命令passwd -u <用户名>解锁需要恢复的账号

使用命令passwd <用户名> 为用户设置密码

设置系统密码策略

执行命令查看密码策略设置

640.png

加固方法:

640.png禁用root之外的超级用户

检测方法:

awk -F ":" '($3=="0"){print $1}' /etc/passwd

加固方法:

            passwd  -l  <用户名>

640.png

限制能够su为root的用户

查看是否有auth  required /libsecurity/pam_whell.so这样的配置条目

640.png

加固方法:

640.png

重要文件加上不可改变属性

把重要文件加上不可改变属性

640.png

Umask安全

640.png640.png

SSH安全:

禁止root用户进行远程登陆

检查方法:

640.png

加固方法:

640.png

640.png

更改服务端口:

640.png

640.png

屏蔽SSH登陆banner信息

640.png

仅允许SSH协议版本2

640.png

640.png

防止误使用Ctrl+Alt+Del重启系统

640.png

加固方法:

640.png

设置账号锁定登录失败锁定次数、锁定时间

检查方法:

640.png

        加固方法:

640.png

       解锁用户:640.png

640.png

修改账号TMOUT值,设置自动注销时间

检查方法:

cat /etc/profile | grep TMOUT

加固方法:

vim /etc/profile

增加

TMOUT=600 无操作600秒后自动退出

640.png

设置BASH保留历史命令的条目

检查方法:

cat /etc/profile | grep HISTSIZE

加固方法:

vim /etc/profile

修改HISTSIZE=5即保留最新执行的5条命令

640.png

设置注销时删除命令记录

检查方法:

cat /etc/skel/.bash_logout    增加如下行

rm -f $HOME/.bash_history

这样,系统中的所有用户注销时都会删除其命令记录,如果只需要针对某个特定用户,,如root用户进行设置,则可只在该用户的主目录下修改/$HOME/.bash_history文件增加相同的一行即可。

设置系统日志策略配置文件

日志的主要用途是 系统审计 、监测追踪和分析。为了保证 Linux 系 统正常运行、准确解决遇到的各种样统问题,认真地读取日志文件是管理员的一项非常重要任务。

UNIX/ Linux 采用了syslog 工具来实现此功能,如果配置正确的 话,所有在主机上发生的事情都会被记录下来不管是好还是坏的 。

检查方法:

cat /etc/profile | grep HISTSIZE

640.png640.png

确定syslog服务是否启用

查看syslogd的配置,并确认日志文件是否存在

640.png

阻止系统响应任何从外部/内部来的ping请求

加固方法:

echo 1 >/proc/sys/net/ipv4/icmp_echo_ignore_all

640.png

相关文章
|
10天前
|
消息中间件 安全 Kafka
Apache Kafka安全加固指南:保护你的消息传递系统
【10月更文挑战第24天】在现代企业环境中,数据的安全性和隐私保护至关重要。Apache Kafka作为一款广泛使用的分布式流处理平台,其安全性直接影响着业务的稳定性和用户数据的安全。作为一名资深的Kafka使用者,我深知加强Kafka安全性的重要性。本文将从个人角度出发,分享我在实践中积累的经验,帮助读者了解如何有效地保护Kafka消息传递系统的安全性。
37 7
|
4天前
|
Linux 应用服务中间件 Shell
linux系统服务二!
本文详细介绍了Linux系统的启动流程,包括CentOS 7的具体启动步骤,从BIOS自检到加载内核、启动systemd程序等。同时,文章还对比了CentOS 6和CentOS 7的启动流程,分析了启动过程中的耗时情况。接着,文章讲解了Linux的运行级别及其管理命令,systemd的基本概念、优势及常用命令,并提供了自定义systemd启动文件的示例。最后,文章介绍了单用户模式和救援模式的使用方法,包括如何找回忘记的密码和修复启动故障。
21 5
linux系统服务二!
|
4天前
|
Linux 应用服务中间件 Shell
linux系统服务!!!
本文详细介绍了Linux系统(以CentOS7为例)的启动流程,包括BIOS自检、读取MBR信息、加载Grub菜单、加载内核及驱动程序、启动systemd程序加载必要文件等五个主要步骤。同时,文章还对比了CentOS6和CentOS7的启动流程图,并分析了启动流程的耗时。此外,文中还讲解了Linux的运行级别、systemd的基本概念及其优势,以及如何使用systemd管理服务。最后,文章提供了单用户模式和救援模式的实战案例,帮助读者理解如何在系统启动出现问题时进行修复。
21 3
linux系统服务!!!
|
12天前
|
Web App开发 搜索推荐 Unix
Linux系统之MobaXterm远程连接centos的GNOME桌面环境
【10月更文挑战第21天】Linux系统之MobaXterm远程连接centos的GNOME桌面环境
112 4
Linux系统之MobaXterm远程连接centos的GNOME桌面环境
|
13天前
|
运维 监控 Linux
Linux系统之部署Linux管理面板1Panel
【10月更文挑战第20天】Linux系统之部署Linux管理面板1Panel
62 3
Linux系统之部署Linux管理面板1Panel
|
4天前
|
网络协议 Linux
linux系统重要文件目录
本文介绍了Linux系统中的重要目录及其历史背景,包括根目录、/usr、/etc、/var/log和/proc等目录的结构和功能。其中,/etc目录下包含了许多关键配置文件,如网卡配置、DNS解析、主机名设置等。文章还详细解释了各目录和文件的作用,帮助读者更好地理解和管理Linux系统。
18 2
|
6天前
|
Ubuntu Linux Shell
Linux 系统中的代码类型或脚本类型内容
在 Linux 系统中,代码类型多样,包括 Shell 脚本、配置文件、网络配置、命令行工具和 Cron 定时任务。这些代码类型广泛应用于系统管理、自动化操作、网络配置和定期任务,掌握它们能显著提高系统管理和开发的效率。
|
9天前
|
关系型数据库 MySQL Linux
Linux系统如何设置自启动服务在MySQL数据库启动后执行?
【10月更文挑战第25天】Linux系统如何设置自启动服务在MySQL数据库启动后执行?
50 3
|
10天前
|
运维 监控 Shell
深入理解Linux系统下的Shell脚本编程
【10月更文挑战第24天】本文将深入浅出地介绍Linux系统中Shell脚本的基础知识和实用技巧,帮助读者从零开始学习编写Shell脚本。通过本文的学习,你将能够掌握Shell脚本的基本语法、变量使用、流程控制以及函数定义等核心概念,并学会如何将这些知识应用于实际问题解决中。文章还将展示几个实用的Shell脚本例子,以加深对知识点的理解和应用。无论你是运维人员还是软件开发者,这篇文章都将为你提供强大的Linux自动化工具。
|
12天前
|
存储 安全 关系型数据库
Linux系统在服务器领域的应用与优势###
本文深入探讨了Linux操作系统在服务器领域的广泛应用及其显著优势。通过分析其开源性、安全性、稳定性和高效性,揭示了为何Linux成为众多企业和开发者的首选服务器操作系统。文章还列举了Linux在服务器管理、性能优化和社区支持等方面的具体优势,为读者提供了全面而深入的理解。 ###