nftables是Linux内核中的一个网络过滤框架,它可以用于配置和管理网络包过滤规则。要使用nftables从系统上的Docker容器发布端口,可以按照以下步骤进行操作:
sudo apt install nftables
来安装nftables。sudo nano /etc/nftables.conf
来创建并编辑nftables规则文件。table ip filter {
chain input {
type filter hook input priority 0;
ct state established,related accept
iif "lo" accept
iifname "docker0" accept
tcp dport { 80, 443 } accept
drop
}
}
在这个示例规则中,我们创建了一个名为filter
的IP表,定义了一个名为input
的链,并设置了一些规则。其中,ct state established,related accept
用于接受已建立和相关的连接,iif "lo" accept
用于接受本地回环接口的流量,iifname "docker0" accept
用于接受Docker网桥接口的流量,tcp dport { 80, 443 } accept
用于接受端口80和443的TCP流量,drop
用于拒绝其他所有流量。
sudo nft -f /etc/nftables.conf
来加载并应用nftables规则。sudo nft list ruleset
来查看当前的nftables规则集,确保规则已成功加载。通过以上步骤,你可以使用nftables从系统上的Docker容器发布端口。请注意,这只是一个简单示例,实际应用中可能需要根据具体需求进行更详细的配置。关于nftables的更多信息和用法,请参考腾讯云的相关文档:nftables使用指南。
领取专属 10元无门槛券
手把手带您无忧上云