简介

用于实现服务器(Linux)的访问控制的功能的。
分硬件和软件防火墙。
主要是控制访问的流入和服务器的流出。
通过黑名单和白名单的思想来实现更细粒度的控制,这个一般结合其他的应用来定义策略实现。

概念

黑白名单

可以说防御的思想,主要就是黑白名单的思想!!!!是黑白名单的组合。
黑名单指的是对名单上的ip拒绝提供服务,主要用于拒绝恶意访问和攻击。
白名单指的是对名单上的ip是信任的,不做严格的控制(不限速、不限频率等)。比如说用于测试的时候使用、用于cdn回源下载、第三方防ddos服务的ip等。

服务器类型

不同服务器类型的策略是不一样的。暂时定义几个策略。这个需要根据对服务器的架构职责来划分。

  1. 代理服务器。对外的http服务,一般只开放80端口,同时把请求转发到其他服务器。所以即有外网网卡又有内网网卡。
  2. 业务服务器。不对外提供服务。所以没有外网网卡,只有内网网卡。以最小原则的方式,限制可以通信的端口(具体的每一个开放的端口,都需要明确提供什么服务)。特殊情况是需要外网卡的,比如说调用第三方短信或者邮件服务。
  3. 堡垒机。是日常运维使用的服务器,只对外提供ssh服务。所以即有外网网卡又有内网网卡。

场景

  1. 过滤服务,只开放需要的服务
  2. 控制请求的频率和速度
  3. 对指定ip的访问不控制
  4. 拒绝指定ip的访问

方案

iptables是一个链条,通过对链条规则的操作就可以实现场景的需求。链条是顺序执行的。链条是双向的,包括入和出。限制可以做到网卡级别,不同的网卡限制的规则也是不一样的
例如代理服务器的设置
外网提供服务的防火墙设置思路:

  1. 通过黑名单思想,直接拒绝指定的ip(ip黑名单)访问。
  2. 通过白名单思想,只提供80(端口白名单)端口的访问。
  3. 通过白名单思想,对指定的ip(ip白名单)不设置访问限制。
  4. 限制80端口的访问(频率和流量)。
  5. 拒绝所有服务。

内网提供服务的防火墙设置思路:

  1. 通过白名单思想,直接允许内网的指定端口(具体根据业务,比如数据库、ssh、nfs等)可以访问
  2. 拒绝所有服务。

所以,最重要的是规则设定,以及结合其他的应用实现自动添加黑名单ip。比如说结果nginx分析出恶意ip,然后通过添加到防火墙的黑名单里。

验证方法

这里的验证方法和工具还需要不断的补充

1.通过nmap来验证,端口的开放情况
2.通过ab或者webbench来验证,限制和访问的频率

参考资料

  1. iptables详解
  2. linux下IPTABLES配置详解
  3. netfilter/iptables全攻略
  4. iptables限制同一IP连接数
  5. 使用IPTABLES限制IP上传下载速度,如何用iptables限速?

