百度360必应搜狗淘宝本站头条
当前位置:网站首页 > IT知识 > 正文

Kali安全渗透高级工程师入门- kali系统安装- 网络安全电子书

liuian 2024-11-28 00:51 52 浏览


安装渗透测试系统Kali

本节所讲内容:

1.1 Kali Linux简介

1.2 使用VM虚拟机安装Kali

1.3 配置Kali的apt命令在线安装包的源为国内源


1.1 Kali Linux简介

Kali Linux是一个基于Debian的Linux发行版,旨在进行高级渗透测试和安全审计。Kali Linux包含数百种工具,适用于各种信息安全任务,如渗透测试,安全研究,计算机取证和逆向工程。Kali Linux由公司Offensive Security开发,资助和维护。

Offensive [??fens?v] 攻击性的; Offensive Security 进攻性安全

Kali Linux于2013年3月13日发布,Kali的前身是基于BackTrack Linux,自上而下的重建,完全符合Debian开发标准。

Kali的优势和特性:

1、包括900多种渗透测试工具

2、免费:完全免费且永远都是。你将永远不必支付Kali Linux的费用。

3、开源:所有进入Kali Linux的源代码都可供任何人使用。

4、广泛的无线设备支持:我们已经构建了Kali Linux以支持尽可能多的无线设备,允许它在各种硬件上正常运行,并使其与众多USB和其他无线设备兼容。

5、在安全的环境中开发: Kali Linux团队由一小部分人组成,他们是唯一可信任的提交包并与存储库交互的人,所有这些都是使用多个安全协议完成的。

6、GPG签名包和存储库: Kali Linux中的每个包都由构建和提交它的每个开发人员签名,并且存储库随后也会对包签名。

7、ARMEL和ARMHF支持: Kali Linux可用于各种ARM设备。

Kali安全渗透高级工程师工具包合集,里面包含了Kali系统镜像和各种渗透测试工具包,下载链接:https://pan.baidu.com/s/1Na8vv0Tgr_Wf1MBCLNAWZg 提取码:

1.2 使用VM虚拟机安装Kali

1.2.1 官方下载Kali Linux

官方网址:www.Kali.org

下载方式分两种:http下载和bt下载(由于是国外网站http方式下载会非常慢)。

1.2.2 安装并配置Kali Linux

新建虚拟机。

选择推荐配置即可。

选择我们下载好的Kali镜像。

选择Debian 10.x 64位,具体版本根据自己虚拟机能够支持的版本来选择。

配置虚拟机名称并选择虚拟机安装位置。

选择磁盘空间这里如果同学学习过程中不更新Kali的话使用默认配置20G即可,如果对Kali进行日常更新则需要给100G富裕一些空间。否则会导致更新失败。(虚拟机分配的空间不会直接完全占用物理机磁盘空间,一般情况都是用多少占多少,所以我们多给一些)。

自定义硬件配置。

尽量给的高一些建议给物理机一半左右的配置。(至少2G内存)。

配置CPU核心数(建议配置成和物理CPU核心数一样),我是4核心的CPU,这里配置成4核。

并开启虚拟化Intel VT技术。

配置网络模式为桥接。

点击开启虚拟机。

排错:

安装虚拟机后,创建Linux虚拟机,出现“intel vt -x 处于禁用状态打不开 ”解决方法:

注:只要开启BIOS虚拟化支持就可以了。

情况1:以华硕 UEFI 主板为例,开机进入bios

步骤: 进入高级模式---进入高级菜单----开启intel虚拟技术

其它电脑找到这个

F10保存退出。重启物理机,再安装安装Kali就可以了。

解决了上面的问题,接下来继续安装Kali虚拟机:

选择图形安装。

选择中文(简体)。

选择区域。

配置键盘。

配置主机名

设置普通用户名

直接点继续

配置普通用户的密码。

磁盘分区选择整个磁盘。

选择我们的磁盘。

选择推荐分区方案。

结束分区向导。

将修改的内容写入到磁盘。

等待安装系统。

选择并安装软件

