tai*_*fwa 5 port-forwarding ufw lxc
ufw
在 Ubuntu 上使用时,我试图让端口转发工作以公开 LXC 容器,但无济于事。我根据 Internet 上的指南构建了以下工作流程 ([1][2][3]);最值得注意的是,关于/etc/ufw/before.rules
我看到的部分到处重复,但是......我无法让它为我工作。
如果有人遵循本指南并取得成功....请告诉我(这样我可能会先哭,然后回过头来编写我自己的防火墙工具)
测试环境
在主机 1 上安装 LXC - 我正在使用普通的 LXC 进行此操作,尚未引入 LXD 设置
sudo lxc-create -n web -t download -- -d centos -r 7 -a amd64
sudo lxc-start -n web
sudo lxc-attach -n web
yum install httpd ; yum enable httpd ; yum start httpd
exit
我们现在假设
enp0s8
和10.0.3.101
10.0.2.6
sudo iptables -L -t nat
LXC 安装已经配置了伪装您可能想要对这个基本状态进行快照。
此时有两条路由:A-route with plain iptables,B-route,有问题的,用 ufw
sudo iptables -t nat -A PREROUTING -i enp0s8 -p tcp --dport 8080 -j DNAT --to "10.0.3.101:80"
wget http://10.0.2.6:8080
,这给了我标准的 CentOS 登录页面。成功!/etc/default/ufw
MANAGE_BUILTINS=yes
DEFAULT_FORWARD_POLICY="ACCEPT"
/etc/ufw/sysctl.conf
net/ipv4/ip_forward=1
/etc/ufw/before.rules
*filter
线ufw allow 8080
ufw enable
nc -l 8080
在 host1 上执行并尝试从 host2 再次连接,我会得到 HTTP 标头转储 - 表明没有发生端口转发。失败!我已经用新的虚拟机、digitalOcean 液滴和 AWS EC2 实例完成了大约 5 次不同的步骤 - 没有运气,总是一样的。
任何人都可以指出我做错了什么......?
[4] Nat 行:
*nat
:PREROUTING ACCEPT [0:0]
-A PREROUTING -i enp0s8 -p tcp --dport 8080 -j DNAT --to 10.0.3.101:80
COMMIT
# comments etc and the rest of the file, like,
*filter
...
Run Code Online (Sandbox Code Playgroud)事实证明,还需要一些配置步骤才能允许一般流量流动:
在 的顶部/etc/ufw/before.rules
,该*filter
部分之前
*nat
:PREROUTING ACCEPT [0:0]
-A PREROUTING -i enp0s8 -p tcp --dport 8080 -j DNAT --to 10.0.3.101:80
COMMIT
Run Code Online (Sandbox Code Playgroud)
靠近底部,决赛之前COMMIT
:
-A FORWARD -o lxcbr0 -j ACCEPT
-A FORWARD -i lxcbr0 -j ACCEPT
-A INPUT -p udp --dport 53 -i enp0s8 -m state --state NEW -j ACCEPT
-A INPUT -p tcp --dport 53 -i enp0s8 -m state --state NEW -j ACCEPT
-A INPUT -p udp --dport 67 -i enp0s8 -m state --state NEW -j ACCEPT
-A INPUT -p tcp --dport 67 -i enp0s8 -m state --state NEW -j ACCEPT
Run Code Online (Sandbox Code Playgroud)
在 的顶部/etc/ufw/after.rules
,过滤器部分之前:
*nat
:POSTROUTING ACCEPT [0:0]
-A POSTROUTING -s 10.0.3.0/24 ! -d 10.0.3.0/24 -j MASQUERADE
COMMIT
Run Code Online (Sandbox Code Playgroud)
正如问题描述中所述,这对我的测试环境来说是这样。
归档时间: |
|
查看次数: |
3635 次 |
最近记录: |