美文网首页
Clamav 流程图和一键安装脚本

Clamav 流程图和一键安装脚本

作者: 猪蹄胖 | 来源:发表于2019-02-13 22:17 被阅读0次

    clamav流程图

    image.png

    一键安装

    搭建clamav,并监听clamd服务,发布对外调用接口

    #!/bin/bash
    ## Date:                2018-09-25
    ## Author               Browser
    ## Describtion          Install clamav
    ## Version:             1.0
    
    ADDRESS=ip addr | grep "inet" | grep -v "inet6" | grep -v "127.0.0.1" | awk -F '[ /]+' '{print $3}'
    
    ###dependence
    yum -y install wget unzip zip gcc gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel llvm-devel libxml2 libxml2-devel libcurl-devel 
    
    ###download and compiling
    wget  https://www.clamav.net/downloads/production/clamav-0.100.1.tar.gz
    tar -zxvf clamav-0.100.1.tar.gz
    cd clamav-0.100.1
    ./configure --prefix=/opt/clamav
    make && make install
    
    ###configure
    cp /opt/clamav/etc/clamd.conf.sample /opt/clamav/etc/clamd.conf
    cp /opt/clamav/etc/freshclam.conf.sample /opt/clamav/etc/freshclam.conf
    
    ### Setting
    groupadd clamav
    useradd clamav -g clamav -s /sbin/nologin
    mkdir -p /opt/clamav/logs
    mkdir -p /opt/clamav/share/clamav
    mkdir -p /opt/clamav/worktmp
    touch /opt/clamav/logs/freshclam.log
    touch /opt/clamav/logs/clamd.log
    chown -R clamav:clamav /opt/clamav
    
    
    
    ###freshclam.conf
    sed -i 's/^Example/\#Example/g' /opt/clamav/etc/freshclam.conf
    sed -i 's/^#DatabaseDirectory\ \/var\/lib\/clamav/DatabaseDirectory\ \/opt\/clamav\/share\/clamav/g' /opt/clamav/etc/freshclam.conf
    sed -i 's/^#UpdataLogFile\ \/var\/log\/freshclam\.log/UpdateLogFile\ \/opt\/clamav\/logs\/freshclam\.log/g' /opt/clamav/etc/freshclam.conf
    sed -i 's/^#PidFile\ \/var\/run\/freshclam\.pid/PidFile\ \/opt\/clamav\/worktmp\/freshclam\.pid/g' /opt/clamav/etc/freshclam.conf
    
    ###clamd.conf
    sed -i 's/^Example/\#Example/g' /opt/clamav/etc/clamd.conf
    sed -i 's/^#LogFile\ \/tmp\/clamd\.log/LogFile\ \/opt\/clamav\/logs\/clamd\.log/g' /opt/clamav/etc/clamd.conf
    sed -i 's/^#PidFile\ \/var\/run\/clamd.pid/PidFile\ \/opt\/clamav\/worktmp\/clamd.pid/g' /opt/clamav/etc/clamd.conf
    sed -i 's/^#DatabaseDirectory\ \/var\/lib\/clamav/DatabaseDirectory\ \/opt\/clamav\/share\/clamav/g' /opt/clamav/etc/clamd.conf
    sed -i 's/^#LocalSocket\ \/tmp\/clamd.socket/LocalSocket\ \/opt\/clamav\/worktmp\/clamd.socket/g' /opt/clamav/etc/clamd.conf
    sed -i 's/^#TCPSocket\ 3310/TCPSocket\ 3310/g' /opt/clamav/etc/clamd.conf
    sed -i "s/^#TCPAddr\ 127\.0\.0\.1/TCPAddr\ $ADDRESS/g" /opt/clamav/etc/clamd.conf
    sed -i 's/^#LogFileMaxSize\ 2M/LogFileMaxSize\ 100M/g' /opt/clamav/etc/clamd.conf
    sed -i 's/^#LogVerbose\ yes/LogVerbose\ yes/g' /opt/clamav/etc/clamd.conf
    sed -i 's/^#LogRotate\ yes/LogRotate\ yes/g' /opt/clamav/etc/clamd.conf
    sed -i 's/^#ExtendedDetectionInfo\ yes/ExtendedDetectionInfo\ yes/g' /opt/clamav/etc/clamd.conf
    sed -i 's/^#FixStaleSocket\ yes/FixStaleSocket\ yes/g' /opt/clamav/etc/clamd.conf
    sed -i 's/^#MaxConnectionQueueLength\ 30/MaxConnectionQueueLength\ 500/g' /opt/clamav/etc/clamd.conf
    sed -i 's/^#MaxThreads\ 20/MaxThreads\ 50/g' /opt/clamav/etc/clamd.conf
    sed -i 's/^#ReadTimeout\ 300/ReadTimeout\ 300/g' /opt/clamav/etc/clamd.conf
    sed -i 's/^#CommandReadTimeout\ 5/CommandReadTimeout\ 5/g' /opt/clamav/etc/clamd.conf
    sed -i 's/^#SendBufTimeout\ 200/SendBufTimeout\ 200/g' /opt/clamav/etc/clamd.conf
    sed -i 's/^#MaxQueue\ 200/MaxQueue\ 500/g' /opt/clamav/etc/clamd.conf
    sed -i 's/^#MaxScanSize\ 150M/MaxScanSize\ 150M/g' /opt/clamav/etc/clamd.conf
    sed -i 's/^#MaxFileSize\ 30M/MaxFileSize\ 150M/g' /opt/clamav/etc/clamd.conf
    sed -i 's/^#StreamMaxLength\ 10M/StreamMaxLength\ 150M/g' /opt/clamav/etc/clamd.conf
    
    ###update virus_data
    /opt/clamav/bin/freshclam
    #如果首次更新失败,可以直接从官网下载病毒库
    #cd /opt/clamav/share/clamav
    #wget http://database.clamav.net/main.cvd
    #wget http://database.clamav.net/daily.cvd
    #wget http://database.clamav.net/bytecode.cvd
    
    ###start the service
    systemctl enable clamav-daemon.service
    systemctl start clamav-daemon.service
    systemctl enable clamav-freshclam.service
    systemctl start clamav-freshclam.service
    
    ###soft connection
    ln -s /opt/clamav/bin/clamscan  /usr/local/bin/clamscan
    ln -s /opt/clamav/bin/freshclam /usr/local/bin/freshclam
    ln -s /opt/clamav/bin/clamdscan  /usr/local/bin/clamdscan
    
    ### 添加定时扫描任务
    mkdir -p /tmp/virus
    echo '0 1 * * * /opt/clamav/bin/clamscan -r -i --move=/tmp/virus  / >/dev/null 2>&1' >>/etc/crontab
    

    接口调用,参数配置

    cat /opt/clamav/etc/clamd.conf | grep -v "^[#|$]" | grep -v "^$"
    LogFile /opt/clamav/logs/clamd.log
    LogFileMaxSize 100M
    LogVerbose yes
    LogRotate yes
    ExtendedDetectionInfo yes
    PidFile /opt/clamav/worktmp/clamd.pid
    DatabaseDirectory /opt/clamav/share/clamav
    LocalSocket /opt/clamav/worktmp/clamd.socket
    FixStaleSocket yes
    TCPSocket 3310
    TCPAddr 192.168.204.11
    MaxConnectionQueueLength 500
    StreamMaxLength 150M
    MaxThreads 50
    ReadTimeout 300
    MaxQueue 100
    MaxScanSize 150M
    MaxFileSize 150M
    

    相关文章

      网友评论

          本文标题:Clamav 流程图和一键安装脚本

          本文链接:https://www.haomeiwen.com/subject/ivpjeqtx.html