Instalando o Zenmap e mantendo-o atualizado no Slackware Linux
Estive ajudando uma pessoa no fórum do SlackBR a instalar a última versão do Zenmap, que possui a feature de desenhar mapas. Este artigo é bem interessante, pois mostro um script que faz sincronizar com servidor do Zenmap para sempre termos a última versão do programa instalado.
Como instalar o Zenmap de várias maneiras no Slackware Linux
Bom, me empolguei em auxiliar um cara no fórum do Slackware Linux e acabei "inventando" muitas formas de instalar o Zenmap nesta distro. O mais interessante é o script que fiz que sincroniza com a última versão do Zenmap lançada, baixa, compila e instala ("la moda" do Gentoo Linux).
# wget http://repository.slacky.eu/slackware-12.1/libraries/pysqlite/2.4.1/pysqlite-2.4.1-i486-1sl.tgz
# wget http://repository.slacky.eu/slackware-12.1/database/sqlite/2.8.17/sqlite-2.8.17-i486-2sl.tgz
# installpkg pysqlite-2.4.1-i486-1sl.tgz
# installpkg sqlite-2.8.17-i486-2sl.tgz
ou:
# slapt-get install pysqlite
Pegando o pacote oficial da versão estável do Slackware:
# wget http://packages.slackware.it/package.php?q=12.1/nmap-4.60-i486-3
# installpkg nmap-4.60-i486-3
Ou utilizando um gerenciador de pacotes:
# slapt-get install nmap
Compilando o pacote:
# mkdir /tmp/nmap
# cd /tmp/nmap
# wget ftp://ftp.slackware-brasil.com.br/slackware-12.1/source/n/nmap/nmap.SlackBuild
# wget ftp://ftp.slackware-brasil.com.br/slackware-12.1/source/n/nmap/nmap.png
# wget ftp://ftp.slackware-brasil.com.br/slackware-12.1/source/n/nmap/nmap-4.60.tar.bz2
# wget ftp://ftp.slackware-brasil.com.br/slackware-12.1/source/n/nmap/slack-desc
# wget ftp://ftp.slackware-brasil.com.br/slackware-12.1/source/n/nmap/zenmap.desktop.gz
# bash nmap.SlackBuild
Pegando o rpm da última versão, convertendo e instalando:
# wget http://nmap.org/dist/zenmap-4.76-1.noarch.rpm
# rpm2tgz zenmap-4.76-1.noarch.rpm
# installpkg zenmap-4.76-1.noarch.tgz
Altere no arquivo nmap.Slackbuild a linha que tem:
VERSION=${PKGVERSION:-4.60}
Para:
# mkdir /tmp/nmap
# cd /tmp/nmap
# wget ftp://ftp.slackware-brasil.com.br/slackware-12.1/source/n/nmap/nmap.SlackBuild
# wget ftp://ftp.slackware-brasil.com.br/slackware-12.1/source/n/nmap/nmap.png
# wget http://nmap.org/dist/nmap-4.76.tar.bz2
# wget ftp://ftp.slackware-brasil.com.br/slackware-12.1/source/n/nmap/slack-desc
# wget ftp://ftp.slackware-brasil.com.br/slackware-12.1/source/n/nmap/zenmap.desktop.gz
# bash nmap.SlackBuild
Vamos criar um script para ficar sincronizando com o servidor, baixar e compilar a última versão.
Marco Carvalho de Oliveira
Colméia Grupo de Pesquisa em Software Livre
http://demoncyber.wordpress.com/
# wget http://repository.slacky.eu/slackware-12.1/libraries/pysqlite/2.4.1/pysqlite-2.4.1-i486-1sl.tgz
# wget http://repository.slacky.eu/slackware-12.1/database/sqlite/2.8.17/sqlite-2.8.17-i486-2sl.tgz
# installpkg pysqlite-2.4.1-i486-1sl.tgz
# installpkg sqlite-2.8.17-i486-2sl.tgz
ou:
# slapt-get install pysqlite
Pegando o pacote oficial da versão estável do Slackware:
# wget http://packages.slackware.it/package.php?q=12.1/nmap-4.60-i486-3
# installpkg nmap-4.60-i486-3
Ou utilizando um gerenciador de pacotes:
# slapt-get install nmap
Compilando o pacote:
# mkdir /tmp/nmap
# cd /tmp/nmap
# wget ftp://ftp.slackware-brasil.com.br/slackware-12.1/source/n/nmap/nmap.SlackBuild
# wget ftp://ftp.slackware-brasil.com.br/slackware-12.1/source/n/nmap/nmap.png
# wget ftp://ftp.slackware-brasil.com.br/slackware-12.1/source/n/nmap/nmap-4.60.tar.bz2
# wget ftp://ftp.slackware-brasil.com.br/slackware-12.1/source/n/nmap/slack-desc
# wget ftp://ftp.slackware-brasil.com.br/slackware-12.1/source/n/nmap/zenmap.desktop.gz
# bash nmap.SlackBuild
Pegando o rpm da última versão, convertendo e instalando:
# wget http://nmap.org/dist/zenmap-4.76-1.noarch.rpm
# rpm2tgz zenmap-4.76-1.noarch.rpm
# installpkg zenmap-4.76-1.noarch.tgz
Compilando o nmap com a última versão (4.76)
Para compilar e criar o pacote você deve alterar o nmap.Slackbuild em uma linha com a versão que você quer e obviamente também baixar o arquivo com a versão que você quer do site.Altere no arquivo nmap.Slackbuild a linha que tem:
VERSION=${PKGVERSION:-4.60}
Para:
VERSION=${PKGVERSION:-4.76}
# mkdir /tmp/nmap
# cd /tmp/nmap
# wget ftp://ftp.slackware-brasil.com.br/slackware-12.1/source/n/nmap/nmap.SlackBuild
# wget ftp://ftp.slackware-brasil.com.br/slackware-12.1/source/n/nmap/nmap.png
# wget http://nmap.org/dist/nmap-4.76.tar.bz2
# wget ftp://ftp.slackware-brasil.com.br/slackware-12.1/source/n/nmap/slack-desc
# wget ftp://ftp.slackware-brasil.com.br/slackware-12.1/source/n/nmap/zenmap.desktop.gz
# bash nmap.SlackBuild
Sincronizar com a última versão do Zenmap
Criando script para sincronizar com a última versão do Zenmap direto no servidor:Vamos criar um script para ficar sincronizando com o servidor, baixar e compilar a última versão.
wget http://nmap.org/dist/
NAME_VERSION_UPDATE=`grep "nmap.*.tar.bz" index.html | cut -f 6 -d " " | tail -n 1 | sed "s/.tar.bz2//g"`
VERSION_UPDATE=`echo $NAME_VERSION_UPDATE | cut -f 2 -d -`
NAME_VERSION=`ls -w 1 /var/log/packages | grep nmap | sed "s/-i.*$//g"`
VERSION=`echo $NAME_VERSION | cut -f 2 -d -`
for i in `seq 2`
do
cmp1=`echo $VERSION_UPDATE | cut -f $i -d . `
cmp2=`echo $VERSION | cut -f $i -d . `
echo $VERSION_UPDATE
echo $VERSION
if(( $cmp1 > $cmp2 ));then
mkdir /tmp/nmap
cd /tmp/nmap
wget ftp://ftp.slackware-brasil.com.br/slackware-12.1/source/n/nmap/nmap.SlackBuild
sed -s/4.60/$VERSION_UPDATE/g” nmap.SlackBuild > nmap.SlackBuild2 && mv nmap.SlackBuild2 nmap.SlackBuild
wget ftp://ftp.slackware-brasil.com.br/slackware-12.1/source/n/nmap/nmap.png
wget http://nmap.org/dist/nmap-$VERSION_UPDATE.tar.bz2
wget ftp://ftp.slackware-brasil.com.br/slackware-12.1/source/n/nmap/slack-desc
wget ftp://ftp.slackware-brasil.com.br/slackware-12.1/source/n/nmap/zenmap.desktop.gz
bash nmap.SlackBuild
upgradepkg /tmp/nmap-$VERSION_UPDATE-i486-3.tgz
fi
done
NAME_VERSION_UPDATE=`grep "nmap.*.tar.bz" index.html | cut -f 6 -d " " | tail -n 1 | sed "s/.tar.bz2//g"`
VERSION_UPDATE=`echo $NAME_VERSION_UPDATE | cut -f 2 -d -`
NAME_VERSION=`ls -w 1 /var/log/packages | grep nmap | sed "s/-i.*$//g"`
VERSION=`echo $NAME_VERSION | cut -f 2 -d -`
for i in `seq 2`
do
cmp1=`echo $VERSION_UPDATE | cut -f $i -d . `
cmp2=`echo $VERSION | cut -f $i -d . `
echo $VERSION_UPDATE
echo $VERSION
if(( $cmp1 > $cmp2 ));then
mkdir /tmp/nmap
cd /tmp/nmap
wget ftp://ftp.slackware-brasil.com.br/slackware-12.1/source/n/nmap/nmap.SlackBuild
sed -s/4.60/$VERSION_UPDATE/g” nmap.SlackBuild > nmap.SlackBuild2 && mv nmap.SlackBuild2 nmap.SlackBuild
wget ftp://ftp.slackware-brasil.com.br/slackware-12.1/source/n/nmap/nmap.png
wget http://nmap.org/dist/nmap-$VERSION_UPDATE.tar.bz2
wget ftp://ftp.slackware-brasil.com.br/slackware-12.1/source/n/nmap/slack-desc
wget ftp://ftp.slackware-brasil.com.br/slackware-12.1/source/n/nmap/zenmap.desktop.gz
bash nmap.SlackBuild
upgradepkg /tmp/nmap-$VERSION_UPDATE-i486-3.tgz
fi
done
Marco Carvalho de Oliveira
Colméia Grupo de Pesquisa em Software Livre
http://demoncyber.wordpress.com/