CSF是国外一家小公司开发的linux系统免费防火墙,它基于iptables工作,能有效缓解服务器压力,具有自动屏蔽暴力破解密码IP、管理开放端口、免疫轻量DDos和CC等等功能,同时,安装和使用也极为简便,在我们常用的DA和CP面板还有图形化操作界面,也支持个人普通用户安装于LNMP环境下使用。

yum install perl-libwww-perl perl iptables

第1步:下载CSF源存档
从它的官方网站下载最新的档案CSF的源代码。然后提取源代码。 # cd /opt
# wget http://www.configserver.com/free/csf.tgz
# tar xzf csf.tgz 第2步:安装CSF
CSF提供和bash脚本轻松的在任何操作系统上安装。这个脚本自动检测您的操作系统,并安装CSF。运行install.sh脚本。 # cd /opt/csf
# sh install.sh 第3步:测试iptables模块
运行csftest.pl perl脚本,以验证是否所有所需的iptables模块系统,使上安装是正常的工作。 # perl /usr/local/csf/bin/csftest.pl Testing ip_tables/iptable_filter...OK
Testing ipt_LOG...OK
Testing ipt_multiport/xt_multiport...OK
Testing ipt_REJECT...OK
Testing ipt_state/xt_state...OK
Testing ipt_limit/xt_limit...OK
Testing ipt_recent...OK
Testing xt_connlimit...OK
Testing ipt_owner/xt_owner...OK
Testing iptable_nat/ipt_REDIRECT...OK
Testing iptable_nat/ipt_DNAT...OK RESULT: csf should function on this server 第4步:启用和重新启动CSF
在系统上成功安装CSF后,您需要更改按照csf.conf设置,启用CSF。 # vim /etc/csf/csf.conf TESTING=0 现在重新启动防火墙CSF重新加载,使用下面的命令加载新的变化。 # cd /etc/csf
# csf -r CSF配置文件地址:/etc/csf/csf.conf 白名单:/etc/csf/csf.allow 黑名单:/etc/csf/csf.deny 主要的配置信息,在csf.conf中,包括常用的端口开放,各项设定完成后,将测试模式关闭(TESTING = "0"). 卸载CSF: cd /etc/csf
sh uninstall.sh 防止DDOS攻击
配置CSF + LDF以防止服务器的DDOS攻击。要启用它下面的设置,编辑/etc/csf/csf.conf和更新。 总数从单个主机允许的连接。要禁用此功能,将此设置为0 CT_LIMIT = "20" 在几秒钟内连接跟踪时间间隔。 CT_INTERVAL = "30" 每个发送的电子邮件警报封IP。 CT_EMAIL_ALERT =1 设置为1来阻止IPS永久性的。 CT_PERMANENT = 1 如果您选择了CT临时IP块,再下面是区间 以秒为IP将仍然受阻 CT_BLOCK_TIME = 1800 如果你只想计算特定端口(如22,23,80,443),然后添加端口。否则保持空检查所有端口 CT_PORTS = "22,23,80,443" 禁用测试: sudo perl -pi -w -e "s/TESTING = \"1\"/TESTING = \"0\"/" /etc/csf/csf.conf 忽略允许列表中的IP地址: sudo perl -pi -w -e "s/IGNORE_ALLOW = \"0\"/IGNORE_ALLOW = \"1\"/" /etc/csf/csf.conf 安装程序将为你添加systemd服务文件,你可以通过运行来启动它: sudo systemctl enable --now csf 确认服务状态,运行sudo systemctl status csf命令查看: CSF使用示例 1、阻止IP或子网: sudo csf -d 192.168.0.20 sudo csf -d 192.168.0.0/24 输出内容如下: Adding 192.168.0.20 to csf.deny and iptables DROP… DROP all opt -- in !lo out * 192.168.0.20 -> 0.0.0.0/0 LOGDROPOUT all opt -- in * out !lo 0.0.0.0/0 -> 192.168.0.20 2、从阻止列表中删除IP/子网: $ sudo csf -dr 192.168.0.20 Removing rule… DROP all opt -- in !lo out * 192.168.0.20 -> 0.0.0.0/0 LOGDROPOUT all opt -- in * out !lo 0.0.0.0/0 -> 192.168.0.20 3、在防火墙上允许IP地址: $ sudo csf -a 192.168.15.15 Adding 192.168.15.15 to csf.allow and iptables ACCEPT… ACCEPT all opt -- in !lo out * 192.168.15.15 -> 0.0.0.0/0 ACCEPT all opt -- in * out !lo 0.0.0.0/0 -> 192.168.15.15 4、阻止某些国家/地区 编辑CC_DENY行: # Each option is a comma separated list of CC's, e.g. "US,GB,DE" CC_DENY = "" CC_ALLOW = "" 5、参阅侦听连接的端口: $ sudo csf -p 侦听外部连接的端口以及在其后面运行的可执行文件 6、用户通过ssh登录时发送电子邮件: LF_SSH_EMAIL_ALERT = "1" 设置警报电子邮件: LF_ALERT_TO = "alerts@example.com" 向你自己发送有关安全检查的电子邮件: csf -m myemail@example.com 配置访问CSF Web UI的方法 CSF集成了可用于配置的Web UI,在/etc/csf/csf.conf文件上启用UI: UI = "1" 你还可以为以下项设置自定义值: # Set this to the port that want to bind this service to UI_PORT = "6666" # Leave blank to bind to all IP addresses on the server UI_IP = "" UI_USER = "admin" UI_PASS = "StrongAdminPassword" 然后将IP地址添加到白名单: sudo echo "YOUR_IP_ADDRESS" >> /etc/csf/ui/ui.allow 启动或重新启动lfd服务: $ sudo systemctl enable --now lfd $ systemctl status lfd

