防火墙配置

CentOS 7默认使用的是firewall作为防火墙,这里改为iptables防火墙。

 firewall操作:

# service firewalld status; #查看防火墙状态

(disabled 表明 已经禁止开启启动 enable 表示开机自启,inactive 表示防火墙关闭状态 activated(running)表示为开启状态)

# service firewalld start;  或者 #systemctl start firewalld.service;#开启防火墙

# service firewalld stop;  或者 #systemctl stop firewalld.service;#关闭防火墙

# service firewalld restart;  或者 #systemctl restart firewalld.service;  #重启防火墙

# systemctl disable firewalld.service#禁止防火墙开启自启

# systemctl enable firewalld#设置防火墙开机启动

#yum remove firewalld#卸载firewall

禁用/停止自带的firewalld服务

systemctl stop firewalld  #停止firewalld服务

systemctl mask firewalld  #禁用firewalld服务

安装iptables防火墙及操作:

service iptables status    #先检查是否安装了iptables

yum install -y iptables   #安装iptables

yum update iptables   #升级iptables

yum install iptables-services  #安装iptables-services

设置现有规则

iptables -L -n  #查看iptables现有规则

iptables -P INPUT ACCEPT  #先允许所有,不然有可能会杯具

iptables -F  #清空所有默认规则

iptables -X  #清空所有自定义规则

iptables -Z  #所有计数器归0

iptables -A INPUT -i lo -j ACCEPT  #允许来自于lo接口的数据包(本地访问)

iptables -A INPUT -p tcp --dport 22 -j ACCEPT  #开放22端口

iptables -A INPUT -p tcp --dport 21 -j ACCEPT  #开放21端口(FTP)

iptables -A INPUT -p tcp --dport 80 -j ACCEPT #开放80端口(HTTP)

iptables -A INPUT -p tcp --dport 443 -j ACCEPT  #开放443端口(HTTPS)

iptables -A INPUT -p icmp --icmp-type 8 -j ACCEPT  #允许ping

iptables -A INPUT -m state --state  RELATED,ESTABLISHED -j ACCEPT  #允许接受本机请求之后的返回数据 RELATED,是为FTP设置的

iptables -P INPUT DROP  #其他入站一律丢弃

iptables -P OUTPUT ACCEPT  #所有出站一律绿灯

iptables -P FORWARD DROP  #所有转发一律丢弃

其他规则设定

iptables -A INPUT -p tcp -s 45.96.174.68 -j ACCEPT  #如果要添加内网ip信任(接受其所有TCP请求)

iptables -P INPUT DROP  #过滤所有非以上规则的请求

iptables -I INPUT -s ***.***.***.*** -j DROP  #要封停一个IP,使用下面这条命令:

iptables -D INPUT -s ***.***.***.*** -j DROP  #要解封一个IP,使用下面这条命令:

保存规则设定

service iptables save  #保存上述规则

开启iptables服务

systemctl enable iptables.service  #注册iptables服务  相当于以前的chkconfig iptables on

systemctl start iptables.service  #开启服务

systemctl status iptables.service  #查看状态

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

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

2.重新设置iptables设置

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

以下为完整设置脚本

#!/bin/sh  

iptables -P INPUT ACCEPT  

iptables -F  

iptables -X  

iptables -Z  

iptables -A INPUT -i lo -j ACCEPT  

iptables -A INPUT -p tcp --dport 22 -j ACCEPT  

iptables -A INPUT -p tcp --dport 21 -j ACCEPT  

iptables -A INPUT -p tcp --dport 80 -j ACCEPT  

iptables -A INPUT -p tcp --dport 443 -j ACCEPT  

iptables -A INPUT -p icmp --icmp-type 8 -j ACCEPT  

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

iptables -P INPUT DROP  

iptables -P OUTPUT ACCEPT  

iptables -P FORWARD DROP  

service iptables save  

systemctl restart iptables.service

  

