很久没登录先知,今天上来一看发现干货好多。看到sosly分享的蜜罐系列1-4,刚好我有搭建过开源蜜罐MHN,在部署使用过程中填过一些坑,总结成这篇系列五,希望对其它小伙伴有帮助。

MHN安装过程中的疑难解决

1,安装报错如下:

Error: xz compression not available

解决方法:

rm -rf /var/cache/yum/x86_64/6/epel
yum remove epel-release
rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm

2,查看安装后的进程状态 supervisorctl status,发现honeymap进程错误如下:

honeymap FATAL can't find command '/opt/honeymap/server/server'

原因是在安装honeymap过程中缺少了go语言依赖的包 golang.org/x/net/websocket,翻墙才能安装这个。
解决方法:
git clone https://github.com/golang/net.git net

cd /usr/local/go/src/
mkdir golang.org
cd golang.org
mkdir x

mv net /usr/local/go/src/golang.org/x/

3,单独安装python-pip-7.1.0

wge ftp://fr2.rpmfind.net/linux/epel/6/i386/python-pip-7.1.0-1.el6.noarch.rpm
rpm -ivh python-pip-7.1.0-1.el6.noarch.rpm

4,安装kippo节点的时候遇到如下错误:

iptables v1.4.7: can't initialize iptables table `nat': Table does not exist (do you need to insmod?)
Perhaps iptables or your kernel needs to be upgraded.

解决办法:

vim /etc/modprobe.d/nf_conntrack.conf

修改内容如下:

options nf_conntrack hashsize=131072

service ufw restart

5,MHN Server的Map链接访问是404

解决办法:

编辑 /opt/mhnserver/server/config.py

修改HONEYMAP_URL如下:

HONEYMAP_URL = 'http://10.0.0.1:3000'

重启mhn-uwsgi
supervisorctl restart mhn-uwsgi

6,supervisorctl status查看遇到的错误

supervisorctl status,错误如下:

mhn-celery-worker                FATAL     Exited too quickly (process log may have details)

解决办法:

cd /var/log/mhn/
查看celery-worker的错误日志
tail -f mhn-celery-worker.err
提示的具体错误内容如下:
IOError: [Errno 13] Permission denied: '/opt/mhnserver/server/y'
检查y文件,发现是在/opt/mhnserver/server/config.py文件中定义的日志文件的路径。
重新定义日志文件路径如下:
LOG_FILE_PATH = '/var/log/mhn/mhn.log'
然后修改mhn.log的所属用户和所属组
chown nginx.nginx /var/log/mhn/mhn.log

上面是安装过程中有可能遇到的一些报错,以及对应的解决方法。具体的报错可能跟安装的系统环境有关系,不一定都会遇到以上报错。

中心服务器MHN Server说明:

/opt/mhnserver/server目录中mhn.py文件是启动mhn server web端的,是flask框架的,运行方式

/opt/mhnserver/env/bin/python2.7 mhn.py

可能需要安装一些模块:

pip install sqlalchemy
pip install 
pip install flask-sqlalchemy
pip install flask-security
pip install celery
pip install xmltodict

MHN Server还可以用nginx启动,nginx配置文件目录:

/etc/nginx/conf.d/default.conf

/etc/nginx/nginx.conf 中 include一下default.conf就可以了

mongodb数据库文件目录:

/data/db

Kippo 蜜罐节点说明

目录:/opt/kippo
配置文件: /opt/kippo/kippo.cfg

启动:/usr/bin/python /usr/bin/twistd -n -y kippo.tac -l log/kippo.log --pidfile kippo.pid

Dionaea 蜜罐节点说明

配置文件:/etc/dionaea/dionaea.conf

Glastopf 蜜罐节点说明

目录:/opt/Glastopf
配置文件:/opt/Glastopf/Glastopf.cfg
/usr/bin/python /usr/local/bin/glastopf-runner

MHN安全配置

mongodb增加权限

1,修改/etc/mongod.conf文件

去掉auth=True前的注释,修改为 auth=True

2,为mongodb增加用户,具体命令:

mongo
>use admin
>db.createUser(
>{
>user:"admin",
>pwd:"goodluckxxx@@111"
>roles:[{role:"userAdminAnyDatabase",db:"admin"}]
>}
>)

如上创建了用户admin,密码goodluckxxx@@111,并赋予了userAdminAnyDatabase的权限。

3,修改用户admin的权限

mongo
>use admin
>db.grantRolesToUser("admin",["readWrite"])

给admin用户读写的权限。

4,给予admin用户其它数据库的权限

mongo
>use admin
>db.grantRolesToUser("admin",[{role:"readWrite",db:"hpfeeds"}])
>db.grantRolesToUser("admin",[{role:"readWrite",db:"mnemosyne"}])

5,重启mongod服务,增加--auth参数,命令如下:

/usr/bin/mongod -f /etc/mongod.conf --auth

splunk相关配置

splunk 启动端口 18090
splunk web访问端口 8000 :http://10.11.22.11:8000/
splunkforwarder web端口 8088 https://10.11.22.11:8088
splunk 的安装主目录
/opt/splunk/bin
splunkforwarder的安装主目录
/opt/splunkforwarder/bin/

相关报错:
Disk Monitor: Cannot write data to index path '/opt/splunk/var/lib/splunk/audit/db' because you are low on disk space on partition '/'. Indexing has been paused. Free disk space above 5000MB to resume indexing.
需要解决:
修改索引相关目录到/letv/下 因为/下的空间不足5000M

源链接

Hacking more

...