在Linux上安装和配置CSF(配置服务器安全和防火墙)
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(配置服务器安全和防火墙)的更多相关文章
- Linux上安装jdk1.8和配置环境变量
前言 Linux 上安装jdk1.8 和配置环境变量,参考相关文档,本人在此总结,操作归纳如下. 第一步:创建jdk安装目录(该/usr/local/src 目录是空的,最好把我们自己下载的放到这,容 ...
- 【BI学习笔记】在Linux上安装Wyn Enterprise商业智能报表服务器
在百度文库上找来的,放到这里,避免以后丢了. 葡萄城出品的Wyn Enterprise商业智能软件的设计器和查看视图是通过浏览器使用的,不需要安装专门的程序.Wyn Enterprise的服务器端可以 ...
- Linux上安装MySQL及其基础配置
本文主要介绍Linux下使用yum安装MySQL,以及启动.登录和远程访问MySQL数据库. 1.安装 查看有没有安装过: yum list installed mysql* rpm -qa | gr ...
- Linux上安装JDK环境变量配置
http://blog.chinaunix.net/uid-12115233-id-3304951.html Jdk: jdk-6u1-linux-i586 Tomcat: apache-tomcat ...
- linux上安装配置samba服务器
linux上安装配置samba服务器 在linux上安装配置samba服务器 在这给大家介绍一个不错的家伙,samba服务.如果您正在犯愁,如何在Windows和Linux之间实现资源共享,就请看看这 ...
- redis3.0.5在linux上安装与配置
redis3.0.5在linux上安装与配置 rhel6/ubuntu14 1 下载 # wget http://download.redis.io/releases/redis-3.0.5.tar. ...
- Linux上安装配置Keepalived
Linux上安装配置Keepalived 1.下载 自行去Keepalived官网进行下载,也可以通过如下链接进行下载2.0.18版本(目前的稳定版) 链接:https://pan.baidu.com ...
- IDM主机上安装融合应用程序配置框架
IDM主机上安装融合应用程序配置框架 安装Oracle融合应用程序>设置>身份和访问管理节点安装融合应用程序配置框架 由于我们使用Oracle VirtualBox虚拟机这一次,我们在 ...
- Linux上进行常用软件的配置
当拿到一个新的linux服务器的时候一般要经过以下5个配置 修改HOSTANME vi /etc/sysconfig/network 修改HOSTNAME和IP的映射 ...
- Linux下安装php环境并且配置Nginx支持php-fpm模块[www]
Linux下安装php环境并且配置Nginx支持php-fpm模块 http://www.cnblogs.com/freeweb/p/5425554.html 5分钟搭建 nginx +php --- ...
随机推荐
- Leetcode题目300.最长上升子序列(动态规划-中等)
题目描述: 给定一个无序的整数数组,找到其中最长上升子序列的长度. 示例: 输入: [10,9,2,5,3,7,101,18] 输出: 4 解释: 最长的上升子序列是 [2,3,7,101],它的长度 ...
- pwn学习日记Day6 基础知识积累
知识杂项 ELF:在计算机科学中,是一种用于二进制文件.可执行文件.目标代码.共享库和核心转储格式文件. char fgets(char buf, int bufsize, FILE stream); ...
- js中两个感叹号的原理与用法分析
在javascript中有时会看到有两个!!的用法 var foo; alert(!foo);//undifined情况下,一个感叹号返回的是true; alert(!goo);//null情况下,一 ...
- ph:做参考
1 波动学 <伯克利物理学教程>第三卷 上.下册2 场论(朗道)3 场论与粒子物理学(上册)(李政道)出国留学必备书之一!4 场论与粒子物理学(下册)(李政道)5 非平衡态热力 ...
- 深入理解Android插件化技术
深入理解Android插件化技术 转 https://zhuanlan.zhihu.com/p/33017826 插件化技术可以说是Android高级工程师所必须具备的技能之一,从2012年插件化概 ...
- php判断为空就插入,判断不为空就更新
if ($_GET['tplname']!==null) { if ($userinfo[0] == ''){$exec="INSERT INTO cblej_company_pc_temp ...
- 阶段5 3.微服务项目【学成在线】_day02 CMS前端开发_25-前后端请求响应流程小结
看图
- JAVA 基础编程练习题32 【程序 32 左移右移】
32 [程序 32 左移右移] 题目:取一个整数 a 从右端开始的 4-7 位. 程序分析:可以这样考虑: (1)先使 a 右移 4 位. (2)设置一个低 4 位全为 1,其余全为 0 的数.可用~ ...
- 从MOV PC,PC;(或者ADDPC,PC,#4 )看ARM的三级流水线过程
3级流水线如上图所示(PC为程序计数器),流水线使用3个阶段,因此指令分3个阶段执行. ⑴ 取指从存储器装载一条指令 ⑵ 译码识别将要被执行的指令 ⑶ 执行处理指令并将结果写会寄存器 以前学过的51单 ...
- Spark On YARN启动流程源码分析(一)
本文主要参考: a. https://www.cnblogs.com/yy3b2007com/p/10934090.html 0. 说明 a. 关于spark源码会不定期的更新与补充 b. 对于spa ...