class LogIP: def __init__(self): self.listip = IPList() # Загрузить белый список self.excludeip = IPList() # downloadList('/etc/whitelist.list') self.ippattern = '\d{1,3}\.\d{1,3}.\d{1,3}\.\d{1,3}' def setExcludeIP(self, filename): self.excludeip = downloadList(filename) def getListIP(self, filename, patterns): ''' Получить список IP ''' f = open(filename, 'r') for i, line in enumerate(f): line = line.replace("\n", "") for pattern in patterns: match = re.search(pattern, line) if match: match = re.findall(self.ippattern, line) if match: for item in match: if not self.listip.isRFC(item): if not self.excludeip.Search(item): self.listip.Add(item) f.close()
def __init__(self): self.listip = IPList() # Загрузить белый список self.excludeip = IPList() # downloadList('/etc/whitelist.list') self.ippattern = '\d{1,3}\.\d{1,3}.\d{1,3}\.\d{1,3}'
class MachineInfo(jsl.Document): osversion = jsl.DocumentField(OSVersion(), as_ref=True) hostnameinfo = jsl.DocumentField(HostnameInfo(), as_ref=True) iplist = jsl.DocumentField(IPList(), as_ref=True) rpm_packages = jsl.DocumentField(RPMPackages(), as_ref=True)