转载请注明出处:http://blog.csdn.net/l1028386804/article/details/50779761

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

安装iptable iptable-service

  1. #先检查是否安装了iptables
  2. service iptables status
  3. #安装iptables
  4. yum install -y iptables
  5. #升级iptables
  6. yum update iptables
  7. #安装iptables-services
  8. yum install iptables-services

禁用/停止自带的firewalld服务

  1. #停止firewalld服务
  2. systemctl stop firewalld
  3. #禁用firewalld服务
  4. systemctl mask firewalld

设置现有规则

  1. #查看iptables现有规则
  2. iptables -L -n
  3. #先允许所有,不然有可能会杯具
  4. iptables -P INPUT ACCEPT
  5. #清空所有默认规则
  6. iptables -F
  7. #清空所有自定义规则
  8. iptables -X
  9. #所有计数器归0
  10. iptables -Z
  11. #允许来自于lo接口的数据包(本地访问)
  12. iptables -A INPUT -i lo -j ACCEPT
  13. #开放22端口
  14. iptables -A INPUT -p tcp --dport 22 -j ACCEPT
  15. #开放21端口(FTP)
  16. iptables -A INPUT -p tcp --dport 21 -j ACCEPT
  17. #开放80端口(HTTP)
  18. iptables -A INPUT -p tcp --dport 80 -j ACCEPT
  19. #开放443端口(HTTPS)
  20. iptables -A INPUT -p tcp --dport 443 -j ACCEPT
  21. #允许ping
  22. iptables -A INPUT -p icmp --icmp-type 8 -j ACCEPT
  23. #允许接受本机请求之后的返回数据 RELATED,是为FTP设置的
  24. iptables -A INPUT -m state --state  RELATED,ESTABLISHED -j ACCEPT
  25. #其他入站一律丢弃
  26. iptables -P INPUT DROP
  27. #所有出站一律绿灯
  28. iptables -P OUTPUT ACCEPT
  29. #所有转发一律丢弃
  30. iptables -P FORWARD DROP

其他规则设定

  1. #如果要添加内网ip信任(接受其所有TCP请求)
  2. iptables -A INPUT -p tcp -s 45.96.174.68 -j ACCEPT
  3. #过滤所有非以上规则的请求
  4. iptables -P INPUT DROP
  5. #要封停一个IP,使用下面这条命令:
  6. iptables -I INPUT -s ***.***.***.*** -j DROP
  7. #要解封一个IP,使用下面这条命令:
  8. iptables -D INPUT -s ***.***.***.*** -j DROP

保存规则设定

  1. #保存上述规则
  2. service iptables save

开启iptables服务

  1. #注册iptables服务
  2. #相当于以前的chkconfig iptables on
  3. systemctl enable iptables.service
  4. #开启服务
  5. systemctl start iptables.service
  6. #查看状态
  7. systemctl status iptables.service

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

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

  1. #添加以下内容,注意顺序不能调换
  2. IPTABLES_MODULES="ip_conntrack_ftp"
  3. IPTABLES_MODULES="ip_nat_ftp"

2.重新设置iptables设置

  1. iptables -A INPUT -m state --state  RELATED,ESTABLISHED -j ACCEPT

以下为完整设置脚本

    1. #!/bin/sh
    2. iptables -P INPUT ACCEPT
    3. iptables -F
    4. iptables -X
    5. iptables -Z
    6. iptables -A INPUT -i lo -j ACCEPT
    7. iptables -A INPUT -p tcp --dport 22 -j ACCEPT
    8. iptables -A INPUT -p tcp --dport 21 -j ACCEPT
    9. iptables -A INPUT -p tcp --dport 80 -j ACCEPT
    10. iptables -A INPUT -p tcp --dport 443 -j ACCEPT
    11. iptables -A INPUT -p icmp --icmp-type 8 -j ACCEPT
    12. iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
    13. iptables -P INPUT DROP
    14. iptables -P OUTPUT ACCEPT
    15. iptables -P FORWARD DROP
    16. service iptables save
    17. systemctl restart iptables.service