web安全——防火墙的更多相关文章

  1. [转]Web应用防火墙WAF详解

    通过nginx配置文件抵御攻击 0x00 前言 大家好,我们是OpenCDN团队的Twwy.这次我们来讲讲如何通过简单的配置文件来实现nginx防御攻击的效果. 其实很多时候,各种防攻击的思路我们都明 ...

  2. 技术分享:杂谈如何绕过WAF(Web应用防火墙)(转)

    0×01开场白 这个议题呢,主要是教大家一个思路,而不是把现成准备好的代码放给大家. 可能在大家眼中WAF(Web应用防火墙)就是"不要脸"的代名词.如果没有他,我们的" ...

  3. 飞塔Web应用防火墙-FortiWeb

    飞塔Web应用防火墙-FortiWeb 平台: fortiweb 类型: 虚拟机镜像 软件包: linux basic software Fortinet security SSL offloadin ...

  4. 基于lua-nginx-module(openresty)的WEB应用防火墙

    独乐乐,不如众乐乐,分享给大家一篇WEB应用防火墙的文章,基于Lua+ Nginx实现.以下是ngx_lua_waf的作者全文输出. Github地址:https://github.com/loves ...

  5. 2019年十大开源WEB应用防火墙点评

    2019年十大开源WEB应用防火墙点评 随着WEB应用的爆炸式成长和HTTPS加密的普及,针对网络应用层的攻击,像SQL注入.跨站脚本攻击.参数篡改.应用平台漏洞攻击.拒绝服务攻击等越来越多,传统的防 ...

  6. 阿里云Web应用防火墙采用规则引擎、语义分析和深度学习引擎相结合的方式防护Web攻击

    深度学习引擎最佳实践 {#concept_1113021 .concept} 阿里云Web应用防火墙采用多种Web攻击检测引擎组合的方式为您的网站提供全面防护.Web应用防火墙采用规则引擎.语义分析和 ...

  7. 教你用免费的hihttps开源WEB应用防火墙阻止暴力破解密码

    教你用免费的hihttps开源WEB应用防火墙阻止暴力破解密码 很多企业都有自己的网站,需要用户登录后才能访问,但有大量的黑客攻击软件可以暴力破解网站密码,即使破解不了也非常恶心.有没有免费的解决办法 ...

  8. Web应用防火墙云WAF详细介绍

    Web应用防火墙,或叫Web应用防护系统(也称为:网站应用级入侵防御系统.英文:Web Application Firewall,简称: WAF).利用国际上公认的一种说法:Web应用防火墙是通过执行 ...

  9. 干货 | 利用京东云Web应用防火墙实现Web入侵防护

    摘要 本指南描述如何利用京东云Web应用防火墙(简称WAF),对一个简单的网站(无论运行在京东云.其它公有云或者IDC)进行Web完全防护的全过程.该指南包括如下内容: 准备环境 在京东云上准备Web ...

  10. 利用京东云Web应用防火墙实现Web入侵防护

    摘 要 本指南描述如何利用京东云Web应用防火墙(简称WAF),对一个简单的网站(无论运行在京东云.其它公有云或者IDC)进行Web完全防护的全过程.该指南包括如下内容: 1 准备环境 1.1 在京东 ...

随机推荐

  1. Swift 集合类型

     Swift语言提供数组和字典的集合类型  Swift 语言里的数组和字典中存储的数据值类型必须明确 ,即数组中只能存放同类型的数据. 1: 数组 数组的创建 var shoppingList: St ...

  2. LeetCode: 221_Maximal Square | 二维0-1矩阵中计算包含1的最大正方形的面积 | Medium

    题目: Given a 2D binary matrix filled with 's and return its area. For example, given the following ma ...

  3. DMSFrame 之简单用法(二)

    上次说了下DMSFrame的一些查询方式,之前也有好多朋友问了下这个ORM与EF有什么样的区别. 要论区别,我自己也总结了几点.如果有其它朋友知道的,可以回复补充下. 1.不需要编辑的时候需要再次查询 ...

  4. `cocos2dx 非完整` UI解析模块

    昨天在cocos2dx的一个群里,遇到一位匿名为x的朋友询问的问题,是关于ui的.他使用c++写了不少的ui封装节点,用来实现游戏中的各种不同效果.然后现在想改用lua,于是尝试使用最小代价去复用自己 ...

  5. Python 程序如何高效地调试?

    作者:Rui L链接:https://www.zhihu.com/question/21572891/answer/26046582来源:知乎著作权归作者所有,转载请联系作者获得授权. 这个要怒答一发 ...

  6. C# 解析百度天气数据,Rss解析百度新闻以及根据IP获取所在城市

    百度天气 接口地址:http://api.map.baidu.com/telematics/v3/weather?location=上海&output=json&ak=hXWAgbsC ...

  7. HDU4550+贪心

    /* 贪心 先挑出最小的Mm,然后在Mm左侧的按情况考虑,右侧的按顺序排列. */ #include<stdio.h> #include<string.h> #include& ...

  8. 理解并使用.NET 4.5中的HttpClient

    HttpClient介绍 HttpClient是.NET4.5引入的一个HTTP客户端库,其命名空间为System.Net.Http..NET 4.5之前我们可能使用WebClient和HttpWeb ...

  9. Zookeeper集群部署

    一. 部署前的准备工作 保证各个主机之间能够正常通信,最好是在同一网段. 修改host文件,加入IP和主机名的映射.方法为修改/etc/hosts和etc/hostname文件,不同的Linux发行版 ...

  10. C++ async task

    最近在搞Android 开发,里面多线程的使用比较频繁,java多线程接口很方便. Thread, AysncTask, Handler 这些接口比起posix提供的pthread_create()等 ...