VPS - SSH蜜罐搭建 - 问题1
最近更新:2025-10-20   |   字数总计:477   |   阅读估时:1分钟   |   阅读量:
  1. VPS - SSH蜜罐搭建 - 问题1
    1. 背景
    2. 解决 - 弃用iptables

VPS - SSH蜜罐搭建 - 问题1

背景

我配置好SSH蜜罐与MySQL服务之后,过了一夜,我连接到VPS的数据库上进行查询,发现记录的所有的攻击的源IP都是172.19.0.1,即VPS主机对于cowrie容器的IP。

image-20240729140003713

这当然不是我意料之中的,本地的IP也没有什么价值,所以我还是想收集原本的IP。

解决 - 弃用iptables

在之前的设置中,VPS的22号端口(默认的SSH端口)被重定向到cowrie容器的2222号端口。具体步骤如下:

  1. Docker端口映射

    • 在Docker中,将cowrie容器的2222号端口映射到VPS的2222号端口。这意味着VPS的2222号端口开放的是cowrie的服务。

    iptables重定向

    • 在VPS上配置iptables规则,将所有到达VPS的22号端口的网络请求重定向到本机的2222号端口。这使得所有外部的SSH连接请求都会被自动转发到cowrie容器的2222号端口。

当时设置的iptables的命令如下:

1
sudo iptables -t nat -A PREROUTING -p tcp --dport 22 -j REDIRECT --to-port 2222

我猜测问题的原因应该是这里的NAT设置,所以我决定弃用iptables,直接将cowrie容器的2222号端口映射到VPS的22号端口。

修改docker-compose.yml文件:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
---
version: '3'

volumes:
cowrie-var:

services:
cowrie:
restart: always
build:
context: ./
dockerfile: Dockerfile
ports:
- "22:2222"
# - "2223:2223"
volumes:
- ./etc:/cowrie/cowrie-git/etc
- cowrie-var:/cowrie/cowrie-git/var

然后执行以下命令即可。

1
2
3
4
5
# 停止并删除现有的容器
docker-compose down

# 重新创建并启动容器
docker-compose up -d

再次使用docker ps命令,在状态栏下可以发现端口映射已经修改成功了。

1
2
3
$ sudo docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
83388cf01d3b cowrie_cowrie "/cowrie/cowrie-env/…" 15 minutes ago Up 15 minutes 2223/tcp, 0.0.0.0:22->2222/tcp, :::22->2222/tcp cowrie_cowrie_1

重新配置好之后就可以捕获到真正的IP了:

image-20240729144753277