注意:这里需要选择Xfce桌面环境(首选,桌面环境Xface、GNOME、KDE选其中一个就行),否则安装完毕后Kali Linux将无法使用图形化桌面环境,只能使用命令行环境。

无特殊情况,其它软件选择默认勾选项即可

注:无“…”表示主菜单,有“…”表示对应的子菜单

等待安装完成会自动重启虚拟机。

1.2.3 启用对root用户的访问

默认情况下,Kali2021.1已交换为特权非root用户。这意味着root用户没有设置密码,并且在安装过程中创建的帐户是可以使用的帐户。可以重新启用对root用户的访问,但是不建议这样做。

设置root用户密码

┌──(kali?xuegod53)-[~]

└─$ sudo passwd root

我们信任您已经从系统管理员那里了解了日常注意事项。

总结起来无外乎这三点:

#1) 尊重别人的隐私。

#2) 输入前要先考虑(后果和风险)。

#3) 权力越大,责任越大。

[sudo] kali 的密码:kali #注:需要提权输入kali普通用户的密码

设置新密码

新的 密码:123456

重新输入新的 密码:123456

passwd:已成功更新密码

切换到root用户

└─$ su root #切换到root用户,当会话还是使用kali用户的环境变量

密码:123456

┌──(rootxuegod53)-[/home/kali]

└─# exit

┌──(kali?xuegod53)-[~]

└─$ su - root #切换root用户时,记得加一个减号-,这样可以彻底切换到root用户。

密码:123456

┌──(rootxuegod53)-[~]

└─#pwd

下次登录Kali系统就可以使用root账号直接登录了。

查看当前使用的Shell类型

└─# echo $SHELL

/usr/bin/zsh #可以看到我们使用的是zsh类型的shell。centos7使用的是bash类型的shell。 zsh功能更强,而且zsh完全兼容bash的用法和命令。


1.3 配置Kali的apt命令在线安装包的源为国内源

1.3.1 配置apt国内源

因为Kali自带的源是国外的,经常会因为网络问题,而无法安装或更新软件包。而且国外的源速度很慢。所以我们直接使用国内的资源,方便快速。

#中科大Kali源

deb http://mirrors.ustc.edu.cn/kali kali-rolling main non-free contrib

deb-src http://mirrors.ustc.edu.cn/kali kali-rolling main non-free contrib

点击终端按钮或者右键桌面选择 在这里打开终端 打开终端。

┌──(rootxuegod53)-[~]

└─# vim /etc/apt/sources.list

把第2行前面加#号,注释了:

在最后一行后面插入中科大Kali源:

deb http://mirrors.ustc.edu.cn/kali kali-rolling main non-free contrib

deb-src http://mirrors.ustc.edu.cn/kali kali-rolling main non-free contrib

注:复制上面两行内容,然后按下鼠标滚轮,就可以粘贴到文档中了。

扩展:

1、复制:在kali终端下,使用鼠标选中内容,就可以完成kali下复制

2、粘贴:移动光标到需要粘贴的位置,按下鼠标中间的滚轮,就可以粘贴

说明:deb代表软件的位置,deb-src代表软件的源代码的位置

使用apt新的软件包源获取最新的软件包列表。

注:apt update 的作用是从/etc/apt/sources.list文件中定义的源中获取的最新的软件包列表。

运行apt update并没有更新软件,而是相当于windows下面的检查更新,获取的是软件的状态。

└─# apt update

发现已经在使用中科大的kali源了。

扩展:kali的apt源

Kali Rolling: 是Kali的即时更新版,只要Kali中有更新,更新包就会放入Kali Rolling中,供用户下载使用。它为用户提供了一个稳定更新的版本,同时会带有最新的更新安装包。这个是我们最常用的源。

在Kali Rolling下有3类软件包:main、non-free和contrib。

Kali apt源的软件包类型说明:

dists区域

软件包组件标准

main

遵从 Debian 自由软件指导方针(DFSG),并且不依赖于 non-free

contrib

遵从 Debian 自由软件指导方针(DFSG),但依赖于 non-free

non-free

不遵从 Debian 自由软件指导方针(DFSG)

