脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服务器之家 - 脚本之家 - Ruby - 苹果mac OS X上安装metasploit

苹果mac OS X上安装metasploit

2020-04-16 13:17hebedich Ruby

最近购了台mac一直没有时间折腾,下面就把在mac上安装metasploit的步骤做一个简单的记录吧

安装的几个步骤:

0×00-从github上克隆Metasploit项目到本地;

0×01-安装postgresql并进行配置;

0×02-安装特定版本的ruby,并解决依赖;

0×00 从github上克隆Metasploit项目到本地

话说github真是什么都有,很多好的项目在上面都能找到,首先打开终端并输入下列命令,因为10.9.3自带了git,所以就不需要另外安装了

?
1
git clone https://github.com/rapid7/metasploit-framework.git /usr/local/share/metasploit-framework

克隆到本地后,将metasploit-framework/config/目录下的配置文件:database.yml 添加到环境变量中(database.yml 也许不存在,直接复制database.yml.example)

在$HOME/.bash_profile或者其他配置文件中添加下面这条配置

export MSF_DATABASE_CONFIG=/usr/local/share/metasploit-framework/config/database.yml

0×01 安装postgresql并进行配置

metasploit下载完后,不急着去配置,因为metasploit的默认数据库postgresql还没有装上

你可以直接使用brew来下载并自动安装postgresql,可以运行如下命令

?
1
brew install postgresql --without-ossp-build

等待自动安装完毕,完成后,初始化postgresql(若出现错误删掉/usr/local/var/postgres,并重试)

?
1
initdb /usr/local/var/postgres

初始化完毕后,为metasploit添加数据库用户和创建相应DB

createuser msf -P -h localhost 
createdb -O msf msf -h localhost

(上面参数不懂了,大家可以百度一下,这里就不做过多解释了)

上面的步骤完成后,需更改metasploit的数据库连接配置,也就是第一步中的database.yml文件

在database.yml中,将信息修改如下

 production:
 adapter: postgresql
 database: msf
 username: msf
 password: <your password>
 host: 127.0.0.1
 port: 5432
 pool: 75
 timeout: 5

完成后,进入第三步!

(可自行添加alisa来简便每一次postgresql的启动)

?
1
2
alias pg_start='pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log start'
alias pg_stop='pg_ctl -D /usr/local/var/postgres stop'

0×02 安装特定版本的ruby,并解决依赖

说到ruby的多版本管理,这里就要用最给力的工具了rbenv(可以在github上找到,也可以使用brew直接安装)

?
1
brew install rbenv ruby-build

rbenv安装完成后,在$HOST/.bash_profile或其他配置文件中添加如下设置

eval "$(rbenv init -)"

下面就可以通过rbenv来安装特定版本的ruby了,首先列出当前可用的ruby版本

rbenv install --list

可以看到几乎所有的ruby版本都有,这里我们选择安装ruby-1.9.3-p547(因为OS X 10.9.3 自带的ruby为2.0.0版本,在某些地方会产生问题)

rbenv install 1.9.3-p547

这里可能会等一会儿,rbenv会将各个版本的ruby安装在$HOST/.rbenv/versions/下,完成后,将下载的版本设置为系统默认

rbenv rehash
rbenv global 1.9.3-p547

完成后,重新打开终端,输入ruby –version就可以看到当前默认的ruby版本已经设置成为1.9.3-p547

下面安装bundle来解决依赖问题

?
1
gem install bundle

安装的时候,可能会出连接问题,多试几次即可

bundle安装完毕后,再次进入metasploit的主目录解决模块包的依赖

?
1
2
3
cd /usr/local/share/metasploit-framework
rbenv rehash
bundle install

(在bundle install的过程中,可能会出现某一个特定版本的模块安装失败的问题,解决方法:根据GemFiles里的版本限制,自行使用gem安装替代版本,完成后,删掉GemFiles.lock,重新运行bundle install)

依赖解决后,即可运行目录下的msfconsole启动metasploit终端控制器(已启动postgresql,不然会连不上数据库)

可以将msf命令批量ln到bin下

?
1
for MSF in $(ls msf*); do ln -s /usr/local/share/metasploit-framework/$MSF /usr/local/bin/$MSF;done

下面是完成后的截图

苹果mac OS X上安装metasploit

延伸 · 阅读

精彩推荐
  • RubyRuby环境下安装使用bundler来管理多版本的gem

    Ruby环境下安装使用bundler来管理多版本的gem

    这篇文章主要介绍了Ruby环境下安装使用bundler来管理多版本的gem的方法,举了Ruby On Rails中的应用实例来进行演示,需要的朋友可以参考下 ...

    日拱一卒4332020-05-10
  • RubyRuby进行文件信息输出实例代码

    Ruby进行文件信息输出实例代码

    Ruby进行文件信息输出实例代码,数据是随机的,所以每次的记录都会不同。 ...

    ruby教程网2962020-04-10
  • Ruby剖析 Ruby 访问控制

    剖析 Ruby 访问控制

    前面,我们说 Ruby 没有函数,只有方法.而且实际上有不止一种方法.这一节我们介绍 访问控制 (accesscontrols). 想想当我们在最高层而不是在一个类的定义里定义...

    ruby教程网3572020-04-08
  • RubyCentOS中配置Ruby on Rails环境

    CentOS中配置Ruby on Rails环境

    经过一个上午的折腾,终于把ROR环境在CentOS中搞定,绕了很多弯路,把文章写下来总结一下 ...

    可乐加糖4762020-04-12
  • Ruby简要说明Ruby中的迭代器

    简要说明Ruby中的迭代器

    这篇文章主要介绍了Ruby中的迭代器,迭代器的概念在动态语言的编程中十分重要,文章中介绍了Ruby中的each迭代器和collect迭代器,需要的朋友可以参考下 ...

    goldensun2772020-04-25
  • RubyRuby设计模式编程中使用Builder建造者模式的实例

    Ruby设计模式编程中使用Builder建造者模式的实例

    这篇文章主要介绍了Ruby设计模式编程中使用Builder建造者模式的实例,建造者模式将一个复杂对象的构造与它的表示分离,使同样的构建过程可以创建不同的表...

    范孝鹏2192020-05-07
  • RubyRuby迭代器的7种技巧分享

    Ruby迭代器的7种技巧分享

    这篇文章主要介绍了Ruby迭代器的7种技巧分享,Ruby中的迭代器非常人性化,本文既是讲解了7个技巧也是讲解了7种迭代器,需要的朋友可以参考下 ...

    脚本之家4782020-04-20
  • RubyRuby简洁学习笔记(一):字符串、数字、类和对象

    Ruby简洁学习笔记(一):字符串、数字、类和对象

    这篇文章主要介绍了Ruby简洁学习笔记(一):字符串、数字、类和对象,本文是学习笔记第一篇,需要的朋友可以参考下 ...

    脚本之家2472020-04-20