首先安装用到的支持环境
否则安装过程中可能会出现莫名其妙的错误,折腾好好久才弄好,以下先列出来用到的包
git 用于检出源码
autoconf:configure用的
GNU GCC C 编译器(gcc) 编译C的
GNU GCC C++ 编译器 (gcc-c++): 编译C++的
make/automake: make的主程序
这里整理成一条命令使用如下

yum install git autoconf gcc gcc-c++ make automake -y

centos igmp centos igmp ssm mapping_centos igmp


这样就代表成功

update yum

yum update
 yum upgrade

安装nmap

cd /usr/src
 git clone https://github.com/nmap/nmap.git

进行安装

cd nmap
 ./configure

centos igmp centos igmp ssm mapping_centos_02

make
make install

出现上面界面表示安装成功

清除先安装时生成的临时文件

mack clean

查看nmap 版本

nmap version

安装sqlmap
如果没有安装Python

yum install python -y
cd /usr/src
git clone https://github.com/sqlmapproject/sqlmap.git
cd sqlmap
./sqlmap.py

安装msf
先安装依赖包

yum groupinstall ‘Development Tools‘ 
yum install sqlite-devel libxslt-devel libxml2-devel java-1.7.0-openjdk libpcap-devel nano openssl-devel zlib-devel libffi-devel gdbm-devel readline-devel nano wget

安装yaml和ruby

cd /usr/src 
wget http://pyyaml.org/download/libyaml/yaml-0.1.6.tar.gz
tar zxvf yaml-0.1.6.tar.gz 
cd yaml-0.1.6
./configure --prefix=/usr/local
make && make install

cd /usr/src 
wget http://ftp.ruby-lang.org/pub/ruby/2.2/ruby-2.2.1.tar.gz
tar zxvf ruby-2.2.1.tar.gz
cd ruby-2.2.1
./configure --prefix=/usr/local --with-opt-dir=/usr/local/lib
make && make install

CenOS中附带的Postgresql版本比较低,在这里安装Postgresql的最新版本,目前最新版本为PostgreSQl9.4,具体命令如下:

yum install postgresql

下载msf
安装的是64位

wget http://downloads.metasploit.com/data/releases/metasploit-latest-linux-x64-installer.run
chmod +x metasploit-latest-linux-x64-installer.run
./metasploit-latest-linux-x64-installer.run

然后输入msfconsole

centos igmp centos igmp ssm mapping_sql_03

成功了

检查数据库连接状态db_status 返回如下结果表示数据库已经连接成功
msf > db_status
[*] postgresql connected to msf3

如果没有连接成功需要重新配置数据库连接

首先查看数据库服务是否开启,shell命令:

netstat -tnpl | grep postgres

centos igmp centos igmp ssm mapping_centos_04


上面提示已经开启,如果没有开启需要安装数据库 参考下面的安装数据库方法,先说下开启状态的数据库连接方式

首先去查看postgres数据库用户名和密码在database.yml这个配置文件中具体位置可能根据版本不同而不太一样建议搜索一下

使用如下命令:

find / -name database.yml

我的配置文件在/opt/metasploit/apps/pro/ui/config/database.yml

centos igmp centos igmp ssm mapping_centos_05

进入metasploit命令行界面:使用命令db_connect 可连接数据库,具体命令:
db_connect username:password@localhost:端口号/数据库名

db_connect msf3:d92e58f9@127.0.0.1:7337

使用 db_status 命令查看是否连接成功!

如果postgres数据库没有安装请参照如下方法进行安装
Centos安装,为yum。如果在是Ubuntu命令下请替换成apt-get

sudoyum install postgresql-8.4 postgresql-client-8.4

安装好了过后就创建用户密码和数据库:

su postgres       #进入数据库
createdb msf3    #创建数据库
createuser msf3     #创建用户

这儿要求你输入密码,我设置的是msf3。输入后确定就ok,然后输入exit退出
接着就是进入msfconsole设置MSF与postgresql数据库相关联
进入了msf shell之后,利用以下命令连接数据库:
db_connet msf3:msf3@127.0.0.1:7337
然后会看见msf的一些输出,这些是初始数据,第一次关联数据库会有,第二次就没了。
等待输出完成之后,我们再输入命令db_status测试下是否链接好了
如果看到以下的回显,证明数据库已经成功和MSF相关联:
postgresql conneted to msf3

设置环境变量

上面安装的sqlmap每次运行的时候都需要输入相应的路径用起来比较麻烦,可以通过设置环境变量的方式来直接使用sqlmap 命令
vim /etc/profile

添加如下代码(路径根据自己的来定)

alias sqlmap=’python /usr/src/sqlmap/sqlmap.py’

重启 reboot
这样就可以直接使用了