学派吧-linux如何利用CSF防火墙屏蔽恶意请求的详细介绍-linux教程

学派吧-本篇文章主要介绍了linux利用CSF防火墙屏蔽恶意请求,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

问题
最近不知道为什么,恶意代理的请求数越来越多,明明我返回的都是403Forbidden,但是由于数量实在庞大,还是消耗了我大量的带宽和资源。之前的方法已经没有用了,想了半天还是研究研究防火墙吧,虽然仅仅靠Apache也能对某些IP进行黑名单设置,但是感觉还是有点麻烦的。比如最常见的用iptables,或者是ufw,虽然都能很好的做到管理,但是他们基本都需要一条一条的加,十分麻烦。

网上搜索了下,找到了一个挺方便的小工具–CSF(ConfigServer & Security Firewall),这个工具据说除了能够方便的管理IP blacklist,而且也能稍加配置抵御一定量的DDOS攻击。

安装
工具本身可以在csf工具的官网上下载。

下载并解压后可以参考其中的install.txt的说明进行安装,讲的简洁而且详细,注意给权限就行。需要说明的是,这个工具其实也是基于iptables,只是简化了命令而已。

关于ddos的防护

根据readme.txt的描述,进行ddos防护的功能主要是靠/etc/csf/csf.conf中的配置进行控制的,尤其是当中的PORTFLOOD参数,一般都进行如下设置:

#Syntax for the PORTFLOOD setting:
#PORTFLOOD is a comma separated list of:
port;protocol;hit count*;interval seconds
#So, a setting of PORTFLOOD = "22;tcp;5;300,80;tcp;20;5" means:
#1. If more than 5 connections to tcp port 22 within 300 seconds, then block
#that IP address from port 22 for at least 300 seconds after the last packet is
#seen, i.e. there must be a "quiet" period of 300 seconds before the block is
#lifted
#2. If more than 20 connections to tcp port 80 within 5 seconds, then block
#that IP address from port 80 for at least 5 seconds after the last packet is
#seen, i.e. there must be a "quiet" period of 5 seconds before the block is
#lifted

这个可以根据个人需要修改。

关于black list

blacklist 就在/etc/csf/csf.deny里,可以有多种书写方式,在该文件的顶部描述的十分清楚:

###############################################################################
# Copyright 2006-2017, Way to the Web Limited
# URL: http://www.configserver.com
# Email: sales@waytotheweb.com
###############################################################################
# The following IP addresses will be blocked in iptables
# One IP address per line
# CIDR addressing allowed with a quaded IP (e.g. 192.168.254.0/24)
# Only list IP addresses, not domain names (they will be ignored)
#
# Note: If you add the text "do not delete" to the comments of an entry then
# DENY_IP_LIMIT will ignore those entries and not remove them
#
# Advanced port+ip filtering allowed with the following format
# tcp/udp|in/out|s/d=port|s/d=ip
#
# See readme.txt for more information regarding advanced port filtering
#

简要概括就是每一行代表一个ip,也可以代表一个ip段(CIDR),而且我们也可以加注释,甚至可以指定端口和协议。
最后,在做出修改后想要生效记得用csf -r命令。

针对恶意代理请求的防护方案

当然,我用这个的目的是为了根本解决之前的恶意代理占用带宽的问题。有了这个工具,就可以十分轻松的进行控制了,思路如下:

  1. 首先,搜索Apache的log(/var/log/apache2/access.log),查找所有应被屏蔽的log条目(我这里指的是所有被403的请求)。

  2. 然后,提取每条Log记录对应的ip地址。

  3. 对结果进行排序去重,生成black list。

  4. blacklist 写入csf.deny

  5. 重启csf防护服务。

实现起来超级简单:

代码如下:

root@server:~# cat /var/log/apache2/access.log |grep \ 403\ |awk '{print $1}'|sort|uniq >> /etc/csf/csf.deny

可以手动查看下结果是否正确,确认之后既可以csf -r重启服务了。

以上就是linux如何利用CSF防火墙屏蔽恶意请求的详细介绍的详细内容,更多请关注学派吧其它相关文章!

主题测试文章,只做测试使用。发布者:云大使,转转请注明出处:https://www.xp8.net/server/2789.html

(0)
打赏 微信扫一扫 微信扫一扫
云大使的头像云大使
上一篇 2018年12月19日 下午9:49
下一篇 2019年1月1日 上午10:02

相关推荐

  • 重启网卡报Job for network.service failed because the control process exited with error code报错

    今天给腾讯云配置弹性IP。并使用多IP。配置好以后。重启网卡失败。。查了很多资料。终于解决。现在给整理出来。 [root@mina0 hadoop]# systemctl restart network Job for network.service failed because the control process exited with error c…

    2019年7月25日
    5.8K00
  • 学派吧-Linux下安装配置MySQL的教程-linux教程

    mysql最流行的关系型数据库之一,目前隶属于oracle公司,因体积小、速度快、总体拥有成本低,开放源代码这一特点,所以是我们日常开发的首选。下面我们来看看如何在Linux下安装配置MySQL 系统:Ubuntu 16.04LTS 1\官网下载mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz 2\建立工作组: $su #g…

    服务器运维 2018年12月19日
    2.6K00
  • 如何在macOS上安装Homebrew的图文教程-学派吧

    Homebrew是最受欢迎的macOS系统包管理工具,使用brew命令行实用程序,可以轻松地在Mac上添加新软件包,但首先必须安装它。本篇文章将介绍如何使用简单命令在系统上安装Homebrew。 如何安装Homebrew? 在系统上启动终端(/applications/utilities/terminal)应用程序,然后在其上运行以下命令。 $ ruby -…

    服务器运维 2019年5月7日
    3.3K00
  • 学派吧-Linux不常用却很有用的命令-linux教程

    which命令 用于查找并显示给定命令的绝对路径,环境变量PATH中保存了查找命令时需要遍历的目录。which命令会在环境变量PATH设置的目录里查找符合条件的文件。也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令。 whereis命令 用来定位命令的二进制程序、源代码文件和man手册页等相关文件的路径。 loc…

    服务器运维 2018年12月19日
    2.1K00
  • Nginx利用fastcgi_cache缓存php页面教程

    前言 配置 1. 在nginx的主配置文件 2. 站点配置 3.验证 4. 遇到问题 前言 fastcgi_cache是一个nginx的插件,用于缓存fastcgi接口的执行结果,例如缓存php的执行结果。特别是php网站的首页与一些非交互页面,利用fastcgi_cache可以大幅度提升访问速度,并且降低php的执行压力。 配置 1. 在nginx的主配置…

    服务器运维 2018年10月16日
    3.4K00

发表回复

登录后才能评论
联系我们

联系我们

18838889666

在线咨询: QQ交谈

邮件:xinyun@88.com

工作时间:周一至周五,9:30-18:30,节假日休息

添加微信
添加微信
分享本页
返回顶部
---------官方优惠叠加渠道折扣:通过我们购买腾讯云/阿里云,价格更低,服务更优。更有专业配置指导与服务。微信同步:18838889666----