Рано или поздно приходит необходимость в контроле за открытыми портами. Причины могут быть разные, но суть одна — появление нового открытого порта, когда это происходит без ведома администратора — большая тревога. Что бы не допускать нервных ситуаций, делюсь своим вариантом решения вопроса.
Порты сканируются с учетом 16-битной адресации (2^16 = 65536, начало — 0) с записью результатов в базу данных MongoDB. Запись результатов предусматривает следующие значения: Далее сам код, гарантированно работающий в связке Ubuntu, Python 3, MongoDB 3.2.11. #!/usr/bin/python3
# -*- coding: utf-8 -*-
# Простой скрипт для сканирования устройств в сети
# с учетом 16-битной адресации (2^16 = 65536, начало 0)
# с записью результата в базу данных MongoDB
# Импортируем необходимые модули
import pymongo
import socket
import time
from datetime import datetime
from pymongo import MongoClient
# Создаем базу данных
# Адрес по умолчанию localhost:27017
connection = pymongo.MongoClient()
db = conne