文章来自:https://blog.csdn.net/weixin_44268918/article/details/129771330

1. 前言
在日常使用中,模拟攻击以及测试的时候都是直接使用本地虚拟机kali中的msf工具,但是在一些测试环境中需要使用到公网,但是目前的所有的云服务商,并不会提供kali镜像,那么当使用到msf工具的时候就需要自行安装了。

网上的很多关于centos安装msf工具的教程,多多少少都存在一些问题,所以,这里就总结一篇关于centos7中安装msf工具的文章。

当然也有使用挂载的方法,但是没钱,我就不买了,直接安装吧!

前期准备:

一台云服务器
centos 7.X版本
1.1. MSF介绍
Metasploit(MSF)是一个免费的、可下载的框架,通过它可以很容易地获取、开发并对计算机软件漏洞实施攻击。

它本身附带数百个已知软件漏洞,是一款专业级漏洞攻击工具。

当H.D. Moore在2003年发布Metasploit时,计算机安全状况也被永久性地改变了,仿佛一夜之间,任何人都可以成为黑客。

因为只要掌握MSF的使用方法,每个人都可以使用MSF来攻击那些未打过补丁或者刚刚打过补丁的漏洞。

也因此软件厂商再也不能推迟发布针对已公布漏洞的补丁了,因为Metasploit团队一直都在努力开发各种攻击工具,并将它们贡献给所有Metasploit用户。

1.2. MSF使用
关于MSF使用,这里可以去参考我之前写的两篇关于MSF的使用教程,同时也可以关注一下我的网络安全文章汇总(持续更新),这个里面的文章很适合新人入门。

Metasploit工具使用(上)

Metasploit工具使用(下)

2. MSF安装
这里直接使用MSF提供的一键安装脚本,都已经使用云服务器了,干嘛还使用离线安装,离线安装更多的是在本地搭建虚拟机环境去安装,那么又出现一共问题,都本地虚拟机搭建了,那为什么不直接按照kali系统呢?

2.1. MSF安装脚本
使用一键脚本按照很方便,并且能够省去很多的操作失误。

这里需要一段时间的下载,同时云服务器在访问github的时候也不是有什么特殊加速的,所以可以暂停,然后重新执行命令,多执行几次速度就正常了,总共就300多M。

curl https://raw.githubusercontent.com/rapid7/metasploit-omnibus/master/config/templates/metasploit-framework-wrappers/msfupdate.erb > msfinstall && chmod 755 msfinstall && ./msfinstall

2.2. MSF测试
这里测试一下是否安装成功,这里输入命令然后看看能否正常出现MSF界面即可。

msfconsole

3. 安装Postgresql数据库
关于安装Postgresql数据库可能是这里最麻烦的一件事,可能会出现很多问题,但是跟着一步一步操作应该就不会出现问题。

3.1. 查询Postgresql数据库
这里我查询我的云服务器是不存在的,如果有先卸载,重新安装。

yum remove postgresql* ##卸载
rpm -qa | grep postgresql ##查看是否卸载完成

3.2. 安装Postgresql数据库
在安装postgresql数据库的时候,其实版本好像不是那么重要。

yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm ##导入yum源
yum install -y postgresql12 postgresql12-server ##安装Postgresql数据库客户端与服务端,这里的12是版本,如果是9.5,那么就是95

3.3. 查询是否安装成功
使用命令查询一下即可。

rpm -qa | grep postgresql

3.4. 初始化数据库
这里需要将数据库先初始化一下。

/usr/pgsql-12/bin/postgresql-12-setup initdb

3.5. 启动postgresql服务
启动一下服务,并设置开机自启。

systemctl start postgresql-12 ##启动服务
systemctl enable postgresql-12 ##设置开机自启

3.6. 设置数据库(好像可以不用设置)
注意这一步好像不用设置,可以跳过,如果不放心就设置吧,操作到后面我才发现不用设置,但为了完整性,我还是将该步骤放上来。

PostgreSQL安装成功之后,会默认创建一个名为postgres的Linux用户,初始化数据库后,会有名为postgres的数据库,来存储数据库的基础信息。

这里密码简单无所谓,反之是给msf用的,端口也不对外开放,所以无所谓。

su postgres ##通过su命令切换linux用户为postgres会自动进入命令行
psql ##启动SQL Shell
ALTER USER postgres WITH PASSWORD '设置的密码'; ##修改密码

4. MSF连接postgresql
4.1. 连接数据库设置
这里就需要设置MSF去连接postgresql数据库了,主要这里不能使用root用户去初始化数据库,所以这里创建一个用户去初始化数据库。

cd /opt/metasploit-framework/bin/ ##注意不要使用root用户去初始化数据库
useradd msf ##创建msf用户
su msf ##切换用户
./msfdb init ##初始化数据库

4.2. 覆盖配置文件
创建完成后在msf用户目录会生成一个.msf目录里面会有一个database.yml文件,然后,我们这时从msf账户切换到root用户,执行以下操作将原配置文件覆盖。

cp /home/msf/.msf4/database.yml /opt/metasploit-framework/embedded/framework/config/

4.3. 启动MSF
这里执行命令启动以下MSF,并且使用密码查询以下数据库连接的状态,命令第二行是可选哦,当执行命令看数据库连接状态的时候,如果看到后面是postgresql,那么就证明连接成功了。

更新MSF是可选的,如果就觉得安装的不是最新可以执行以下,让MSF更新一下,注意不是在MSF服务里面执行。

完成这些操作后,就可以愉快的使用MSF工具了。

