简介

用于实现服务器(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. Oracle的model语句入门-转

    Model语句是Oracle 10g的新功能之一. 本文通过一些简单的例子帮助理解Model语句的用法,复杂使用场景请参考其他文章. 环境:当然需要Oracle 10g以上,本人是在11g上测试的. ...

  2. spring中bean配置和bean注入

    1 bean与spring容器的关系 Bean配置信息定义了Bean的实现及依赖关系,Spring容器根据各种形式的Bean配置信息在容器内部建立Bean定义注册表,然后根据注册表加载.实例化Bean ...

  3. android html 与webview属性从冲突

    在最近的项目开发中,使用webview加载html页面,这样可以节省大量页面开发的时间,同时也可加快项目进度. 我们需求是需要显示商品评论,页面设计如下: 调用android代码,对于webview的 ...

  4. 使用SQL联合查询来构建临时vo对象的应用

    联合查询: 表1: team球队表 表2:schedule 赛程表 需要数据: 球队名称.主队ID.主队名称.客队ID.客队名称.胜负情况 方法1. Object数组取出列和数值 import jav ...

  5. [CS231n-CNN] Training Neural Networks Part 1 : activation functions, weight initialization, gradient flow, batch normalization | babysitting the learning process, hyperparameter optimization

    课程主页:http://cs231n.stanford.edu/   Introduction to neural networks -Training Neural Network ________ ...

  6. 搭建WebRtc环境

    0.前言 这次的需求,准备做的是一个类似与QQ视频一样的点对点视频聊天.这几天了解了一些知识后,决定使用HTML5新支持的WebRtc来作为视频通讯.客户端使用支持HTML5浏览器即可.服务器段需要提 ...

  7. 使用JavaScript判断用户是否为手机设备

    最近在做微信服务号开发,其中遇到一个问题是微信服务号查看的个人的消息,如果点击在浏览器中查看(iOS中是在Safari中打开)应该是跳转到登录页面,因为页面需要从后台获取,因为需要服务端判断,如果是存 ...

  8. 如何交换两个等长整形数组使其数组和的差最小(C和java实现)

    1. 问题描述: 有两个数组a,b,大小都为n,数组元素的值任意整形数,无序: 要求:通过交换a,b中的元素,使[数组a元素的和]与[数组b元素的和]之间的差最小. 2. 求解思路: 当前数组a和数组 ...

  9. HandlerMethodArgumentResolver数据绑定无效

    因项目中action参数过多,并且是一些通用的查询参数,所以准备进行对参数统一封装为Map对象,然后由action中传入service中进行处理,查询spring的资料发现可以通过实现HandlerM ...

  10. linux分享六:nohup与&,守护进程

    contab每秒执行脚本,然后将把标准错误重定向到标准输出(2>&1)以追加的方式写入log_cronjob.txt.补充:试想2>1代表什么,2与>结合代表错误重定向,而1 ...