OSX10.10 Yosemite安装Metasploit
安装环境
操作时间: 2015/6/8
操作系统: OSX Yosemite 10.10.3
Metasploit版本: v4.11.0-dev [core:4.11.0.pre.dev api:1.0.0]
Ruby版本: 2.1.6p336 (2015-04-13 revision 50298)
整体安装步骤
从github上克隆Metasploit项目到本地
安装postgresql数据库并进行配置
安装特定版本的ruby,解决依赖
下面正式开始安装
1.从GitHub上克隆Metasploit项目到本地
首先打开终端并输入以下命令,因为10.10自带git所以就不用再安装git了。
git clone https://github.com/rapid7/metasploit-framework.git /usr/local/share/metasploit-framework
将Metasploit克隆到本地后,将/usr/local/share/metasploit_framework/config/目录下的配置文件database.yml添加到环境变量中。
*如果databse.yml不存在则运行下面的命令复制database.yml.example。
cp /usr/local/share/metasploit-framework/config/database.yml.example /usr/local/share/metasploit-framework/config/database.yml
在$HOME/.bash_profile或者其他配置文件中添加下面这条配置
export MSF_DATABASE_CONFIG=/usr/local/share/metasploit-framework/config/database.yml
2.安装postgresql数据库并进行配置
metasploit下载完后还需要连接默认的postgresql,这个默认是没有安装的
可以直接使用brew来下载并自动安装postgresql
brew系统并不自带,需要自己安装,安装方法可以百度,并不难
安装过MacPort工具的童鞋这里请注意,brew和MacPort有冲突,要使用brew需要先卸载MacPort
运行下面的命令安装postgresql
brew install postgresql --without-ossp-build
等待自动安装完成后,初始化postgresql
initdb /usr/local/var/postgres
*如果出现错误请删掉/usr/local/var/postgres,然后重试上一条命令
初始化完成后,为Metasploit添加数据库用户和创建相应地DB
/usr/local/var/postgres -l /usr/local/var/postgres/server.log start
先启动postgresql,不然下面的用户添加命令会报错
createuser msf -P -h localhost
*创建数据库用户,输入后会要求你输入新密码。
createdb -O msf msf -h localhost
*创建相应地DB
完成后关闭pstgres数据库
/usr/local/var/postgres stop
上面的步骤完成后,修改Metasploit的数据库连接配置,也就是第一步中的 /usr/local/share/metasploit-framework/config/database.yml
只要修改database.yml中的dababase、username、password就可以了,修改如下
development: &pgsql
adapter: postgresql
database: msf
username: msf
password: {your password}
host: localhost
port: 5432
pool: 5
timeout: 5
完成后就可以开始第三步了。
可以修改/etc/bashrc文件来添加alisa以简便每一次的postgresql的启动
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'
也可以使用alisa简便每次的启动,比如
alias msfconsole='pg_start & /usr/local/bin/msfconsole'
3. 安装特定版本的ruby,并解决依赖
对于ruby的多版本管理,这里使用rbenv,通过brew直接安装
brew install rbenv ruby-build
rbenv安装完成后,在$HOST/.bash_profile或者其他配置文件中添加如下设置
eval "$(rbenv init -)"
然后就可以通过brenv来安装特定版本的ruby了,首先列出当前可用的版本
rbenv install --list
可以看到几乎所有的ruby版本,这里我们安装ruby-2.1.6
*很多教程都教你安装1.9.3版的ruby,已经太旧了
rebenv install 2.1.6
这里需要等一会,并不是卡死了,rbenv会将各个版本的ruby安装在$HOST/.rbenv/version/下,完成后,将下载的版本设置为系统默认
rbenv rehash
rbenv global 2.1.6
完成后重新打开终端,输入
ruby -version
*查看当前的默认ruby版本
下面安装bundle来解决依赖问题
gem install bundle
安装的时候,由于被墙的原因可能会出现连接问题,你可以选择多试几次、翻墙或者给gem换一个国内的淘宝源
*换源的方法很简单,运行下面的命令就可以了
gem sources --remove https://rubygems.org/
gem sources -a https://ruby.taobao.org/
gem sources -l
*然后你会看到
*** CURRENT SOURCES ***
https://ruby.taobao.org
# 请确保只有 ruby.taobao.org
*再重新运行bundle安装命令就行了
*如果你在安装的时候看见如下错误提示
Fetching: bundler-1.2.3.gem (100%)
Fetching: bundle-0.0.1.gem (100%)
Successfully installed bundler-1.2.3
Successfully installed bundle-0.0.1
2 gems installed
Installing ri documentation for bundler-1.2.3...
Installing ri documentation for bundle-0.0.1...
file 'lib' not found
Installing RDoc documentation for bundler-1.2.3...
Installing RDoc documentation for bundle-0.0.1...
file 'lib' not found
*只要先安装rdoc就行了
sudo gem install rdoc
bundle安装完成后,再次进入Metasploit的主目录解决模块包得依赖问题
cd /usr/local/share/metasploit-framework
rbenv rehash
bundle install
*在这里运行bundlee install如果出错,出错提示如下
vagrant@precise64:/vagrant/meetup$ bundle install
Fetching gem metadata from https://rubygems.org/...........
Resolving dependencies...
Gem::RemoteFetcher::FetchError: SocketError: getaddrinfo: Name or service not known (https://rubygems.org/gems/rake-10.4.2.gem)
An error occurred while installing rake (10.4.2), and Bundler cannot continue.
Make sure that `gem install rake -v '10.4.2'` succeeds before bundling.
*说明你是被墙了,还需要把Metasploit的源也换成淘宝的
vim /usr/local/share/metasploit-framework/Gemfile
*将文件内的
source 'http://rubygems.org'
*注释掉,新增
source 'http://ruby.taobao.org/'
*保存退出就行了重运行bundle安装命令就行了
全部依赖解决后,可运行目录下的msfconsoleq启动metasploit终端控制器(启动前必须下启动postgresql数据库)
可以将msf命令批量连接到bin下
for MSF in [Math Processing Error](lsmsf∗);doln−s/usr/local/share/metasploit−framework/MSF /usr/local/bin/$MSF;done
最后是安装完成的截图:

*全文过半抄袭自 http://www.freebuf.com/articles/system/36924.html ,只是更新了下版本和几个小问题
OSX10.10 Yosemite安装Metasploit的更多相关文章
- [MAC OSX - 1] OSX10.10不能安装JKD8,不能使用eclipse
(1)电脑升级为10.10后,打开eclipse总是提示"您需要安装旧 Java SE 6 运行环境才能打开"Eclipse". 解决:安装JKD (2)不能安装JK ...
- 【转】Mac 10.10 yosemite 安装samba替代系统samba组件 -- samba不错不错
原文网址:http://gcell.blog.163.com/blog/static/52666594201501084530277/ 1.首先,在系统偏好设置的共享设置中,关掉局域网文件共享(去掉打 ...
- VMWare 安装 Mac OS X10.10 Yosemite
OS X Yosemite 新功能特性 Mac OS X10.10 GM3|OS X 10.10 Yosemite 正式版下载 如何在虚拟机中安装苹果mac系统图示说明 vm10虚拟机安装Mac OS ...
- VMware Workstation 11 安装MAC OS X 10.10 Yosemite(14B25)图解 2015-01-13 12:26:01|
VMware Workstation 11 安装MAC OS X 10.10 Yosemite(14B25)图解 2015-01-13 12:26:01| 分类: 网络互联 | 标签:10.10 ...
- VM安装OSX进度条一半时卡住不动,【附】OSX10.10 ISO镜像文件
安装OSX10.10真是一波多折,先是下载了一个5G多的原版dmg文件,转成ISO后在虚拟机上无法识别,后按网上的说的方法在提取出来的BaseSystem.dmg文件,再转成ISO文件,可以 ...
- Mac OS 10.10 Yosemite正式版怎么升级 升级教程
苹果在2014年10月17号凌晨一点召开了新品发布会,推出了新的 iPad.iMac 产品,以及大家一直所期盼的 Mac OS 10.10 正式版系统.个人是从 Mac OS 10.10 的第一个测试 ...
- 使用 DiskMaker X 轻松制作 Yosemite 安装 U 盘(引)
使用 DiskMaker X 轻松制作 Yosemite 安装 U 盘 由于帮人在MacBook上装Windows, 用pe格式化了一下分出来的Windows分区, 搞得Mac系统也瘫掉了, 无奈之下 ...
- CentOS 6.x安装Metasploit
现在开始安装Metasploit框架,前面的包安装成功之后,我们需要再安装一些Metasploit依赖的Ruby库,命令如下: gem install wirble pg sqlite3 msgpac ...
- arcgis server 10.2安装后,忘记Manager的用户名和密码
arcgis server 10.2安装完毕后,需要创建站点,创建站点时,填写管理站点的用户名和密码.自己不小心,创建完毕后,给忘记了用户名和密码.求助Esri,解决方法如下: (1)找到arcgis ...
随机推荐
- Java 11 New Features
前言 北京时间 2018年9 月 26 日,Oracle 官方宣布 Java 11 正式发布.这是 Java 大版本周期变化后的第一个长期支持版本,非常值得关注.从官网即可下载, 最新发布的 Java ...
- 连接mysql,oracle的命令 以及导入sql文件
Oracle 1,sqlplus username/password 导入: 2,@后面跟着sql文件的路径,回车,导入数据 @D:/test.sql; 导入完毕,输入commit; MySQL: ...
- [蓝桥杯2017初赛]k倍区间 前缀和
题目描述 给定一个长度为N的数列,A1, A2, ... AN. 如果其中一段连续的子序列Ai, Ai+1, ... Aj(i <= j)之和是K的倍数,我们就称这个区间[i, j]是K倍区间. ...
- NOIP2016换教室 BZOJ 4720
BZOJ 4720 换教室 题目描述: 对于刚上大学的牛牛来说,他面临的第一个问题是如何根据实际情况申请合适的课程.在可以选择的课程中,有2n节 课程安排在n个时间段上.在第i(1≤i≤n)个时间段上 ...
- LeetCode 234. Palindrome Linked List(判断是否为回文链表)
题意:判断是否为回文链表,要求时间复杂度O(n),空间复杂度O(1). 分析: (1)利用快慢指针找到链表的中心 (2)进行步骤(1)的过程中,对前半部分链表进行反转 (3)如果链表长是偶数,首先比较 ...
- 【SSM 】导出excel含图片
ExprotRentUtils package com.kikyo.stat.utils; import java.awt.image.BufferedImage; import java.io.By ...
- 安装插件报错error: Microsoft Visual C++ 14.0 is required. Get it with "Microsoft Visual C++
起因:学到多线程greenlet模块时,greenlet模块死活装不上,以为pycharm坏掉了,浪费了一下午. #pip3 install greenlet from greenlet import ...
- java.util.ConcurrentModificationException 异常原因和解决方法
不要在 foreach 循环里进行元素的 remove/add 操作.remove 元素请使用 Iterator方式,如果并发操作,需要对 Iterator 对象加锁. 注意: 1.foreach遍历 ...
- 模块学习-time,datetime模块
1 time.timezone #以秒为单位显示时区 >>> import time >>> time.timezone -28800 北京为东八区,所以为-288 ...
- Java基础知识笔记第八章:常用的实体类
String类 String类位于lang包下 java会默认导入lang包下的类,所以可以直接使用,注意String是final类所以不能有子类 构造String对象: 常量对象:String常量也 ...