基于Iptables构建主机防火墙

Iptables优点: 数据包过滤机制,它会对数据包包头数据进行分析。

1.1.1 加载相关薄块到内核

[root@centos7 ~]# lsmod | egrep "nat|filter"
iptable_filter
ip_tables iptable_filter
[root@centos7 ~]# modprobe ip_tables
[root@centos7 ~]# modprobe iptable_filter
[root@centos7 ~]# modprobe iptable_nat
[root@centos7 ~]# modprobe ip_conntrack
[root@centos7 ~]# modprobe ip_conntrack_ftp
[root@centos7 ~]# modprobe ip_nat_ftp
[root@centos7 ~]# modprobe ipt_state
[root@centos7 ~]# lsmod | egrep "nat|filter"
nf_nat_ftp
nf_conntrack_ftp nf_nat_ftp
iptable_nat
nf_nat_ipv4 iptable_nat
nf_nat nf_nat_ftp,nf_nat_ipv4
nf_conntrack nf_nat_ftp,nf_nat,xt_state,nf_nat_ipv4,nf_conntrack_ftp,nf_conntrack_ipv4
iptable_filter
ip_tables iptable_filter,iptable_nat
libcrc32c xfs,nf_nat,nf_conntrack

1.1.2 清空防火墙规则

[root@centos7 ~]# iptables -F
[root@centos7 ~]# iptables -X
[root@centos7 ~]# iptables -Z

1.1.3 允许ssh端口通信,本机lo通信

[root@centos7 ~]# iptables -t filter -A INPUT -p tcp --dport  -j ACCEPT
[root@centos7 ~]# iptables -t filter -A INPUT -p tcp -s 192.168.10.1/ -j ACCEPT
[root@centos7 ~]# iptables -nL
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT tcp -- 0.0.0.0/ 0.0.0.0/ tcp dpt:
ACCEPT tcp -- 192.168.10.0/ 0.0.0.0/ Chain FORWARD (policy ACCEPT)
target prot opt source destination Chain OUTPUT (policy ACCEPT)
target prot opt source destination [root@centos7 ~]# iptables -t filter -A INPUT -i lo -j ACCEPT
[root@centos7 ~]# iptables -t filter -A OUTPUT -o lo -j ACCEPT
[root@centos7 ~]# iptables -nL
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT tcp -- 0.0.0.0/ 0.0.0.0/ tcp dpt:
ACCEPT tcp -- 192.168.10.0/ 0.0.0.0/
ACCEPT all -- 0.0.0.0/ 0.0.0.0/ Chain FORWARD (policy ACCEPT)
target prot opt source destination Chain OUTPUT (policy ACCEPT)
target prot opt source destination
ACCEPT all -- 0.0.0.0/ 0.0.0.0/

1.1.4 修改默认规则

[root@centos7 ~]# iptables -P INPUT DROP
[root@centos7 ~]# iptables -P FORWARD DROP
[root@centos7 ~]# iptables -nL
Chain INPUT (policy DROP)
target prot opt source destination
ACCEPT tcp -- 0.0.0.0/ 0.0.0.0/ tcp dpt:
ACCEPT tcp -- 192.168.10.0/ 0.0.0.0/
ACCEPT all -- 0.0.0.0/ 0.0.0.0/ Chain FORWARD (policy DROP)
target prot opt source destination Chain OUTPUT (policy ACCEPT)
target prot opt source destination
ACCEPT all -- 0.0.0.0/ 0.0.0.0/

1.1.5 配置允许网络地址段,如办公网络,对外开放端口80/443等

[root@centos7 ~]# iptables -t filter -A INPUT -s 124.56.56.77/ -p all -j ACCEPT
[root@centos7 ~]# iptables -nL
Chain INPUT (policy DROP)
target prot opt source destination
ACCEPT tcp -- 0.0.0.0/ 0.0.0.0/ tcp dpt:
ACCEPT tcp -- 192.168.10.0/ 0.0.0.0/
ACCEPT all -- 0.0.0.0/ 0.0.0.0/
ACCEPT all -- 124.56.56.0/ 0.0.0.0/ Chain FORWARD (policy DROP)
target prot opt source destination Chain OUTPUT (policy ACCEPT)
target prot opt source destination
ACCEPT all -- 0.0.0.0/ 0.0.0.0/
#设置对外提供服务开放端口
[root@centos7 ~]# iptables -t filter -A INPUT -p tcp --dport -j ACCEPT
[root@centos7 ~]# iptables -t filter -A INPUT -p tcp --dport -j ACCEPT
[root@centos7 ~]# iptables -t filter -A INPUT -p icmp -m icmp --icmp-type -j ACCEPT
[root@centos7 ~]# iptables -t filter -A INPUT -p icmp -m icmp --icmp-type any -j ACCEPT

1.1.6 允许关联数据包通过

#允许关联的包通过例如:FTP
[root@centos7 ~]# iptables -t filter -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
[root@centos7 ~]# iptables -t filter -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

1.1.7 保存规则

service iptables save

1.1.8 检查保存的防火墙规则