CentOS7安装配置iptables防火墙的更多相关文章

  1. Linux CentOS7 安装配置 IPtables

    2021-08-11 1. 前言 防火墙其实就是实现 Linux 下访问控制功能的,分为硬件和软件的防火墙两种类型.无论在何网络中,防火墙工作的地方一定是网络的边缘.防火墙的策略.规则就是去定义防火墙 ...

  2. Centos7安装配置Apache+PHP+Mysql+phpmyadmin

    转载自: Centos7安装配置Apache+PHP+Mysql+phpmyadmin 一.安装Apache yum install httpd 安装成功后,Apache操作命令: systemctl ...

  3. CentOS下配置iptables防火墙 linux NAT(iptables)配置

    CentOS下配置防火墙 配置nat转发服务CentOS下配置iptables防火墙 linux NAT(iptables)配置 CentOS下配置iptables 1,vim /etc/syscon ...

  4. (转)Centos7安装配置NFS服务和挂载

    Centos7安装配置NFS服务和挂载 原文:https://www.u22e.com/601.html NFS简介 NFS(Network File System)即网络文件系统,是FreeBSD支 ...

  5. CentOS7 安装配置笔记

    CentOS7 安装配置笔记 1.通过镜像安装 CentOS7 ==============================* 使用 UltraISO 9.7 或者 rufus-3.5p 制作ISO的 ...

  6. Centos7安装配置jenkins(Tomcat)

    Centos7安装配置jenkins(Tomcat) 一.准备工作 1.1 安装JDK1.8 具体安装过程不在赘述. 1.2 下载jenkins的war包 jenkins官网下载地址:https:// ...

  7. Centos7安装配置gitlab

    Centos7安装配置gitlab 这篇文字我会介绍在Centos7上安装gitlab,配置gitlab的smtp,并且创建项目demo. sudo yum install openssh-serve ...

  8. Centos7安装配置JDK8

    Centos7安装配置JDK8 一.准备工作 第一步,去甲骨文官网下载Jdk相应的版本,我这里下载的是jdk1.8. 第二步将你从官网上下载下来的jdk使用FTP工具上传到云服务器上的相应目录,我的是 ...

  9. centos7命令行和图形界面的相互切换(附centos7安装配置教程)

    一.最近安装了centos7,发现在命令行和图形界面的相互切换命令上,与centos以往版本有很大不同,先整理如下,加深记忆. 1,centos7默认安装后,跟其他版本一样,启动默认进入图形界面: 2 ...

随机推荐

  1. Java解析YAML和Android解析YAML

    一.Java解析YAML 1. API的选择 一般分两种:Jyaml和snakeYAML.(Jyaml下载地址:http://download.csdn.net/detail/dgssfgfs/847 ...

  2. LCT总结(LCT,Splay)

    概念.性质简述 LCT(Link-Cut Tree),就是动态树的一种,用来维护一片森林的信息,滋磁的操作可多啦! 动态连边.删边 合并两棵树.分离一棵树(跟上面不是一毛一样吗) 动态维护连通性 维护 ...

  3. 【NOIP2009】【CJOJ1687】【洛谷1074】靶形数独

    题面 Description 小城和小华都是热爱数学的好学生,最近,他们不约而同地迷上了数独游戏,好胜的他们想用数独来一比高低.但普通的数独对他们来说都过于简单了,于是他们向 Z博士请教,Z 博士拿出 ...

  4. 【CJOJ1644】【洛谷2758】编辑距离

    题面 题目描述 设A和B是两个字符串.我们要用最少的字符操作次数,将字符串A转换为字符串B.这里所说的字符操作共有三种: 1.删除一个字符: 2.插入一个字符: 3.将一个字符改为另一个字符: 皆为小 ...

  5. Several ports (8005, 8080, 8009)被占用

    启动Tomcat服务器报错: Several ports (8005, 8080, 8009) required by Tomcat v5.5 Server at localhost are alre ...

  6. CentOS7.4安装MySQL踩坑记录

    CentOS7.4安装MySQL踩坑记录 time: 2018.3.19 CentOS7.4安装MySQL时网上的文档虽然多但是不靠谱的也多, 可能因为版本与时间的问题, 所以记录下自己踩坑的过程, ...

  7. Problem : 1412 ( {A} + {B} )

    //集合中元素是不会重复的,所以完全没有必要将两个集合合并后再进行排序,交换排序的时间效率是O(n^2),将两个集合中的元素分别排序后输出即可.输出格式也非常需要 //注意的.输出一列元素赢以cout ...

  8. 原生jdbc操作mysql数据库详解

    首先给大家说一下使用JDBC链接数据库的步骤 1.加载链接数据库驱动 2.建立数据库链接 3.创建数据库操作对象 4.编写sql语句,执行sql语句 5.获取结果集 6.释放资源 我这边采用的是mav ...

  9. 详解apply

    先谈this 关于this的指向就不细说了,网上有无数博客以及you don't kown js这类书讲的已经很详细了这里就不炒冷饭了. 举几个简单的例子 function foo() { conso ...

  10. EXCEL VLOOKUP函数怎么返回多列结果

    一般VLOOKUP函数只能返回一列的结果,本例介绍如何一次性返回多列结果.   工具/原料   Excel 函数使用方法说明:     首先,原始数据包括姓名.工号.性别和籍贯信息.现在需要根据姓名同 ...