CentOS 7 默认的防火墙使用的是 firewalld,不是iptables。当你还在尝试运行 iptables 的一些常用命令会报错误提示:例如The service command supports only basic LSB actions (start, stop, restart, try-restart, reload, force-reload, status). For other actions, please try to use systemctl.

centos7.jpg

如果想在 CentOS 7 系统中安装使用 iptables,首先应该停用默认的 firewalld,然后重新安装 iptables 服务,并且开启80/3306/22等常用端口。

重新启用iptables方法

1、禁用 firewalld

systemctl stop firewalld.service 
systemctl disable firewalld.service

2、安装或更新服务

yum install iptables-services 

3、编辑iptables防火墙配置文件

运行命令 vi /etc/sysconfig/iptables

下边是一个完整的配置文件:

# sample configuration for iptables service
# you can edit this manually or use system-config-firewall
# please do not ask us to add additional ports/services to this default configuration
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT

输入 :wq 保存退出

systemctl start iptables.service      #开启iptables防火墙
systemctl restart iptables.service      #重启iptables防火墙使配置生效
systemctl enable iptables.service      #设置iptables防火墙开机启动
iptables -L      #查看防火墙规则,默认的是-t filter,如果是nat表查看,即iptables -t nat -L

4、关闭SELINUX

运行命令 vi /etc/selinux/config

#SELINUX=enforcing      #注释掉
#SELINUXTYPE=targeted      #注释掉
SELINUX=disabled      #增加
setenforce 0      #使配置立即生效

相关推荐

  1. ngx_waf:一款高大全的 Nginx 网站防火墙模块
  2. Ubuntu/Debian 系统安装配置 UFW 简单防火墙
  3. Linux 服务器配置密钥实现远程免密登录
  4. CentOS 7 firewalld 防火墙常用命令汇总
  5. 如何给Redis设置临时或永久密码?
  6. 在Linux系统中安装配置使用DenyHosts防护工具
文章作者:喵斯基部落
原文地址:https://www.moewah.com/archives/3515.html
版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。非商业转载及引用请注明出处(作者、原文链接),商业转载请联系作者获得授权。