Linux centos修改防火墙为iptables的更多相关文章

  1. Linux CentOS修改网卡IP/网关设置

    1. 修改对应网卡IP的配置文件 修改以下内容 2. 修改对应网卡的网关的配置文件 vi /etc/sysconfig/network 修改以下内容 3. CentOS 修改DNS 修改以下内容 4. ...

  2. Linux Centos 开启防火墙 FirewallD is not running

    转载自:http://www.z4zr.com/page/1006.html CentOS7用firewall命令“替代”了iptables.在这里我们需要区分“iptables服务”和“iptabl ...

  3. linux中的防火墙netfilter iptables

    目录 一.Linux防火墙基础 1.1 ptables的表.链结构 1.2 数据包控制的匹配流程 二.编写防火墙规则 1.iptables的安装 2.1 基本语法.控制类型 一般在生产环境中设置网络型 ...

  4. Linux CentOS 7 防火墙/端口设置

    CentOS升级到7之后用firewall代替了iptables来设置Linux端口, 下面是具体的设置方法: []:选填 <>:必填 [<zone>]:作用域(block.d ...

  5. Linux CentOS中防火墙的关闭及开启端口

    注:CentOS7之前用来管理防火墙的工具是iptable,7之后使用的是Firewall 样例:在CentOS7上安装tomcat后,在linux本机上可以访问tomcat主页,http://ip: ...

  6. Linux CentOS 7 防火墙与端口设置操作

    CentOS升级到7之后用firewall代替了iptables来设置Linux端口, 下面是具体的设置方法: []:选填 <>:必填 [<zone>]:作用域(block.d ...

  7. Linux CentOS 7 防火墙/端口设置【转发】

    CentOS升级到7之后用firewall代替了iptables来设置Linux端口, 下面是具体的设置方法: []:选填 <>:必填 [<zone>]:作用域(block.d ...

  8. Linux系统修改防火墙配置

    防火墙配置文件位置 /etc/sysconfig/iptables 需要开放端口,请在里面添加一条内容即可: 1 -A RH-Firewall-1-INPUT -m state --state NEW ...

  9. Linux CentOS 修改内核引导顺序

    CentOS 7.0 系统更改内核启动顺序 可以 uname -a查下当前的 由于 CentOS 7 使用 grub2 作为引导程序,所以和 CentOS 6 有所不同,并不是修改 /etc/grub ...

随机推荐

  1. nginx 错误日志分析

    502 1.查看nginx错误日志 tailf /data/log/nginx/error.log // :: [error] #: * recv() failed (: Connection res ...

  2. Android - fragment之间数据传递

    <Fragment跳转时传递参数及结果回传的方法> <Fragment详解之五——Fragment间参数传递> <Android解惑 - 为什么要用Fragment.se ...

  3. 虚拟机VMware workstations的网络设置

    一般遇到虚拟机中上不了网的问题,可以这样解决: 1.在终端输入命令:ifconfig.--查看eth0接口上是否有IP地址. 发现eth0接口上没有ip地址. 2.输入cat /etc/sysconf ...

  4. Unity之使用技巧记录

    A:写了个死循环Unity无响应崩溃了怎么办? Q::到文件夹里找到刚刚写的脚本,把错误的代码屏蔽掉,再回到Unity

  5. 无法正常下载Nuget 包的问题

    引用Nuget 是遇到的问题,再次记录一下. 问题描述:Install-Package : 无法安装程序包“Quartz 3.0.2”.您正在尝试将此程序包安装到某个将“.NETFramework,V ...

  6. 解决win7无法打开chm格式文件的问题

    解决win7无法打开chm格式文件的问题. (一).简单方法(本人用的这个) 1.打开chm2.win7提示安全问题3.chm无法显示内容4.关闭chm5.右键点击chm,点击“解除锁定”,ok  没 ...

  7. 浏览器根对象navigator之对象属性概览

    第1章 connection[试验] navigator.connection 是只读的,提供一个NetworkInformation 对象来获取设备的网络连接信息.例如用户设备的当前带宽或连接是否被 ...

  8. 浏览器根对象navigator之客户端检测

    Navigator的5个主要属性: appName:Web浏览器的名称 appVersion:浏览器的版本号和其他版本信息 userAgent:浏览器在它的USER-AGENT HTTP标题中发送的字 ...

  9. CentOS7系列--5.3CentOS7中配置和管理Kubernetes

    CentOS7配置和管理Kubernetes Kubernetes(k8s)是自动化容器操作的开源平台,这些操作包括部署,调度和节点集群间扩展.如果你曾经用过Docker容器技术部署容器,那么可以将D ...

  10. oracle 实现主键自增

    -- 创建表 drop table test; create table test(id number(10), name varchar2(10)); -- 创建对列 drop sequence s ...