images\cherry_red.png1 Linux防火墙iptable学习
      images\cherry_blue.png1.1 Chain
   images\cherry_red.png2 tcpdump
      images\cherry_blue.png2.1 基本参数类型
man iptables (--help)

systemctl iptables save [当你写完防火墙规则后,主要保存 !]
vim/etc/iptables
chkconfig iptables on 开启自动的启动


有关联的一些命令

netstat命令用于显示与IP、TCP、UDP和ICMP协议相关的统计数据,一般用于检验本机各端口的网络连接情况。
netstat是在内核中访问网络及相关信息的程序,它能提供TCP连接,TCP和UDP监听,进程内存管理的相关报告。


netstat - nlpt

telnet [ip] 端口号 类似与测试ip端口号是否是连通的

注意 防火墙规则 有上往下 排列 !


(防火墙过滤的规则)
iptables -D [chain] [第几行数据]

iptables -t filter [-A 按顺序插入一条规则 -I 插入到前面] [INPUT OUTPUT ...] [几条] [-i eth0] [-p tcp icmp] [--dport 21] [-s ipaddr] [-j DROP]
iptables -t filter -A INPUT -i eth0 -p tcp --dport 22 -s 192.168.0.33 -j DROP

注意了SSH连接若关闭了 22端口号 DROP 就将会导致 比如说Xshell远程连接出现失败的一些情况 (此时解决方案,比如说阿里云VNC手动把防火墙规则给删除掉)


-t filter (指定哪一张表) 默认filter 表

-A 插入尾部
-I 插入头部

【INPUT OUTPUT PREROUTING FORWARD POSTROUTING
-i 指定的网卡[eth0]
-p 采用什么网络协议 tcp, udp, udplite, icmp, icmpv6,esp, ah, sctp, mh [or] all
-d 指定的目的地址
--dport 指定的端口号[一般可能是远程连接SSH
-s 指定某一个具体某ipaddr
-j 什么条件情况 DROP 丢弃 ACCEPT接受 or 【chain】

防火墙规则谁可以进入,谁不可以进入

iptables -p icmp -h


ICMP 拒绝外部人员通过 ping 内服务器

iptables -t filter -A INPUT -i eth0 -p icmp --icmp-type echo-request -j DROP