Имитация * серверной * активности портов (только программные порты) для академических целей в системе Linux - PullRequest
2 голосов
/ 12 декабря 2011

Я работаю над алгоритмом, который отслеживает поведение портов программного обеспечения и, соответственно, отправляет пользователю уведомления о подозрительной активности по электронной почте.

Этот проект продвигается в 3 частях:

1. Создание или, скорее, то, что я называю имитацией большой активности на портах моих компьютеров.

2. Отслеживание активности порта и использование моего алгоритма для определения подозрительной активности.

3. Отправка электронной почты пользователям с моими выводами.

Из-за этого у меня проблема с , имитирующим много-много активности на нескольких портах программного обеспечения в моей системе . В основном мне нужно необработанные данные для работы. Я имею в виду, что моему алгоритму понадобится большое количество активности порта! теперь у меня нет производственного сервера для себя! Итак, как мне (вроде) реплицировать или моделировать активность портов крупных серверов на моем маленьком рабочем столе? Конечно; На самом деле мне не нужно запускать сотни веб-сайтов, просто нужно достаточно активности порта программного обеспечения, чтобы мой алгоритм имел достаточно данных для работы с ... любыми людьми идеи?

1 Ответ

1 голос
/ 12 декабря 2011

Не знаю, правильно ли я понимаю ваши потребности. «Симулирование» можно представить двумя способами. Тем не менее, вот ответ.

Каков дизайн вашего приложения? Если это «просто» (или «наивно»), то есть вы проверяете фактические порты на машине и *1003* выполняете действия после этого, тогда проблема симуляции заключается в этом проекте.


(остальное основано на этом предположении)

Ваш дизайн должен быть гораздо более модульным, устраняя проблемы и разделяя проблемы. В основном в вашем приложении есть три проблемы: мониторинг физических портов, принятие решений на основе активности логических портов (здесь разделение) и, наконец, поведение уведомлений (отправка электронных писем / что угодно ).

Каждая из этих частей должна быть автономной. Тестируется как есть, без необходимости в других частях приложения.

Результат этой конструкции: тривиальное моделирование. Для части «симуляция» вам нужно только смоделировать вторую проблему, а не первую.

Возможное решение: в компании, в которой я работал некоторое время назад, они создавали низкоуровневое сетевое приложение. Они использовали доску очень успешно. Они заполнили доску событиями, связанными с сетью, и код отреагировал на эти события, возможно, создав новые, которые затем были возвращены на аппаратное обеспечение. Это позволяет им элегантно тестировать приложение в различных сценариях сетевых действий (например, вставлять / извлекать сетевую карту и т. Д.), Не пытаясь на самом деле мучительно фактически моделировать его.


Если ваш вопрос пытался действительно имитировать физическую активность на портах, кто-то, вероятно, может предложить какие-нибудь белые шляпы "имитирующие атаку" продукты / услуги. Возможно, вам понадобится второй компьютер для выдачи сетевой активности извне (поскольку вы, вероятно, отличаете активность локального хоста от внешней сетевой активности).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...