CentOS之――CentOS7安装iptables防火墙

CentOS7认的防火墙不是iptables,而是firewalle.

安装iptableiptable-service


[plain]view plaincopy

  1. #先检查是否安装了iptables

  2. serviceiptablesstatus

  3. #安装iptables

  4. yuminstall-yiptables

  5. #升级iptables

  6. yumupdateiptables

  7. #安装iptables-services

  8. yuminstalliptables-services

禁用/停止自带的firewalld服务

[plain]copy

  1. #停止firewalld服务

  2. systemctlstopfirewalld

  3. #禁用firewalld服务

  4. systemctlmaskfirewalld

设置现有规则
copy

  1. #查看iptables现有规则

  2. iptables-L-n

  3. #先允许所有,不然有可能会杯具

  4. iptables-PINPUTACCEPT

  5. #清空所有认规则

  6. iptables-F

  7. #清空所有自定义规则

  8. iptables-X

  9. #所有计数器归0

  10. iptables-Z

  11. #允许来自于lo接口的数据包(本地访问)

  12. iptables-AINPUT-ilo-jACCEPT

  13. #开放22端口

  14. iptables-AINPUT-ptcp--dport22-jACCEPT

  15. #开放21端口(FTP)

  16. iptables-AINPUT-ptcp--dport21-jACCEPT

  17. #开放80端口(HTTP)

  18. iptables-AINPUT-ptcp--dport80-jACCEPT

  19. #开放443端口(HTTPS)

  20. iptables-AINPUT-ptcp--dport443-jACCEPT

  21. #允许ping

  22. iptables-AINPUT-picmp--icmp-type8-jACCEPT

  23. #允许接受本机请求之后的返回数据RELATED,是为FTP设置的

  24. iptables-AINPUT-mstate--stateRELATED,ESTABLISHED-jACCEPT

  25. #其他入站一律丢弃

  26. iptables-PINPUTDROP

  27. #所有出站一律绿灯

  28. iptables-POUTPUTACCEPT

  29. #所有转发一律丢弃

  30. iptables-PFORWARDDROP

其他规则设定
copy

  1. #如果要添加内网ip信任(接受其所有TCP请求)

  2. iptables-AINPUT-ptcp-s45.96.174.68-jACCEPT

  3. #过滤所有非以上规则的请求

  4. iptables-PINPUTDROP

  5. #要封停一个IP,使用下面这条命令:

  6. iptables-IINPUT-s***.***.***.***-jDROP

  7. #要解封一个IP,使用下面这条命令:

  8. iptables-DINPUT-s***.***.***.***-jDROP

保存规则设定
copy

  1. #保存上述规则

  2. serviceiptablessave

开启iptables服务
copy

  1. #注册iptables服务

  2. #相当于以前的chkconfigiptableson

  3. systemctlenableiptables.service

  4. #开启服务

  5. systemctlstartiptables.service

  6. #查看状态

  7. systemctlstatusiptables.service


解决vsftpd在iptables开启后,无法使用被动模式的问题

1.首先在/etc/sysconfig/iptables-config修改或者添加以下内容

[html]copy

  1. #添加以下内容,注意顺序不能调换

  2. IPTABLES_MODULES="ip_conntrack_ftp"

  3. IPTABLES_MODULES="ip_nat_ftp"

2.重新设置iptables设置
copy

  1. iptables-AINPUT-mstate--stateRELATED,ESTABLISHED-jACCEPT

以下为完整设置脚本
copy

  1. #!/bin/sh

  2. iptables-PINPUTACCEPT

  3. iptables-F

  4. iptables-X

  5. iptables-Z

  6. iptables-AINPUT-ilo-jACCEPT

  7. iptables-AINPUT-ptcp--dport22-jACCEPT

  8. iptables-AINPUT-ptcp--dport21-jACCEPT

  9. iptables-AINPUT-ptcp--dport80-jACCEPT

  10. iptables-AINPUT-ptcp--dport443-jACCEPT

  11. iptables-AINPUT-picmp--icmp-type8-jACCEPT

  12. iptables-AINPUT-mstate--stateRELATED,ESTABLISHED-jACCEPT

  13. iptables-PINPUTDROP

  14. iptables-POUTPUTACCEPT

  15. iptables-PFORWARDDROP

  16. serviceiptablessave

  17. systemctlrestartiptables.service

相关文章

Centos下搭建性能监控Spotlight
CentOS 6.3下Strongswan搭建IPSec VPN
在CentOS6.5上安装Skype与QQ
阿里云基于centos6.5主机VPN配置
CentOS 6.3下配置multipah
CentOS安装、配置APR和tomcat-native