在Linux上安装和配置CSF(配置服务器安全和防火墙)的更多相关文章

  1. Linux上安装jdk1.8和配置环境变量

    前言 Linux 上安装jdk1.8 和配置环境变量,参考相关文档,本人在此总结,操作归纳如下. 第一步:创建jdk安装目录(该/usr/local/src 目录是空的,最好把我们自己下载的放到这,容 ...

  2. 【BI学习笔记】在Linux上安装Wyn Enterprise商业智能报表服务器

    在百度文库上找来的,放到这里,避免以后丢了. 葡萄城出品的Wyn Enterprise商业智能软件的设计器和查看视图是通过浏览器使用的,不需要安装专门的程序.Wyn Enterprise的服务器端可以 ...

  3. Linux上安装MySQL及其基础配置

    本文主要介绍Linux下使用yum安装MySQL,以及启动.登录和远程访问MySQL数据库. 1.安装 查看有没有安装过: yum list installed mysql* rpm -qa | gr ...

  4. Linux上安装JDK环境变量配置

    http://blog.chinaunix.net/uid-12115233-id-3304951.html Jdk: jdk-6u1-linux-i586 Tomcat: apache-tomcat ...

  5. linux上安装配置samba服务器

    linux上安装配置samba服务器 在linux上安装配置samba服务器 在这给大家介绍一个不错的家伙,samba服务.如果您正在犯愁,如何在Windows和Linux之间实现资源共享,就请看看这 ...

  6. redis3.0.5在linux上安装与配置

    redis3.0.5在linux上安装与配置 rhel6/ubuntu14 1 下载 # wget http://download.redis.io/releases/redis-3.0.5.tar. ...

  7. Linux上安装配置Keepalived

    Linux上安装配置Keepalived 1.下载 自行去Keepalived官网进行下载,也可以通过如下链接进行下载2.0.18版本(目前的稳定版) 链接:https://pan.baidu.com ...

  8. IDM主机上安装融合应用程序配置框架

    IDM主机上安装融合应用程序配置框架   安装Oracle融合应用程序>设置>身份和访问管理节点安装融合应用程序配置框架 由于我们使用Oracle VirtualBox虚拟机这一次,我们在 ...

  9. Linux上进行常用软件的配置

    当拿到一个新的linux服务器的时候一般要经过以下5个配置    修改HOSTANME        vi /etc/sysconfig/network    修改HOSTNAME和IP的映射     ...

  10. Linux下安装php环境并且配置Nginx支持php-fpm模块[www]

    Linux下安装php环境并且配置Nginx支持php-fpm模块 http://www.cnblogs.com/freeweb/p/5425554.html 5分钟搭建 nginx +php --- ...

随机推荐

  1. csp-s模拟109

    这场考试状态是极差,也因而无畏地打下了三个乱搞.然而这场确实挺乱搞.T1状压但我没优化而选择循环展开,T2打$bitset$随机化(考场上打的有问题不是随机但也能A),T3贪心骗分.但是因为状态实在太 ...

  2. 7 AOP

    AOP:Aspect Oriented Programming 面向切面编程.AOP是对面向对象编程的一种补充,在运行时动态地将代码切入到类的指定方法.指定位置的编程思想.将不同的方法的同一位置抽象成 ...

  3. Winform 工程反编译后窗体如何显示

    Winform反编译后,如果想要让它象正常的工程一样,可以在窗体编辑器中,编辑,需要做一些工作. 1.  转换.resources 为 .resx 利用resgen工具.这个工具是vs自带的. 在启动 ...

  4. UNIX 历史问题 分布式系统的Thundering Herd效应 惊群效应

    https://uwsgi-docs.readthedocs.io/en/latest/articles/SerializingAccept.html One of the historical pr ...

  5. CentOS7下安装php-redis扩展

    yum -y install php70w-pecl-redis

  6. kotlin之函数的基本用法

    fun main(arg: Array<String>) { val )//调用函数 print(double) } fun double(x:Int):Int{ *x } kotlin函 ...

  7. html+大文件上传

    前言:因自己负责的项目(jetty内嵌启动的SpringMvc)中需要实现文件上传,而自己对java文件上传这一块未接触过,且对 Http 协议较模糊,故这次采用渐进的方式来学习文件上传的原理与实践. ...

  8. JAVA 基础编程练习题43 【程序 43 求奇数个数】

    43 [程序 43 求奇数个数] 题目:求 0—7 所能组成的奇数个数. package cskaoyan; public class cskaoyan43 { @org.junit.Test pub ...

  9. [C++/JavaScript]数据结构:栈和数列>案例引入(数制的转换)

    1 案例1:数制的转换 1.1 背景与原理 1.2 编程复现 (JavaScript版 复现) function convert(value, d){ stack = []; // 栈 result ...

  10. Flutter打包release版本安卓apk包真机安装无法请求网络的解决方法

    今天flutter build apk打包了一个release.apk包,在真机上安装后网络数据都不显示,但是在模拟器上没问题,然后又连接真机开debug各种测试,一切都正常!那这会是什么问题呢? 查 ...