防火墙配置

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. 解决Coursera平台上Andrew.Ng的机器学习课程无法正常提交编程作业的问题

    课程链接:https://www.coursera.org/learn/machine-learning/home/welcome 我使用的环境是MATLAB R2016a,Win10系统. 执行su ...

  2. java的文件操作(1)

    package com.test.file; import java.io.*; import java.util.ArrayList; import java.util.Date; import j ...

  3. whistle替代Fiddler调试远程服务器代码使用教程

    前沿 之前在window下开发的同学大部分都是使用Fiddler代理工具做远程调试,自从换了Mac后也想找个代替工具调试,查询了下大概都比较推荐两款:Charles 和 Whistle .不过Char ...

  4. 【代码笔记】iOS-单击手势的添加

    一,效果图. 二,工程图. 三,代码. RootViewController.h #import <UIKit/UIKit.h> @interface RootViewController ...

  5. angular2 引入jquery

    (注:以下命令都是在项目文件夹根目录下运行的,保证下载的文件都在项目的node_modules文件夹里面) 1. 运行  npm install jquery -save 后会发现在package.j ...

  6. arcengine 正确绑定办法

    if (!RuntimeManager.Bind(ProductCode.Engine)) { if (!RuntimeManager.Bind(ProductCode.Desktop)) { Mes ...

  7. Android属性动画简单剖析

    运行效果图: 先看布局文件吧,activity_main.xml: <?xml version="1.0" encoding="utf-8"?> & ...

  8. windows 2008 r2 安装 owas 2013

    windows 2008 r2  安装 owas 2013 1.NDP452-KB2901907-x86-x64-AllOS-ENU 2.Add-WindowsFeature Web-Server,W ...

  9. 渐变显示渐变消失的BackgroundView

    渐变显示渐变消失的BackgroundView 效果如下: 源码: BackgroundView.h 与 BackgroundView.m // // BackgroundView.h // Test ...

  10. 用字典给Model赋值

    用字典给Model赋值 此篇教程讲述通过runtime扩展NSObject,可以直接用字典给Model赋值,这是相当有用的技术呢. 源码: NSObject+Properties.h 与 NSObje ...