
nray распределенный сканер портов
Nray — это бесплатный, независимый от платформы и архитектуры сканер портов и прикладного уровня.
nray работает в распределённом режиме, чтобы ускорить сканирование и выполнять его с разных точек обзора.
Результаты на основе событий позволяют дополнительно обрабатывать информацию во время сканирования, например, с помощью таких инструментов, как jq.
Если вы ищете пользовательскую документацию, загляните на домашнюю страницу проекта. Информацию о разработке и внесении вклада в nray читайте далее.
Вы можете собрать проект после клонирования репозитория с помощью команды go build.
Nray написан на чистом Go, и были приняты меры, чтобы выбрать только те зависимости, которые также соответствуют этому требованию, поэтому стандартной установки Go (плюс git) достаточно для сборки nray на любой поддерживаемой платформе — это означает, что нет зависимости от таких библиотек, как libpcap.
Тем не менее, существует makefile, предназначенный для сборки производственных версий (make release) — он гарантирует, что не будут включены зависимости на языке C и из бинарных файлов будут удалены символы для экономии места. Кроме того, автоматически создаются бинарные файлы для наиболее распространённых операционных систем. Вызов make соберёт локальную версию для разработки, адаптированную под вашу текущую ОС и архитектуру, с подключёнными библиотеками C и детектором гонок Go.
Просто выполните go build — если требуется кросскомпиляция, параметры GOOS и GOARCH управляют целевой ОС и архитектурой. Для узлов можно внедрить адрес и порт сервера непосредственно в бинарный файл: go build -ldflags "-X main.server=10.0.0.1 -X main.port=8601". Чтобы получить меньшие бинарники, удалите ненужное с помощью -ldflags="-s -w" при вызове go build. Если вам нужно пересобрать схемы protobuf (это не требуется, если вы не меняете протокол передачи данных!), выполните make create-schemas (для этого требуется компилятор protobuf в вашей системе).
Просто возьмите код и исправьте то, что вас раздражает, или добавьте новые классные функции! Любой вклад приветствуется, и цель — сделать nray отличным проектом для пользователей и участников!
Ваш код должен проходить стандартные проверки, выполняемые с помощью go vet и go lint. Nray всегда разрабатывается под последнюю версию Go, поэтому, если у вас возникли проблемы со сборкой nray, проверьте, установлена ли у вас последняя версия go.
Авторское право 2019, Michael Eder. Лицензировано под GPLv3. См. LICENSE.