注:DFSG是Debian 自由软件指导方针 (Debian Free Software Guidelines),此方针中大体包括自由的再次发行、源代码、禁止歧视人士或者组织等规定

rolling [?r??l??] 滚动的 ; contrib [k?n?tr?b] 贡献软件;贡献;普通发布版 dists 分布

我们手动查看一下apt源,直接访问:http://mirrors.ustc.edu.cn/kali/ 查看dists目录下的软件包

或直接访问 http://mirrors.ustc.edu.cn/kali/dists/kali-rolling/ 可以看3类软件包

1.3.2 apt update、apt upgrade 和apt dist-upgrade 的区别

1、apt update

┌──(rootxuegod53)-[~]

└─# apt update

注:apt update 的作用是从/etc/apt/sources.list文件中定义的源中获取的最新的软件包列表。

运行apt update并没有更新软件,而是相当于windows下面的检查更新,获取的是软件的状态。

root@xuegod53:~# apt update #执行这个命令,可以查看更新列表

会下载 http://mirrors.ustc.edu.cn/kali/dists/kali-rolling/ 中这个InRelease软件包列表

把InRelease下载到本地,使用word打开可以查看软件包列表,如下图:

以下两种升级系统的方式,大家先不要执行,因为执行消耗的时间太长:

2、apt upgrade

└─# apt upgrade

apt upgrade 则是根据update命令获取的最新的软件包列表,去真正地更新软件。

3、apt dist-upgrade

└─# apt dist-upgrade

apt dist-upgrade则是根据update命令获取的最新的软件包列表,去真正地更新软件。

4、apt upgrade和dist-upgrade的差别:

upgrade:升级时,如果软件包有相依性的问题,此软件包就不会被升级

dist-upgrade升级时,如果软件包有相依性问题,会移除旧版,直接安装新版本. (所以通常dist-upgrade会被认为是有点风险的升级)

例如:

注:因为安装av2新版本时,需要依赖dv2库,而gv1这次没有升级,所以gv1还依赖dv1。av2升级后把dv1变为dv2,这样gv1在调用dv2时,可能会有问题。如果dv2完全兼容dv1,那么gv1直接调用dv2,也没有问题,gv1还可以正常运行。

对于个人和服务器上的操作一般情况使用:apt upgrade 稳定可靠升级就可以满足我们的需求了。

最后,需要注意的一点是,每回更新之前,我们需要先运行update,然后才能运行upgrade和dist-upgrade,因为相当于update命令获取了包的一些信息,比如大小和版本号,然后再来运行upgrade去下载包,如果没有获取包的信息,那么upgrade就是无效的啦!

1.3.3 apt和apt-get区别

apt命令概述: apt是一条linux命令,适用于deb包管理式的操作系统,主要用于自动从互联网的软件仓库中搜索、安装、升级、卸载软件或操作系统。deb包是Debian软件包格式的文件扩展名。

apt 可以看作 apt-get 和 apt-cache 命令的子集, 可以为包管理提供必要的命令选项。

apt提供了大多数与apt-get及apt-cache有的功能,但更方便使用

apt-get 虽然没被弃用,但作为普通用户,还是应该首先使用 apt。

注:apt install和apt-get install 功能一样,都是安装软件包,没有区别。

常用命令:

install - 安装软件包 apt install

remove - 移除软件包 apt remove

update - 更新可用软件包列表 apt update

upgrade - 通过 安装/升级 软件来更新系统 apt upgrade

full-upgrade - 通过 卸载/安装/升级 来更新系统 apt dist-upgrade

edit-sources - 编辑软件源信息文件 vim /etc/apt/sources.list

关闭自动锁屏功能:

点设置——电源管理器:

然后点安全性:

最后一定要做一个虚拟机快照:

总结:

1.1 Kali Linux简介

1.2 使用VM虚拟机安装Kali

1.3 配置Kali的apt命令在线安装包的源为国内源

相关推荐

使用Assembly打包和部署Spring Boot工程

SpringBoot项目的2种部署方式目前来说,SpringBoot项目有如下2种常见的部署方式一种是使用docker容器去部署。将SpringBoot的应用构建成一个docke...

