返回介绍

13.4 服务器安全

发布于 2024-10-11 22:28:31 字数 2954 浏览 0 评论 0 收藏 0

服务器与终端环境有个明显的不同—服务器需要对外提供服务,会有大量的应用程序来访问,但人在上面的操作却非常少。

1.基础安全配置

首先要做的就是一些基础的安全配置工作,相信每个企业都会有 Windows 服务器配置和管理规范、Linux 服务器配置和管理规范之类的文档,网上也有很多资料可供参考。

Windows 服务器的安全加固一般有以下几个要点:

·安装时磁盘分区选用 NTFS,各种文件权限控制需要依靠它。

·网络连接的 TCP/IP 协议“属性”中,配置“禁用 TCP/IP 上的 NetBIOS”,少量特殊应用可能需要。

·服务器加入域,便于域统一管理安全策略。

·安全策略需要包括账户策略(密码策略、账户锁定策略、Kerberos 策略)、本地策略(审核策略、用户权限分配、安全选项)等内容。

·事件日志,需要调整最大日志文件大小。

·系统服务配置,禁用不必要的服务,比如 Alerter、Browser、Messenger、Shell-HWDetection、AudioSrv、WinHttpAutoProxySvc、PimIndexMaintenanceSvc、dmwappushsvc、MapsBroker、Ifsvc、wlidsvc、NgcSvc、NgcCtnrSvc、RmSvc、SensorDataService、SensrSvc、SensorService、SSDPSRV、WiaRpc 等。

·开启高级审核策略,对账户登录、账户管理、登录/注销、策略更改、特权使用、系统等进行配置。

·关闭自动播放,启用密码保护的屏幕保护,关闭自动产生互联网访问流量的功能,安装防病毒及所需要的安全软件。

Linux 服务器的安全加固一般有以下几个要点:

·物理安全相关设置,禁用 USB 存储设备,添加 GRUB 密码,禁止 Ctrl+Alt+Del 直接重启服务器。

·文件系统挂载设备,对/tmp 和/var 分区增加 nodev 和 nosuid 选项,对/home 分区增加 nosuid 选项。

·对一些系统文件设置权限,包括/etc/crontab、/etc/securetty、/boot/grub/grub.conf、/etc/inittab、/etc/login.defs 等。

·关闭一些不必要的服务,包括 cups、postfix、pcscd、smartd、alsasound、iscsitarget、smb、acpid 等。

·开启命令记录时间截,并将一些与命令记录相关的参数设置为 readonly。

·开启日志及 audit 审计功能,配置监控规则,同时设置 syslog 转发将日志送到 SOC。

·口令策略设置,包括口令复杂度、有效期,同时设置超时自动退出、密码尝试次数过多锁定。

·对 SSHD 进行安全配置(最大重试次、禁用 Rhosts 认证、指定密码类型、指定 MAC 算法),同时删除 RHOST 相关的各种文件。

·调整一些内核参数,禁用 LKM,限制/dev/mem,开启 ALSR,禁用 NAT 功能。

很多企业开始大量使用虚拟机技术,于是很多安全加固配置可以直接做到模板里,这样新生成的虚拟机就自动具有这些安全配置,再辅助一些运维自动化工具对安全基线配置进行检查,对发现的问题安排跟进处理。

2.入侵防护检测

安全基线配置是一个基础,但企业内网服务器毕竟对外提供各种服务,这些应用本身的安全性也会影响服务器本身的安全。从 WebServer 到开发框架,再到后端数据库,都可能会被攻击者搞定;另外,服务器上可能除了 Root 之外还会给开发人员或者应用建有相应的账号,这些账号的密码如果泄露也会影响服务器的安全。弱口令不仅是 123456 之类的,有些企业的口令会有一些规律,比如 Baidu@201X 这样的,可能一定程度上匹配了系统密码复杂度,但别有用心的人可能很容易就将密码拿到手了。所以,还需要在安全基线配置外,有一定的入侵防护检测手段。

一种思路是在服务器上安装类似 HIDS 的产品,开源的有 OSSEC,商业的也有不少产品。前面我们说过 OSSEC 有瑕疵,但这个产品的框架和思路确实值得学习,rules 目录下有大量的 xml 规则,在理解其规则写法后,安全人员很轻松就能编写自己的规则对特定的场景进行检测。如图 13-5 所示的规则。

图 13-5 OSSEC Rule

编号 31315 的规则是发现有匹配密码出错的字样,而 31316 规则是在 31315 规则命中的基础上增加了频度,代表发现了短时间内多次验证失败的事件。同样,Windows 下的 Sysmon 也是基于规则进行匹配和过滤,其能记录的事件类型如图 13-6 所示。

Sysmon 的规则相对简单,每个 ID 对应一类事件,可以 exclude 排除也可以 include 包含组合运用,内置条件也比较丰富,如图 13-7 所示。

图 13-6 Sysmon Event ID

图 13-7 Sysmon Rule

依靠此类程序,我们在机器上收集了各种各样的事件,接下来需要统一送往 SOC 平台,在上面定制相应的 CASE 并产生告警。另外,针对应用日志(比如 IIS 日志),甚至应用程序本身的日志,也可以通过类似 Flume 类程序采集到大数据平台,便于进一步分析。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文