其他Posted on 2022-12-24
摘要 : ubuntu 服务器安装防火墙 iptables,并添加删除过滤规则
❱ ubuntu 安装 iptables
sudo apt-get update
sudo apt-get install iptables
❱ 通过运行以下命令检查当前iptables配置的状态:
sudo iptables -L -v
❱ 清除本机防火墙规则
-F:清除所有已制定的规则
-X:删除所有使用者自定义的 chain(其是 tables)
-Z:将所有的 chain 的计数与流量统计都清零
sudo iptables -F
sudo iptables -X
sudo iptables -Z
❱ 定义链规则
sudo iptables -A <chain> -i <interface> -p <protocol (tcp/udp) > -s <source> --dport <port no.> -j <target>
-i(接口)-你要过滤其流量的网络接口,例如eth0,lo,ppp0等。
-p(protocol)-进行过滤过程的网络协议。它可以是tcp,udp,udplite,icmp,sctp,icmpv6等。或者,你可以键入all选择每个协议。
-s(source)-流量来自的地址。你可以添加主机名或IP地址。
–dport(目标端口)-协议的目标端口号,例如22(SSH),443(https)等。
-j(目标)-目标名称(ACCEPT,DROP,RETURN)。每次制定新规则时都需要插入此代码。
❱ 开放常用端口
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 25 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 578 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 465 -j ACCEPT
❱ 屏蔽某个ip访问某个端口
sudo iptables -A INPUT -p tcp -s 116.21.254.117 --dport 443 -j DROP
sudo iptables -A INPUT -p tcp -s 116.21.254.117,192.168.1.20 --dport 443 -j DROP
❱ 屏蔽多个ip访问所有端口
sudo iptables -A INPUT -s 1.1.1.1,2.2.2.2,3.3.3.3 -j DROP
开放本机端口
sudo iptables -A INPUT -i lo -j ACCEPT
❱ 丢弃所有通过 tcp 协议访问本机 21 端口的数据包
sudo iptables -A INPUT -i eth0 -p tcp --dport 21 -j DROP