• 在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
    
    
  • 相关阅读:
    jsTree获取选中节点和选中指定节点
    jsTree的checkbox默认选中和隐藏
    ElasticSearch 报错 failed to obtain node locks
    jstree单选功能的实现方法
    layui 报错 jQuery is not defined
    ssdb make 失败 autoconf required
    No package gcc48-c++ available
    查看yum已安装的包
    PHP 生成 UUID
    [构造][dfs树][树的重心][LOJ#3176]「IOI2019」景点划分
  • 原文地址:https://www.cnblogs.com/sanduzxcvbnm/p/11636384.html
Copyright © 2020-2023  润新知