在Solaris网络部署HIDS配置实战(下)
上文介绍IDS基础和OSSEC的技术特点下面笔者以Solaris 操作系统为实例介绍配置具体过程这里包括几个方面首先是ossechids 在Solaris 服务器进行安装和配置然后再Linux 工作站windows工作站BSD工作站上配置OSSEC的IDS代理最后是基于Web的监控界面的配置过程比较长对于初学者有一定难度
一在Solaris服务器下配置ossechids
系统要求首先必须配置好C 编译器和make工具只是Unix工作的基础读者可以查看相关资料进行配置笔者略过另外硬件方面根据监控的主机数量如表 配置
服务器的推荐选型如表
IDS代理客户端数量
IDS服务器CPU数量
IDS服务器CPU速度
IDS服务器内存容量
IDS服务器用于客户端的磁盘存储容量
–
大于MHZ
MB
GB以上
双核或者多处理器
大于MHZ
MB以上
GB以上
软件下载安装
#wegt hidstargz
#wegt GPGKEYasc
# gpg import OSSECGPGKEYasc
# gpg verify filesig file
说明通过gpg验证可以保证软件包安全
#gunzip ossechidstargz
#tar vxf ossechidstar
#cd ossechids
#/install
开始安装界面如图
图 开始安装
首先是语言选择由于笔者使用Solaris 服务器不能支持UTF 编码格式所以汉字显示为乱码所以选择英文安装不过这应当是Unix 系统管理员基本功不过在Linux 下是可以使用中文安装的接着系统进行检测主机情况如图
图 检测主机情况
说明OSSEC需要以root权限安装按 ENTER 继续或 CtrlC 退出
下面是具体安装步骤包括三大部分若干小部分
您希望哪一种安装 如图
图 选择安装类型
说明您可以有三种安装选项:服务器端安装(server)代理端(agent)或本地安装(local)如果选择服务器端安装(server) 您将可以分析所有日志发送email告警及联动接收远端机器的syslog日志 接收代理端发回的日志(代理端发回的日志是经过加密的)如果您选择代理端安装(agent) 您将可以读取本机文件(syslog snort apache等)并将它们发送给服务器端(加密过后)进行分析如果选择本地安装(local)除了不能接收远程机器或代理端发回的信息外你可以作服务器(server)安装能做的任何事情如果您希望安装一个日志分析服务器请选择server如果您已经有一台日志分析服务器并且希望将本机的日志传送给它请选择agent (这是web服务器 数据库服务器等的理想配置方法)如果您只有一台机器要监控那么请选择local
本章选择Server 服务器安装
初始化安装环境
初始化安装环境即选择安装目录通常选择/var/ossec即可
配置 OSSEC HIDS
此处是本文配置关键之处笔者详细介绍包括 项内容代码依次如下
Configuring the OSSEC HIDS
Do you want email notification? (y/n) [y]: y
Whats your email address? your
Whats your SMTP server ip/host? your smtp server address (localhost)
Do you want to run the integrity check daemon? (y/n) [y]: y
Running syscheck (integrity check daemon)
Do you want to run the rootkit detection engine? (y/n) [y]: y
Running rootcheck (rootkit detection)
Active response allows you to execute a specific
command based on the events received For example
you can block an IP address or disable access for
a specific user
More information at:
Do you want to enable active response? (y/n) [y]: y
Active response enabled
By default we can enable the hostdeny and the
firewalldrop responses The first one will add
a host to the /etc/hostsdeny and the second one
will block the host on iptables (if linux) or on
ipfilter (if Solaris FreeBSD or NetBSD)
They can be used to stop SSHD brute force scans
portscans and some other forms of attacks You can
also add them to block on snort events for example
Do you want to enable the firewalldrop response? (y/n) [y]: y
firewalldrop enabled (local) for levels >=
Default white list for the active response:
Do you want to add more IPs to the white list? (y/n)? [n]: n
Setting the configuration to analyze the following logs:
/var/log/messages
/var/log/authlog
/var/log/syslog
/var/log/
/var/log/apache/errorlog (apache log)
/var/log/apache/accesslog (apache log)
If you want to monitor any other file just change
the nf and add a new localfile entry
Any questions about the configuration can be answered
by visiting us online at
Press ENTER to continue
中文解释如下
您希望收到email告警吗? (y/n) [y]: n
Email告警启用
您希望运行系统完整性检测模块吗? (y/n) [y]:
系统完整性检测模块将被部署
您希望运行 rootkit检测吗? (y/n) [y]:
rootkit检测将被部署
关联响应允许您在分析已接收事件的基础上执行一个已定义的命令
例如你可以阻止某个IP地址的访问或禁止某个用户的访问权限
更多的信息您可以访问:
您希望开启联动(active response)功能吗? (y/n) [y]:
关联响应已开启
默认情况下 我们开启了主机拒绝和防火墙拒绝两种响应
第一种情况将添加一个主机到 /etc/hostsdeny
第二种情况将在iptables(linux)或ipfilter(SolarisFreeBSD或NetBSD)中拒绝该主机的访问
该功能可以用以阻止 SSHD 暴力攻击 端口扫描和其他
一些形式的攻击 同样你也可以将他们添加到其他地方例如将他们添加为 snort 的事件
您希望开启防火墙联动(firewalldrop)功能吗? (y/n) [y]:
防火墙联动(firewalldrop)当事件级别 >= 时被启动
联动功能默认的白名单是:
您希望添加更多的IP到白名单吗? (y/n)? [n]:
您希望接收远程机器syslog吗 (port udp)? (y/n) [y]:
远程机器syslog将被接收
设置配置文件以分析一下日志:
/var/log/messages
/var/log/secure
/var/log/maillog
如果你希望监控其他文件 只需要在配置文件nf中
添加新的一项如果你希望监控其他文件 只需要在配置文件nf中
任何关于配置的疑问您都可以在 找到答案
按 ENTER 以继续
配置界面如图
图 配置界面
下面经过系统自动配置如果服务器的Gcc和make工具正确系统可以完成安装如图
图 配置完成界面
图 提示如下已正确完成系统配置
要启动 OSSEC HIDS:
/var/ossec/bin/osseccontrol start
要停止 OSSEC HIDS:
/var/ossec/bin/osseccontrol stop
要查看或修改系统配置请编辑 /var/ossec/etc/nf
图 是最后配置完成界面
图 最后配置完成界面
图提示您必须首先将该代理添加到服务器端以使他们能够相互通信
这样做了以后您可以运行manage_agents工具导入服务器端产生的认证密匙
/var/ossec/bin/manage_agents
二添加代理
下面开始在Solaris 服务器下依次添加Linux windows 代理
运行/var/ossec/bin/manage_agents 出现如图界面
图 添加代理
显示依次是
(A)添加一个代理
(E)建立一个代理钥匙
(L)查看代理列表
(R)删除一个代理
退出
这里选择A 字母 建立第一个代理依次输入代理名称IP地址序列号如图
图 依次输入代理名称IP地址序列号
下面选择(E)建立一个代理钥匙如图
图 建立一个代理钥匙
下面使用把下面一行字符复制下来到一个文本文件中以后使用然后依次建立第二第三个代理过程是相同的
三Linux下配置 OSSEC的IDS代理
进入一个Linux 工作站下载安装ossechids 运行installsh脚本开始安装不过安装选项是代理如图 除了要输入一次OSSEC HIDS服务器IP地址外其他安装 过程和在Solaris 服务器上相同
图 安装选项是代理
说明这里使用的是Fedora Linux 系统内核版本fc
下面运行命令
/var/ossec/bin/manage_agents
选择I 加入代理钥匙如图
图 选择I 加入代理钥匙
完成linux 下配置 OSSEC的IDS代理
四Windows下配置 OSSEC的IDS代理
软件下载链接agentwinexe Manage Agent 目前支持NT XP Vista 安装过程可以选择扫描IIS 日志和关联响应如图
图 安装过程可以选择扫描IIS日志
安装完成后可以运行 Manage Agent如图
图 运行 Manage Agent
在 OSSEC server I 栏目输入服务器IP
在authentication Key 栏目输入代理钥匙
MDAxIHhwIDEMixNjguNDAuMTMIDUOWENDMYjgYWVjMDJjZTQzMWUyYzRjOTAYWMMjcYFlMDIzMjlkNGIyZDMMmUwNDgNzQwYjRkMWQ
Manage Agent 可以监控注册表文件的任何变化以及IIS 日志情况我们知道在网络给我们的工作学习带来极大方便的同时病毒木马后门以及黑客程序也严重影响着信息的安全这些程序感染计算机的一个共同特点是在注册表中写入信息来达到如自动运行破坏和传播等目的所以监控注册表是非常重要的另外IIS日志也是黑客攻陷的重点另外可以设置Manage Agent自动启动使用windows 服务设置步骤如下
以管理员或Administrators组成员身份登录单击开始→运行菜单项在出现的对话框中键入Servicesmsc并回车即可打开服务管理控制台你也可以单击开始→控制面板→性能和维护→管理工具→服务选项来启动该控制台在服务控制台中双击任意一个服务就可以打开该服务的属性对话框如图所示在这里我们可以对服务进行配置管理操作通过更改服务的启动类型来设置满足自己需要的启动关闭或禁用服务
图 设置Manage Agent自动启动
图 设置Manage Agent自动启动
服务状态是指服务的现在状态是启动还是停止通常我们可以利用下面的启动停止暂停恢复按钮来改变服务的状态这里选择自动下面选择将运行服务的账户 在上述对话框中单击登录选项卡执行下述操作之一
()要使用本地系统账户单击本地系统账户选项
()要使用本地服务台账户单击本账户选项然后键入NT AUTHORITY\LocalService
()要使用网络服务账户单击本账户选项然后键入NT AUTHORITY\NetworkService
()要指定另一个账户单击本账户选项然后单击浏览按钮然后在选择用户对话框中指定用户账户即可
最后在密码和确认密码框中键入用户账户的密码单击确定按钮
注意必须明确配置用户账户以便登录到服务要验证用户账户是否经过了正确配置请在本地用户和组中右键单击该用户账户在属性对话框的常规选项卡上确认已选中密码永不过期复选框然后单击成员选项卡来确认该用户是适当组的成员如果选择的账户没有作为服务登录的权限则在你当前管理的计算机上服务会自动授予该账户适当的权限
五启动OSSEC 服务器
启动关闭查看OSSEC服务器
所有OSSEC的IDS代理配置完成后就可以启动OSSEC 服务器了打开一个终端运行命令
/var/ossec/bin/osseccontrol start
图是OSSEC的IDS服务器启动成功界面
图 OSSEC启动成功界面
查看进程可以使用ps命令的相关参数查看运行是否正常命令如图
图 查看OSSEC服务器进程
关闭OSSEC 服务器命令
/var/ossec/bin/osseccontrol stop
设置shell脚本管理ossec服务
SMF是Solaris 操作系统中的软件服务管理工具它替代了以前操作系统的/etc/*d中的服务运行脚本对于使用过Windows的读者来说SMF的功能类似控制面板中的服务;对于使用过Linux和UNIX的读者来说这个功能就是替代部分目录/etc/rc*d中的启动脚本程序(还有一本分没有替代)和超级服务器(inetd)的功能另外使用过Solaris 的读者知道Solaris 是没有这个管理工具的这是Solaris 的新功能SMF主要作为服务操作系统的Solaris 的服务管理工具必然要有强大的服务管理功能SMF作为新的管理工具具有很多新的特性SMF提供以下特性
当出现了管理错误软件有Bug或者发生了硬件错误导致了服务程序异常中止时SMF可以自动按照一定的次序重新启动服务
使用svcs命令可以查看所有的服务而使用svcadm和svccfg命令就可以管理这些服务使用svcsp命令就可以查看与本服务相关联的其他服务
通过服务快照设置可以很容易地实现服务的备份和恢复
通过svcsx命令可以很容易的对服务进行调试并且可以使每个服务都有自己的固定日志
所有的服务都可以通过svcadm进行启动和关闭如果使用t参数则是临时的系统重新启动后将不再保存
具有相应角色的非root用户也可以启动关闭和修改服务
互相不隶属的服务在系统启动的时候是并行启动的系统关闭的时候也是并行关闭的这样系统启动和关闭速度就会很快
一些rc的启动脚本还是按照以前的方式来启动和关闭
增加OSSEC运行脚本的步骤
如果想增加控制脚本来启动和关闭服务就复制这些脚本到/etc/initd目录然后在/etc/rc*d的目录下创造这个脚本文件的软链接
步骤
成为超级用户或者授权角色用户
必须一个shell脚本ossec
Ossec代码内容如下
#!/bin/sh
case $ in
start)
/var/ossec/bin/osseccontrol start
;;
stop)
/var/ossec/bin/osseccontrol stop
;;
restart)
$ stop && sleep
$ start
;;
reload)
$ stop
$ start
;;
*)
echo Usage: $ {start|stop|restart|reload}
exit
esac
增加脚本到intid目录
# cp filename /etc/initd
# chmod /etc/initd/ossec
# chown root:sys /etc/initd/ossec
创建软链接到rc*d目录
# cd /etc/initd
# ln filename /etc/rcd/Snnossec
检查软链接
# ls /etc/initd/*ossec /etc/rcd/*ossec
以后可以使用ossec 管理OSSEC IDS服务器的启动停止和创新加载等复杂动作
配置OSSEC接受防火墙的日志文件
Cisco防火墙PIX
修改配置文件/var/ossec/etc/nf添加几行
syslog
PIX 防火墙配置如下
conf t
logging enable
logging host <>
no logging timestamp
no logging deviceid
logging trap debug
logging facility
exit
write mem
配置OSSEC监控数据库的日志文件
监控错误日志 /var/log/mysql/slackerr (error log):
修改配置文件/var/ossec/etc/nf添加几行
mysql_log
/var/log/mysql/slackerr
监控查询日志 /var/log/mysql/slacklog (generic query log):
修改配置文件/var/ossec/etc/nf添加几行
mysql_log
/var/log/mysql/slacklog
配置OSSEC接受IIS日志文件
修改配置文件/var/ossec/etc/nf添加几行
%WinDir%SystemLogFilesWSVCex%y%m%dlog
iis
说明%y – 代表 年
%m 代表 月
%d 代表 日
总结到此为止笔者介绍了在solaris 服务器建立一个完整的HIDS的基本部分后边笔者会介绍GUI工具它可以使HIDS工作更加高效