[root@centos7 ~]# cat /etc/sysconfig/iptables
# Generated by iptables-save v1.4.21 on Sat Sep ::
*nat
:PREROUTING ACCEPT [:]
:INPUT ACCEPT [:]
:OUTPUT ACCEPT [:]
:POSTROUTING ACCEPT [:]
COMMIT
# Completed on Sat Sep ::
# Generated by iptables-save v1.4.21 on Sat Sep ::
*filter
:INPUT DROP [:]
:FORWARD DROP [:]
:OUTPUT ACCEPT [:]
-A INPUT -p tcp -m tcp --dport -j ACCEPT
-A INPUT -s 192.168.10.0/ -p tcp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -s 124.56.56.0/ -j ACCEPT
-A INPUT -p tcp -m tcp --dport -j ACCEPT
-A INPUT -p tcp -m tcp --dport -j ACCEPT
-A INPUT -p icmp -m icmp --icmp-type -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A OUTPUT -o lo -j ACCEPT
-A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
COMMIT
# Completed on Sat Sep ::

Iptables-主机防火墙设置的更多相关文章

  1. [CENTOS7] [IPTABLES] 卸载Firewall Id安装 IPTABLES及防火墙设置

    卸载Firewall ID,重装IPTABLES:先停止服务 systemctl stop firewalldsystemctl mask firewalld   yum install iptabl ...

  2. iptables (一) 主机防火墙和网络防火墙

    Firewall : 防火墙,隔离工具:工作于主机或网络的边缘,对于进出本主机或网络的报文根据事先定义好的检测规则作匹配,对于能够被规则所匹配到的报文做出相应处理的组件:有主机防火墙和网络防火墙 Ip ...

  3. linux下iptables防火墙设置

    各位linux的爱好者或者工作跟linux相关的程序员,我们在工作中经常遇到应用服务器端口已经启动, 在网络正常的情况下,访问不到应用程序,这个跟防火墙设置有关 操作步骤 1.检查有没有启动防火墙 s ...

  4. ubuntu 14.04/14.10 iptables 防火墙设置

    1. 一键批处理设置      [plain] view plaincopyprint? #!/bin/bash PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/loc ...

  5. Linux防火墙设置——iptables

    防火墙用于监控往来流量,并根据用户定义的规则来过滤数据包以保证安全.iptables是Linux下设置防火墙规则的常用工具,它可以让你设置.维护以及查看防火墙的规则表.你可以定义多个表,每个表可以包含 ...

  6. [转载] iptables 防火墙设置

    http://hongwei.im/iptables-setting-for-ubuntu-1304/ Iptables是一个防火墙,所有的Ubuntu官方发行版(Ubuntu,Kubuntu,Xub ...

  7. Linux防火墙设置

    对于Internet上的系统,不管是什么情况都要明确一点:网络是不安全的.因此,虽然创建一个防火墙并不能保证系统100%安全,但却是绝对必要的. Linux提供了一个非常优秀的防火墙工具-netfil ...

  8. iptables网络防火墙和SNAT原理实战

    网络防火墙 iptables/netfilter网络防火墙: (1) 充当网关 (2) 使用filter表的FORWARD链 注意的问题: (1) 请求-响应报文均会经由FORWARD链,要注意规则的 ...

  9. Centos防火墙设置与端口开放

    前言 最近在部署项目的时候遇到了一些问题,阿里云主机要配置安全组策略和端口.对于这点看到了一片好的博文,特此总结记录下. iptables 方法一 打开某个端口 // 开启端口 iptables -A ...

  10. Iptables&Firewalld防火墙

    一.IPtables 1.IPtables入门简介 Netfilter/Iptables(以下简称Iptables)是unix/linux自带的一款优秀且开放源代码的完全自由的基于包过滤的防火墙工具, ...

随机推荐

  1. Linux下大型容量件的切割与合并

    Linux下大型容量件的切割与合并 当前目录下有sp4.exe文件容量129M我用64的U盘把spe.exe考到另一台机器上#split -b 60m sp4.exe-b, --bytes=SIZE  ...

  2. SCOPE_IDENTITY()和 SELECT @@IDENTITY 的用法

    这俩个,是在插入数据的时候使用,返回刚刚插入数据行的ID 大家慎用@@IDENTITY,而尽量采用 SCOPE_IDENTITY() 函数替换之. SCOPE_IDENTITY()  也是得到最后一条 ...

  3. 目前常见的三种SQL分页方式:

    --top not in方式 select top 条数 * from tablename where Id not in (select top 条数*页数 Id from tablename) - ...

  4. android开源项目---View篇

    本文转载自:http://blog.csdn.net/likebamboo/article/details/19080739 主要介绍那些不错个性化的View,包括ListView.ActionBar ...

  5. 【MySQL主从复制原理及搭建全过程】

    目录 准备工作 主从复制原理 开始搭建主从复制 本文将使用mariaDB数据库实现主从复制,其步骤与MySQL数据库无差异. MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护, ...

  6. JS jQuery查看系统中安装的字体

    1.下载插件:FontDetect插件  地址:http://www.lalit.org/lab/javascript-css-font-detect/ 或者复制以下代码到fontdetect.js: ...

  7. MySpring dataSource从配置文件获取

    大神就不看了.本篇是一个人笔记. 原来的数据库配置文件是写死的. 看代码:Mybatis的配置文件 <bean id="dataSource" class="org ...

  8. SQL两表之间:依据一个表的字段更新还有一个表的字段

    1. 写法轻松.更新效率高: update table1 set field1=table2.field1, field2=table2.field2 from table2 where table1 ...

  9. Bounding Volume Hierarchy BVH in OpenCASCADE

    Bounding Volume Hierarchy BVH in OpenCASCADE eryar@163.com Abstract. Bounding Volume Hierarchy(BVH) ...

  10. 通过js动态创建button

    通过js动态创建button 一.实例描述 通过JS的DOM对象,实现元素的动态创建. 二.效果 三.代码 <!DOCTYPE html> <html lang="zh-c ...