我正在学习如何在 ubuntu 服务器上使用 iptables。
您能否向我解释“允许建立会话”是什么意思以及为什么我应该将其包含在规则中?
sudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
我理解允许特定端口并阻止其他端口的概念
sudo iptables -A INPUT -p tcp --dport ssh -j ACCEPT
全部封锁
sudo iptables -A INPUT -j DROP
但我不明白允许建立会话的概念。
谢谢。
年代。
答案1
某些协议比“发送单个数据包作为请求,接收单个数据包作为响应”更复杂。ESTABLISHED
处理单个端口上正在进行的事务(例如 HTTP keepalive),并RELATED
处理与现有事务相关的不同端口上的新事务。
答案2
仅使用最后 2 条规则,您将无法在计算机上使用任何客户端,因为任何响应都将被丢弃。此外,使用 SSH 服务器将不可靠,因为相关的 ICMP 数据包太大错误将被丢弃。