蜜罐"/>
RHEL8部署ssh蜜罐
RHEL8部署ssh蜜罐
- 蜜罐cowrie简介
- 安装运行cowrie
- 安装依赖包
- 创建cowrie用户
- 下载cowrie源码
- 创建Python3虚拟环境
- pip安装依赖包
- 修改配置文件
- 创建模拟SSH账号密码泄露文件
- 配置文件
- 配置防火墙
- firewalld防火墙配置
- iptables防火墙配置
- 将Cowrie输出发送到MySQL数据库--`非必需`
- 安装mysql客户端
- 创建数据库
- 导入到数据库
- 配置蜜罐数据库连接
- 启动蜜罐
- 查看攻击者信息和攻击方式
- 查看日志
蜜罐cowrie简介
项目地址:
Cowrie是一款中度交互的ssh
与Telnet
蜜罐,它可以获取攻击者用于暴力破解的字典,输入的命令以及上传或下载的恶意文件
特性:
伪装的文件系统
可增加/移除文件
,完整的文件系统搭配有Debian 5.0
;- 可增加文件内容,攻击者就能用cat命令查看如
/etc/passwd
等文件;系统中进包含最少的文件内容 - 会话日志记录在UML兼容格式中,便于重演
cowroe
保存文件,下载用wget/curl
,或者为后续检查—上传采用sftp
和scp
安装运行cowrie
/
安装依赖包
# 安装依赖包
yum install -y git gcc bzip2-devel libffi-devel vim net-tools
创建cowrie用户
# 创建cowrie用户
useradd cowrie
下载cowrie源码
# 进入/opt目录
cd /opt# 下载cowrie源码
git clone .git# 进入cowrie源码目录
cd /opt/cowrie/
创建Python3虚拟环境
需要python3.7及以上
# RHEL安装virtualenv包
yum install -y python3-virtualenv# pip安装virtualenv
pip3 install virtualenv# 进入cowrie目录
cd /opt/cowrie/# 创建虚拟环境
python3 -m venv cowrie-env# 激活虚拟python环境
source cowrie-env/bin/activate
pip安装依赖包
在(cowrie-env)
Python3.7+
以上虚拟环境
下执行
。
# 进入cowrie源码目录
cd /opt/cowrie/# 升级pip包管理器
pip3 install -U setuptools
pip3 install -U pip# pip安装依赖包
pip3 install six packaging appdirs# 安装项目python依赖
pip3 install -U -r requirements.txt
修改配置文件
# 进入配置模板目录
cd /opt/cowrie/etc/# 复制配置文件
cp cowrie.cfg.dist cowrie.cfg# 修改目录的属主
chown -R cowrie /opt/cowrie/
创建模拟SSH账号密码泄露文件
# 编辑模拟SSH账号密码泄露文件
vim etc/userdb.txt
把自己怀疑泄密的root密码写上去,只有这些root密码才能登录上我们的SSH蜜罐。
root:x:怀疑泄露密码1
root:x:怀疑泄露密码2
admin:x:怀疑泄露密码3
配置文件
修改配置文件
vim cowrie.cfg
Cowrie 会监听 SSH 的 port 2222、Telnet 的 port 2223。
所以这里将连接至 port 22 、23 的请求重定向到 2222、2223
[telnet]
enabled = truelisten_port = 2223
listen_endpoints = tcp:2223:interface=0.0.0.0
配置防火墙
firewalld防火墙配置
# 放行ssh蜜罐的2222端口和2223端口
firewall-cmd --add-port=2222/tcp --permanent
firewall-cmd --add-port=2223/tcp --permanent# 允许SNAT(源地址转换)
firewall-cmd --zone=public --add-masquerade --permanent# 将22端口转发到2222端口
firewall-cmd --zone=public --add-forward-port=port=22:proto=tcp:toport=2222 --permanent# 将23端口转发到2223端口
firewall-cmd --zone=public --add-forward-port=port=23:proto=tcp:toport=2223 --permanent# 更新防火墙规则
firewall-cmd --reload# 重启sshd服务
systemctl restart sshd
iptables防火墙配置
# 允许从客户端发起的新TCP连接请求通过端口80进入系统
iptables -I INPUT -p tcp --dport 80 -m state --state NEW -j ACCEPT# 允许从客户端发起的新TCP连接请求通过端口22进入系统
iptables -I INPUT -p tcp --dport 22 -m state --state NEW -j ACCEPT# 将tcp的22端口重定向到2222蜜罐端口
iptables -t nat -A PREROUTING -p tcp --dport 22 -j REDIRECT --to-port 2222# 将tcp的23端口重定向到2223蜜罐端口
iptables -t nat -A PREROUTING -p tcp --dport 23 -j REDIRECT --to-port 2223
将Cowrie输出发送到MySQL数据库–非必需
.html
前置
条件:已有Mysql服务器
安装mysql客户端
安装MariaDB
安装mysql服务器
# 安装mysql客户端
yum install -y mysql-devel
在(cowrie-env)
Python虚拟环境下执行
。
# 安装mysql-python依赖
pip install -y mysql-python
创建数据库
-- 创建cowrie库
create database cowrie;-- 授权"cowrie"从"localhost"访问"cowrie"数据库,可执行所有权限,同时设置改用户的密码为"123"。
grant all on cowrie.* to cowrie@localhost identified by '123';
导入到数据库
# 进入cowrie的sql目录
cd /opt/cowrie/docs/sql
导入到数据库
-- 登录数据库
mysql -ucowrie -p-- 进入到cowrie库
use cowrie;-- 导入sql
source mysql.sql
配置蜜罐数据库连接
vim /opt/cowrie/etc/cowrie.cfg
[output_mysql]
enabled = true
host = localhost
database = cowrie
username = cowrie
password = 123
port = 3306
启动蜜罐
# 切换到cowrie用户
su - cowrie# 激活虚拟python环境
source cowrie-env/bin/activate# 切换目录
cd /opt/cowrie/bin# 启动蜜罐
/opt/cowrie/bin/cowrie start# 查看蜜罐状态
/opt/cowrie/bin/cowrie status# 停止蜜罐服务
/opt/cowrie/bin/cowrie stop
查看攻击者信息和攻击方式
# 查看攻击者的攻击信息和攻击方式
mysql -ucowrie -p
查看日志
tail ./var/log/cowrie/cowrie.log# 查看json日志
tail ./var/log/cowrie/cowrie.json# 登录失败
cat ./var/log/cowrie/cowrie.json | grep cowrie.login.failed# 登录成功
cat ./var/log/cowrie/cowrie.json | grep cowrie.login.success# 登陆蜜罐后.命令.输入
cat ./var/log/cowrie/cowrie.json | grep cowriemand.input
更多推荐
RHEL8部署ssh蜜罐
发布评论