Установка утилиты nmap из исходников

Posted by

Добрый день! Почему-то вдруг перестала запускаться утилита на моей рабочей станции (HP dv6-3080er) с операционной системой .4 Desktop amd64.

Выдавало следующее при попытке просканировать удаленный ресурс:

keiz@dv6:~$ nmap -v -A 192.168.1.50

Starting Nmap 5.21 ( http://nmap.org ) at 2014-05-19 20:31 MSK

/usr/share/nmap/nse_main.lua:464: ‘version’ did not match a category, filename, or directory

stack traceback:

[C]: in function ‘error’

/usr/share/nmap/nse_main.lua:464: in function ‘get_chosen_scripts’

/usr/share/nmap/nse_main.lua:766: in main chunk

[C]: ?

QUITTING!

Дабы не тратить время на разбор что не так, решил сделать по простому, просто установить версию 6.40 из исходников в систему и соответственно пошагово разобрать все шаги от и до:

Удаляю установленное приложение nmap из системы:

keiz@dv6:~$ sudo apt-get remove nmap -y

keiz@dv6:~$ sudo rm -r /usr/share/nmap/

Скачиваю новую версию приложения nmap:

keiz@dv6:~$ wget http://nmap.org/dist/nmap-6.40.tar.bz2

keiz@dv6:~$ tar -jxvf nmap-6.40.tar.bz2

(на 04.07.2015 доступная версия: http://nmap.org/dist/nmap-6.47.tar.bz2)

keiz@dv6:~$ cd nmap-6.40/

keiz@dv6:~/nmap-6.40$ ./configure

NMAP IS A POWERFUL TOOL — USE CAREFULLY AND RESPONSIBLY

Configuration complete. Type make (or gmake on some *BSD machines) to compile.

keiz@dv6:~/nmap-6.40$ make "LUA_LIBS=../liblua/liblua.a -ldl -lm"

keiz@dv6:~/nmap-6.40$ sudo checkinstall

sudo: checkinstall: команда не найдена

keiz@dv6:~/nmap-6.40$ sudo apt-get install checkinstall

keiz@dv6:~/nmap-6.40$ sudo checkinstall

после выполнения данной выше команды в каталоге появится скомпонованный deb пакет:

/home/keiz/nmap-6.40/nmap_6.40-1_amd64.deb

Устанавливаем его:

keiz@dv6:~/nmap-6.40$ sudo dpkg -i nmap_6.40-1_amd64.deb

(Чтение базы данных … на данный момент установлено 529060 файлов и каталогов.)

Подготовка к замене пакета nmap 6.40-1 (используется файл nmap_6.40-1_amd64.deb) …

Распаковывается замена для пакета nmap …

Настраивается пакет nmap (6.40-1) …

Обрабатываются триггеры для man-db …

Проверяю версию приложения:

keiz@dv6:~/nmap-6.40$ nmap -version

Nmap version 6.40 ( http://nmap.org )

Отлично. Процесс разобран.

А это вот также процесс установки, но сделанные ранее на другой системе, здесь в ходе установки были выявлены другие ошибки, но все же установка прошла успешно и проблемы были разрешены:

ekzorchik@srv-mon:~$ wget http://nmap.org/dist/nmap-6.40.tar.bz2

ekzorchik@srv-mon:~$ tar -jxvf nmap-6.40.tar.bz2

ekzorchik@srv-mon:~$ cd nmap-6.40/

ekzorchik@srv-mon:~/nmap-6.40$ ./configure

ekzorchik@srv-mon:~/nmap-6.40$ make "LUA_LIBS=../liblua/liblua.a -ldl -lm"

/bin/sh: 1: g++: not found

make: *** [makefile.dep] Error 127

если у вас данная ошибка, то в систему нужно доустановить данный пакет столь необходимый при компиляции утилиты:

ekzorchik@srv-mon:~$ sudo apt-get install gcc g++ -y

ekzorchik@srv-mon:~/nmap-6.40$ ./configure

ekzorchik@srv-mon:~/nmap-6.40$ make "LUA_LIBS=../liblua/liblua.a -ldl -lm"

Nping compiled successfully!

make[3]: Leaving directory `/home/ekzorchik/nmap-6.40/nping’

make[2]: Leaving directory `/home/ekzorchik/nmap-6.40/nping’

make[1]: Leaving directory `/home/ekzorchik/nmap-6.40′

На этот раз компиляция проходит без проблем

Далее делаем:

ekzorchik@srv-mon:~/nmap-6.40$ sudo checkinstall

sudo: checkinstall: command not found

ekzorchik@srv-mon:~/nmap-6.40$ apt-cache search checkinstall

checkinstall — installation tracker

ekzorchik@srv-mon:~/nmap-6.40$ sudo apt-get install checkinstall -y

ekzorchik@srv-mon:~/nmap-6.40$ sudo checkinstall

Copying files to the temporary directory…

OK

Stripping ELF binaries and libraries…OK

Compressing man pages…OK

Building file list…OK

Building Debian package…OK

Installing Debian package…OK

Erasing temporary files…OK

Writing backup package…OK

OK

Deleting temp dir…OK

**********************************************************************

Done. The new package has been installed and saved to

/home/ekzorchik/nmap-6.40/nmap_6.40-1_amd64.deb

You can remove it from your system anytime using:

dpkg -r nmap

в итоге в каталоге будет сформирован deb файл под вашу архитектуру который уже в последствии можно легко установить в систему:

ekzorchik@srv-mon:~/nmap-6.40$ file nmap_6.40-1_amd64.deb

nmap_6.40-1_amd64.deb: Debian binary package (format 2.0)

ekzorchik@srv-mon:~/nmap-6.40$ sudo dpkg -i nmap_6.40-1_amd64.deb

(Reading database … 56245 files and directories currently installed.)

Preparing to replace nmap 6.40-1 (using nmap_6.40-1_amd64.deb) …

Unpacking replacement nmap …

Setting up nmap (6.40-1) …

Processing triggers for man-db …

Проверяем установленную версию пакета nmap:

ekzorchik@srv-mon:~$ nmap -V

Nmap version 6.40 ( http://nmap.org )

Platform: x86_64-unknown-linux-gnu

Compiled with: nmap-liblua-5.2.2 nmap-libpcre-7.6 nmap-libpcap-1.2.1 nmap-libdnet-1.12 ipv6

Compiled without: openssl

Available nsock engines: epoll poll select

Вот собственно и весь пошаговый процесс, на этом все, с уважением ekzorchik.

Leave a Reply

Ваш e-mail не будет опубликован. Обязательные поля помечены *

20 + 2 =