亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python怎么實現集中式的病毒掃描功能

發布時間:2021-04-07 09:52:44 來源:億速云 閱讀:164 作者:小新 欄目:開發技術

小編給大家分享一下python怎么實現集中式的病毒掃描功能,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

一 點睛

本次實踐實現了一個集中式的病毒掃描管理,可以針對不同業務環境定制掃描策略,比如掃描對象、描述模式、掃描路徑、調度頻率等。案例實現的架構圖如下,首先業務服務器開啟clamd服務(監聽3310端口),管理服務器啟用多線程對指定的服務集群進行掃描,掃描模式、掃描路徑會傳遞到clamd,最后返回掃描結果給管理服務器端。

 python怎么實現集中式的病毒掃描功能

本次實戰通過ClamdNetworkSocket()方法實現與業務服務器建立掃描socket連接,再通過啟動不同掃描方式實施病毒掃描并返回結果。

二 代碼

#!/usr/bin/env python
# -*- coding: utf-8 -*-
import time
import pyclamd
from threading import Thread
class Scan(Thread):
  def __init__ (self,IP,scan_type,file):
    """構造方法"""
    Thread.__init__(self)
    self.IP = IP
    self.scan_type=scan_type
    self.file = file
    self.connstr=""
    self.scanresult=""
  def run(self):
    """多進程run方法"""
    try:
      cd = pyclamd.ClamdNetworkSocket(self.IP,3310)
      if cd.ping():
        self.connstr=self.IP+" connection [OK]"
        cd.reload()
        if self.scan_type=="contscan_file":
          self.scanresult="{0}\n".format(cd.contscan_file(self.file))
        elif self.scan_type=="multiscan_file":
          self.scanresult="{0}\n".format(cd.multiscan_file(self.file))
        elif self.scan_type=="scan_file":
          self.scanresult="{0}\n".format(cd.scan_file(self.file))
        time.sleep(1)
      else:
        self.connstr=self.IP+" ping error,exit"
        return
    except Exception,e:
      self.connstr=self.IP+" "+str(e)
IPs=['192.168.0.120']
scantype="multiscan_file"
scanfile="/data"
i=1
threadnum=2
scanlist = []
for ip in IPs:
  currp = Scan(ip,scantype,scanfile)
  scanlist.append(currp)
  if i%threadnum==0 or i==len(IPs):
    for task in scanlist:
      task.start()
    for task in scanlist:
      task.join()
      print task.connstr
      print task.scanresult
    scanlist = []
  i+=1

三 結果

1 無病毒的情況下,掃描結果

E:\Python\python_auto_maintain\venv\Scripts\python.exe E:/Python/python_auto_maintain/4_1_2.py
192.168.0.120 connection [OK]
None

2 有病毒的情況下,掃描結果

2.1 制作病毒測試文件

X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*

2.2 掃描結果

E:\Python\python_auto_maintain\venv\Scripts\python.exe E:/Python/python_auto_maintain/4_1_2.py
192.168.0.120 connection [OK]
{u'/data/EICAR': ('FOUND', 'Eicar-Test-Signature')}

以上是“python怎么實現集中式的病毒掃描功能”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

航空| 皮山县| 高雄市| 广水市| 吉安市| 高青县| 宿迁市| 循化| 潞西市| 象州县| 应城市| 阜宁县| 沙田区| 绩溪县| 安宁市| 涿鹿县| 莆田市| 嘉鱼县| 绥江县| 满洲里市| 巴东县| 年辖:市辖区| 万全县| 安图县| 缙云县| 长乐市| 兴城市| 奉化市| 渭源县| 华宁县| 汝南县| 浦东新区| 包头市| 内丘县| 阿克陶县| 香河县| 绵竹市| 依安县| 大竹县| 宁阳县| 观塘区|