msfconsole ##启动msf
db_connect postgres:密码@127.0.0.1/test ##可选项,如果未操作4.1连接数据库设置,那么就可以直接在这里使用命令连接。
db_status ##查看数据库连接状态
exit
msfupdate ##更新MSF 可选,注意不是在MSF服务里面执行,注意不是在MSF服务里面执行,注意不是在MSF服务里面执行。

5. 参考文献
centos搭建msf

Centos7安装msf的更多相关文章

  1. HP服务器 hp 360g5 centos7安装问题

    HP服务器  hp 360g5 centos7安装问题 一 :启动盘无法识别硬盘 1.进入安装光盘,用上下键选择安装centos--Install Centos7(注意不可按Enter键),如图: 2 ...

  2. CentOS7 安装Mono及Jexus

    CentOS7安装Mono及Juxes 1 安装Mono 1.1 安装yum-utils 因为安装要用到yum-config-manager,默认是没有安装的,所以要先安装yum-utils包.命令如 ...

  3. CentOS7安装mysql提示“No package mysql-server available.”

    针对centos7安装mysql,提示"No package mysql-server available."错误,解决方法如下: Centos 7 comes with Mari ...

  4. CentOS7安装Oracle 11gR2 安装

    概述 Oracle 在Linux和window上的安装不太一样,公司又是Linux系统上的Oracle,实在没辙,研究下Linux下Oracle的使用,oracle默认不支持CentOS系统安装,所以 ...

  5. Centos7安装完毕后重启提示Initial setup of CentOS Linux 7 (core)的解决方法

    问题: CentOS7安装完毕,重新开机启动后显示: Initial setup of CentOS Linux 7 (core) 1) [x] Creat user 2) [!] License i ...

  6. centos7安装eclipse

    centos7安装eclipse Eclipse是一个集成开发环境(IDE),包含一个基工作区和定制环境的可扩展插件系统.大部分使用 Java 编写,Eclipse 可以用来开发应用程序.通过各种插件 ...

  7. CentOS7安装mongoDB数据库

    CentOS7安装mongoDB数据库 时间:2015-03-03 16:45来源:blog.csdn.net 作者:进击的木偶 举报 点击:8795次 mongoDB是目前发展比较好的NOSQL数据 ...

  8. CentOS7安装Ambari

    环境: CentOS7安装两个节点:master.slave1.并配置ssh无密码登录. 步骤: 获取 Ambari 的公共库文件(public repository): wget http://pu ...

  9. [CentOs7]安装mysql(2)

    摘要 之前安装过一次mysql,最后配置,发现在本地无法连接,重启服务的时候一直卡在那里不动,感觉是安装的过程出问题,最后没办法还是卸载了,然后重新安装一下. [CentOs7]安装mysql Mys ...

  10. Centos7 安装MPlayer过程详解

    使用自带的totem基本上都无法播放视频,各种格式都不支持,令人无语.想到了MPlayer,为了看片,决定编译安装,过程真的是折腾.如图是自带的Totem播放提示,安装了解码还是无法播放,反正要找其他 ...

随机推荐

  1. UE4构建基础和实践:一、概述

    序言 构建这个概念是和应用程序包及资源等相关的,它的特点是使用脚本控制一系列的任务的处理,以减少人力操作带来的成本和操作失误风险. 在UE的概念里,构建往往是和打包相关的(如编译.cook.压缩打包等 ...

  2. Ubuntu18.04 软件源更新:图形界面

    通过图形UI界面更新Ubuntu的软件源,手动修改虽然简单,但是要自己去找源,选一个系统配置好的更简单.但是新版的好像没有该功能,找到个奇葩的路径: 将Ubuntu16.04升级为Ubuntu18.0 ...

  3. TCP的Keep-Alive机制:链接存在但是没有数据传输,内核怎么处理

    服务端/客户端会定期发送探测报文来检测客户端的存活状态. 由三个内核参数控制: 首次发送探测报文时间:net.ipv4.tcp_keepalive_time有报文传输时重置 探测报文的发送间隔:net ...

  4. quarkus依赖注入之三:用注解选择注入bean

    欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos 本篇概览 本文是<quarkus依赖注入> ...

  5. js 文字像打字一样缓缓出现

    点击查看代码 <!DOCTYPE HTML> <html lang="en"> <head> <meta charset="UT ...

  6. chrome浏览器插件react devtools、redux devtools,无需安装、解压即可用

    react devtools用于调试react代码,可以查看到props.state的值,以及定义的hooks,而redux devtools可以追踪到action的派发.store的变化,两个都是r ...

  7. 使用C++界面框架ImGUI开发一个简单程序

    目录 简介 使用示例 下载示例 main文件 设置ImGui风格 设置字体 主循环 添加Application类 中文编码问题 界面设计 关于imgui_demo.cpp 创建停靠空间 创建页面 隐藏 ...

  8. 几种常用到的 Hybrid App 技术框架

    移动操作系统在经历了诸神混战之后,BlackBerry OS.Symbian OS.Windows Phone 等早期的移动操作系统逐渐因失去竞争力而退出.目前,市场上主要只剩下安卓和 iOS 两大阵 ...

  9. Qt安卓开发经验技巧总结V202308

    01:01-05 pro中引入安卓拓展模块 QT += androidextras . pro中指定安卓打包目录 ANDROID_PACKAGE_SOURCE_DIR = $$PWD/android ...

  10. [Lua][Love Engine] 有效碰撞处理の类别与位掩码 | fixture:setFilterData

    有效的碰撞处理 只用IF判断 假设在一个物理世界,不希望两个同类实体发生碰撞,那么 local begin_contact_callback = function(fixture_a, fixture ...