java高级用法之:调用本地方法的利器JNA

简介JAVA是可以调用本地方法的,官方提供的调用方式叫做JNI,全称叫做javanativeinterface。要想使用JNI,我们需要在JAVA代码中定义native方法,然后通过javah命令...

Linux中如何通过Shell脚本来控制Spring Boot的Jar包启停服务?

SpringBoot项目在为开发者带来方便的同时,也带来了一个新的问题就是Jar包如何启动?在一般情况下我们都是采用了最为经典的java-jar命令来进行启动。然后通过ps命令找到对应的应用线程通...

牛逼!自己手写一个热加载(人民币手写符号一个横还是两个横)

热加载:在不停止程序运行的情况下,对类(对象)的动态替换JavaClassLoader简述Java中的类从被加载到内存中到卸载出内存为止,一共经历了七个阶段:加载、验证、准备、解析、初始化、使用、...

java 错误: 找不到或无法加载主类?看看怎么解决吧!

问题扫述:项目名称调整,由原来的com.mp.qms.report.biz调整为com.mp.busicen.mec.qms.report.biz后。项目在IDEA直接运行,但打包部署到服务器...

如何将 Spring Boot 工程打包成独立的可执行 JAR 包

导语:通过将SpringBoot项目打包成独立的可执行JAR包,可以方便地在任何支持Java环境的机器上运行项目。本文将详细介绍如何通过Maven构建插件将SpringBoot...

class 增量发包改造为 jar 包方式发布

大纲class增量发包介绍项目目录结构介绍jar包方式发布落地方案class增量发包介绍当前项目的迭代修复都是通过class增量包来发版本的将改动的代码class增量打包,如下图cla...

Jar启动和IDE里启动Sprintboot的区别

想聊明白这个问题,需要补充一些前提条件,比如Fatjar、类加载机制等1、Fatjar我们在开发业务程序的时候,经常需要引用第三方的jar包,最终程序开发完成之后,通过打包程序,会把自己的代码和三...

Java 20年,以后将往哪儿走?(java还能流行多久)

在今年的Java20周年的庆祝大会中,JavaOne2015的中心议题是“Java的20年”。甲骨文公司Java平台软件开发部的副总裁GeorgesSaab的主题演讲就将关注点放在了java...

Spring Boot Jar 包秒变 Docker 镜像实现多环境部署

你是否在互联网大厂后端开发工作中,遇到过这样的困扰?当完成一个SpringBoot项目开发,准备将Jar包部署到不同环境时,却发现各个环境依赖不同、配置复杂,部署过程繁琐又容易出错,不仅耗费...

从0开始,让你的Spring Boot项目跑在Linux服务器

1搭建Linux服务器1.1购买阿里云服务器或安装虚拟机这里建议是CentOS7.X或CentOS8.X,当然其他的Linux如deepin、Ubuntu也可以,只是软件环境的安装包和安装方式...

【技术】Maven 上传第三方jar包到私服

通过nexus后台上传私服以NexusRepositoryManagerOSS2.14.5-02为例。登录nexus后台。定义Maven坐标Maven坐标有两种方式:1.自定义参数;2....

JVM参数、main方法的args参数使用

一、前言我们知道JVM参数分为自定义参数、JVM系统参数,Javamain方法的参数。今天就谈谈怎么使用吧。二、查看jvm参数定义自定义参数我们打开cmd窗口,输入java,就能看到自定义参数的格式...

Maven项目如何发布jar包到Nexus私服

Maven项目发布jar包到Nexus私服在编码过程中,有些通用的代码模块,有时候我们不想通过复制粘贴来粗暴地复用。因为这样不仅体现不了变化,也不利于统一管理。这里我们使用mavendeploy的方...

干货丨Hadoop安装步骤!详解各目录内容及作用

Hadoop是Apache基金会面向全球开源的产品之一,任何用户都可以从ApacheHadoop官网下载使用。今天,播妞将以编写时较为稳定的Hadoop2.7.4版本为例,详细讲解Hadoop的安...