- 工信部备案号 滇ICP备05000110号-1
- 滇公安备案 滇53010302000111
- 增值电信业务经营许可证 B1.B2-20181647、滇B1.B2-20190004
- 云南互联网协会理事单位
- 安全联盟认证网站身份V标记
- 域名注册服务机构许可:滇D3-20230001
- 代理域名注册服务机构:新网数码
昨天为大家详解了 Linux 系统安全配置的基础方案,涵盖账号管理、密码策略和访问控制等核心模块。今天,蓝队云将继续深入,聚焦日志审计、系统文件管理、网络服务优化等进阶内容,帮助大家构建更全面的安全防护体系!
五、日志审计
(一)Cron任务授权
1、安全基线说明
只允许指定授权用户启用cron/at任务
2、操作指南
(1)参考配置操作
只允许指定授权用户启用cron/at任务,删除cron.deny、at.deny文件,创建cron.allow、at.allow文件。
3、检查办法
(1)判定条件
执行:ls -l /etc/cron.allow
ls -l /etc/at.allow
查看cron.allow、 at.allow文件的授权情况
(二)对syslog登录事件记录
1、安全基线说明
记录认证、授权使用的相关信息。
2、操作指南
(1)参考配置操作
#vim /etc/rsyslog.conf
配置authpriv.* /var/log/secure
(2)补充说明
将 authpirv 设备的任何级别的信息记录到/var/log/secure 文件中,这主要是一些和认证、权限使用相关的信息。
3、检查办法
(1)判定条件
/etc/rsyslog.conf 文件中配置有authpriv.* /var/log/secure
(三)对rsyslog.conf配置审核
1、安全基线说明
设置记录什么类型的日志信息。
2、操作指南
(1)参考配置操作
执行:
vim /etc/rsyslog.conf,
设置了下列项:
kern.warning;*.err;authpriv.none\\\\t@loghost *.info;mail.none;authpriv.none;cron.none\\\\t@loghost *.emerg\\\\t@loghost local7.*\\\\t@loghost
3、检查办法
(1)判定条件
/etc/rsyslog.conf文件中必须设置日志记录信息。
(四)系统日志读写权限
1、安全基线说明
系统日志文件由 syslog 创立并且不可被其它用户修改;其它的系统日志文件不是全局可写,保护系统日志避免被篡改、覆盖等。
2、操作指南
(1)参考配置操作
查看如下等日志的访问权限,保证日志文件不能非授权访问。
#ls –l 查看下列日志文件权限
/var/log/messages 、
/var/log/secure 、
/var/log/maillog 、
/var/log/cron、
/var/log/spooler、
/var/log/boot/log
3、检查办法
(1)判定条件
非授权不能访问日志文件。
(五)history命令(可选)
1、安全基线说明
为了方便审计,设置系统在记录历史命令的同时,记录时间和用户。
2、操作指南
(1)参考配置操作
在/etc/profile中添加如下变量即可:
export HISTTIMEFORMAT="%Y-%m-%d %H:%M:%S `whoami` "
然后运行source /etc/profile命令即可,注意引号中的空格。
source /etc/profile
为防止history记录被删除可以在/etc/profile文件中添加如下变量:
export PROMPT_COMMAND=' history -a >(tee -a ~/.bash_history | logger -t "$USER[$$] $SSH_CONNECTION") '
(2)补充操作说明
history命令的用法及参数usage:
history [-c] [-d offset] [n] or history -anrw [filename] or history -ps arg [arg...]
参数:
n :数字,要列出最近的若干命令列表
-c :将目前的 shell 中的所有 history 内容全部消除
-a :将目前新增的 history 指令新增入 histfiles 中,若没有加 histfiles ,则预设写入 ~/.bash_history
-r :将 histfiles 的内容读到目前这个 shell 的 history 记忆中
-w :将目前的 history 记忆内容写入 histfiles
3、检查办法
(1)判定条件
执行history命令,查看历史命令是否包含时间和用户。
(六)远程日志服务器配置(可选)
1、安全基线说明
配置远程日志功能,将需要重点关注的日志内容传输到日志服务器进行备份。
2、操作指南
(1)参考配置操作
修改配置文件vi /etc/rsyslog.conf,
加上这一行:*.* @192.168.100.1
可以将"*.*"替换为你实际需要的日志信息。比如:kern.* / mail.* 等等;可以将此处192.168.100.1 替换为实际的IP 或域名。
重新启动syslog 服务,执行下列命令:
services syslogd restart
(2)补充操作说明
*.*和@之间为一个Tab。
3、检查办法
(1)判定条件
cat /etc/rsyslog.conf 查看是否有对应配置;
六、系统文件管理
(一)系统磁盘状态
1、安全基线说明
查看磁盘状态,保证有足够的磁盘可用空间。
2、操作指南
(1)参考配置操作
执行:df -h,检查当前系统文件配置情况,保证有足够的磁盘可用空间;
(2)补充操作说明
处理空间不足情况。
3、检查办法
(1)判定条件
保证有足够的磁盘可用空间;
(二)重要目录和文件的权限设置(可选)
1、安全基线说明
设置重要目录和文件的权限,禁止非授权访问。
2、操作指南
(1)参考配置操作
执行以下命令检查目录和文件的权限设置情况:
ls -l /etc/
安全建议
根据安全需要,配置某些关键目录其所需的最小权限;重点要求password 配置文件、shadow 文件、group 文件权限。
(2)补充操作说明
/etc/passwd 所有用户都可读,root 用户可写 –rw-r—r—
配置命令:chmod 644 /etc/passwd
/etc/shadow 只有root 可读 –r--------
配置命令:chmod 600 /etc/shadow;
/etc/group 必须所有用户都可读,root 用户可写 –rw-r—r—
配置命令:chmod 644 /etc/group;
3、检查办法
(1)判定条件
查看关键目录的权限#ls -l /etc/
(三)删除未授权的suid/sgid文件
1、安全基线说明
删除未授权的suid/sgid文件。
2、操作指南
(1)参考配置操作
用下面的命令查找系统中所有的SUID和SGID文件,执行:
for PART in `grep -v ^# /etc/fstab | awk '($6 == "0") {print $2 }'`;dofind $PART -xdev -type f \\\\( -perm -04000 -o -perm -02000 \\\\) -print done
若存在未授权文件则删除文件或给该文件授权。
(2)补充操作说明
系统中suid和sgid文件很有可能成为安全隐患,必须被严密监控。因为这些程序都给了它的用户一些特权,所以要确保危险的suid没有被安装。
3、检查办法
(1)判定条件
检查查询结果中不存在未授权的文件。
(四)检查任何人都是写权限的目录
1、安全基线说明
系统中不应存在任何人都有写权限的目录。
2、操作指南
(1)参考配置操作
用下面的命令查找系统中都有写权限的文件,执行:
for PART in `awk '($3 == "ext2" || $3 == "xfs" {print $2}'`;dofind $PART -xdev -type d \\\\( -perm -0002 -a ! -perm -1000 \\\\) -printdone
若存在则删除该目录或给该目录授权。
(2)补充操作说明
无
3、检查办法
(1)判定条件
自检查;
(五)检查任何人都有写权限的文件
1、安全基线说明
系统中不应存在任何人都有写权限的文件。
2、操作指南
(1)参考配置操作
用下面的命令查找系统中任何人都有写权限的文件,执行:
for PART in `grep -v ^# /etc/fstab | awk '($6 == "0") {print $2}'`;dofind $PART -xdev -type f \\\\( -perm -0002 -a ! -perm -1000 \\\\) -printdone
若存在则删除文件或给该文件授权。
(2)补充操作说明
无
3、检查办法
(1)判定条件
不存在任何人都有写权限的文件。
(六)删除没有属主的文件
1、安全基线说明
检查没有属主的文件,若存在应删除。
2、操作指南
(1)参考配置操作
用下面的命令查找系统中都有写权限的文件,执行:
for PART in `grep -v ^# /etc/fstab | awk '($6 != "0") {print $2}'`;dofind $PART -nouser -o -nogroup -printdone
若存在没有属主的文件,应删除该文件。
(2)补充操作说明
发现没有属主的文件往往就意味着有黑客入侵的可能。不能允许没有属主的文件存在。如果在系统中发现了没有属主的文件或目录,先查看它的完整性,如果一切正常,给它一个属主。有时候卸载程序可能会出现一些没有属主的文件或目录,在这种情况下可以把这些文件和目录删除掉。
3、检查办法
(1)判定条件
不存在没有属主的文件。
(七)检查异常隐含文件
1、安全基线说明
不应存在异常隐含文件。
2、操作指南
(1)参考配置操作
用“find”程序可以查找到这些隐含文件。例如:
# find / -name ".. *" -print
# find / -name "...*" -print | cat -v
同时也要注意象“.xx”和“.mail”这样的文件名的。(这些文件名看起来都很象正常的文件名)
若存在则删除异常隐含文件。
(2)补充操作说明
在系统的每个地方都要查看一下有没有异常隐含文件(点号是起始字符的,用“ls”命令看不到的文件),因为这些文件可能是隐藏的黑客工具或者其它一些信息(口令破解程序、其它系统的口令文件,等等)。在UNIX下,一个常用的技术就是用一些特殊的名,如:“…”、“.. ”(点点空格)或“..^G”(点点control-G),来隐含文件或目录。
3、检查办法
(1)判定条件
检查结果中不存在类似文件。
(八)系统补丁
1、安全基线说明
在保证业务网络稳定运行的前提下,安装最新的OS 补丁(补丁在安装前需要测试确定)。
2、操作指南
(1)参考配置操作
执行下列命令,查看版本及大补丁号。
#uname –a
在保证业务网络稳定运行的前提下,安装最新的OS 补丁(补丁在安装前需要测试确定)
(2)补充操作说明
在系统安装时建议只安装基本的 OS 部份,其余的软件包则以必要为原则,非必需的包就不装。
3、检查办法
(1)判定条件
系统补丁的版本应为最新版本。
(九)/etc/passwd、/etc/shadow文件安全性(可选)
1、安全基线说明
Passwd、shadow、group文件中不应存在“+”,有”+”条目的文件允许通过NIS Map中系统配置的某些点插入数据,passwd shadow group文件中如包含此条目,可能会使入侵者通过网络添加用户。
2、操作指南
(1)参考配置操作
执行:grep ^+: /etc/passwd /etc/shadow /etc/group,查看文件中是否包含”+”。
更改文件权限,执行chmod o-w /etc/passwd /etc/shadow /etc/group删除文件中的”+”条目
(2)补充操作说明
无
3、检查办法
(1)判定条件
执行:grep ^+: /etc/passwd /etc/shadow /etc/group,查看文件中是否包含”+”。返回值应为空。
七、网络与服务
(一)关闭不必要的系统服务
1、安全基线说明
关闭不必要的服务。
2、操作指南
(1)参考配置操作
#ps –ef
#chkconfig --list
#ls /etc/xinetd.d
在xinetd.d中关闭不用的服务,用vi编辑器编辑xinetd.d目录下对于服务的文件,把disable配置成yes,则为禁止改服务,重启xinetd服务,即可。
还可使用如下方式禁用不必要的服务:
#service <服务名> stop
#chkconfig --level 35 off
(2)补充操作说明
在/etc/xinetd.d文件夹中禁止不必要的基本网络服务。
注意:改变了“/etc/xinetd.d”目录下的服务文件之后,需要重新启动xinetd。
根据每台机器的不同角色,关闭不需要的系统服务。操作指南中的服务项提供参考,根据服务器的角色和应用情况对启动项进行修改。如无特殊需要,应关闭Sendmail、Telnet、Bind 等服务Linux/Unix 系统服务中,部分服务存在较高安全风险,应当禁用,包括:
“lpd”,此服务为行式打印机后台程序,用于假脱机打印工作的UNIX 后台程序,此服务通常情况下不用,建议禁用;
“telnet”,此服务采用明文传输数据,登录信息容易被窃取,建议用ssh 代替;
“routed”,此服务为路由守候进程,使用动态RIP 路由选择协议建议禁用;
“sendmail”,此服务为邮件服务守护进程,非邮件服务器应将其关闭;
“Bluetooth”,此服务为蓝牙服务,如果不需要蓝牙服务时应关闭;
“identd”,此服务为AUTH 服务,在提供用户信息方面与finger类似,一般情况下该服务不是必须的,建议关闭;
“xfs”,此服务为Linux 中X Window 的字体服务,关于该服务历史上出现过信息泄露和拒绝服务等漏洞,应以减少系统风险;
R 服务(“rlogin”、“rwho”、“rsh”、“rexec”),R 服务设计上存在严重的安全缺陷,仅适用于封闭环境中信任主机之间便捷访问,其它场合下均必须禁用;
基于inetd/xinetd 的服务(daytime、chargen、echo 等),此类服务建议禁用。
3、检查办法
(1)判定条件
#ps –ef
#chkconfig --list
#ls /etc/xinetd.d
所需的服务都列出来;没有不必要的服务;
通过本文的日志审计策略、系统文件权限管控和服务优化配置,相信大家已经掌握了 Linux 安全的高阶技能。建议定期执行检查命令,确保配置持续生效。
售前咨询
售后咨询
备案咨询
二维码
TOP