gpt4 book ai didi

docker - 如何将端口限制为由docker-machine创建的主机?

转载 作者:行者123 更新时间:2023-12-02 18:24:31 24 4
gpt4 key购买 nike

我想创建一个仅接受某些IP到5432的连接的数据库机。我要允许连接到该数据库计算机的其他计算机未运行docker。我已经使用此docker-compose文件在ocean上使用docker-machine部署了主机:

postgres:
restart: always
image: postgres:latest
volumes:
- /tmp/postgrescont:/tmp
volumes_from:
- data
env_file: .dbenv
ports:
- "5432:5432"

data:
restart: always
image: postgres:latest
volumes:
- /var/lib/postgresql
command: "true"

并尝试仅允许来自其他特定主机的流量,如下所示:
$ iptables -A INPUT -p tcp --dport 5432 -s <ip address of certain other host> -j ACCEPT
$ iptables -A INPUT -p tcp --dport 5432 -j DROP # deny other traffic

但是,由于某些原因,我仍然可以从不需要的主机进行连接。知道为什么它不起作用吗?

最佳答案

这就是我将端口5432限制为某个IP的方式:

iptables -I DOCKER 1 -p tcp ! -s <other_host_ip_allowed> --dport 5432 -j DROP

我插入了该规则,将其作为DOCKER链的第一条规则,并删除了其他非我指定的IP。

关于docker - 如何将端口限制为由docker-machine创建的主机?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32773621/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com