Я запускаю скрипт Python, который выполняет nmap на данном наборе параметров. Точка должна автоматизировать это так, я не должен взаимодействовать с cli вообще. Каждый раз, когда я запускаю свой скрипт, мне предлагают с сообщением об ошибке:
'You requested a scan type which requires root priveleges.\nQUITTING!\n'
Я понимаю, что могу поместить "sudo" перед своей командой, но цель моего сценария не состоит в том, чтобы взаимодействовать с cli вообще. Я дал владение сценария моему пользователю, но все еще имейте ту же ошибку. Существует ли путь, которым я могу выполнить nmap как суперпользователь каждый раз, не имея необходимость давать команду sudo? Вся справка ценится!
Nmap требует корневых полномочий для многих вещей (см. ниже). Из-за этого заманчиво использовать различные схемы (sudo NOPASSWD, setuid, и т.д.), чтобы позволить пользователям выполнять его, не обеспечивая пароль root. Но это чрезвычайно опасно , так как это тривиально для использования Nmap для запуска любой другой команды или оболочки. Например: nmap --script <(echo 'os.execute("/bin/sh")')
, К счастью, Nmap имеет экспериментальная поддержка поддержки Linux . Путем установки Nmap с CAP_NET_RAW
, CAP_NET_ADMIN
, и CAP_NET_BIND_SERVICE
возможности, можно более безопасно позволить непривилегированным пользователям выполнять его. Сам Nmap не может обнаружить, что имеет эти возможности, таким образом, необходимо использовать --privileged
опция сообщить ему, чтобы попытаться использовать их независимо от UID. Больше обсуждения доступно в ссылке выше.
Nmap требует корневых полномочий для всего кроме:
-sT
) -PS
) -sV
) Одно решение состояло бы в том, чтобы добавить, что определенная команда к sudoers
файл,
Cmnd_Alias NMAP = /path/to/nmap, /path/to/script
username ALL=(ALL:ALL) NOPASSWD: NMAP
Что-то вдоль этой строки позволит Вам написать сценарий Вашего sudo
команды, но не должными быть вводить пароль для той команды конкретно. Вы могли принять решение просто сделать это для того сценария / пользовательская комбинация так, чтобы все в сценарии было выполнено как корень, или Вы могли сделать это для эти nmap
команда и иметь многих sudo
записи в Вашем сценарии.
Выбор Ваш яд...