Kali linux配置

Posted 蚁景网安

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Kali linux配置相关的知识,希望对你有一定的参考价值。

目录

kali用户配置

root用户权限配置

配置远程登录

网络配置

kali网络配置

静态IP地址配置

重启网络生效

临时IP配置

DNS配置

ATP源

ATP源配置

Kali Linux apt源更新

kali汉化

Kali 汉化教程

​kali linux配置python-pip

查看当前python的版本信息

安装python软件包的三种方法

python开发工具

Git使用

安装 Git

客户端创建 SSH 公钥和私钥

服务器端 Git 打开 RSA 认证

客户端再次 clone 远程仓库

禁止 git 用户 ssh 登录服务器

SSH登录

什么是SSH

配置SSH服务

通过Xshell远程登录


kali用户配置

root用户权限配置

首先用你的常规用户名登录kali linux,打开终端输入“sudo passwd root”

会让你输入现正在使用的用户密码(默认不显示任何字符,所以如果你发现输入密码的时候看不到你输入的内容,不要惊慌大胆输就行)后回车,然后会让你输入新密码(同样默认不显示)输入后回车,再输入一遍新密码然后回车

最后注销系统重新登录就会变成root权限啦,切记注销后要开始用root用户名登录

配置远程登录

终端输入命令:vim /etc/ssh/sshd_config,进入sshd文件编辑界面

然后shift+冒号输入33后回车跳到第33行,把注释符号去掉,并将prohibit-password改为yes,如图

按Esc取消文件编辑状态,shift+冒号输入wq后回车(此操作意为保存并退出)

终端输入命令:/etc/init.d/ssh start,重启sshd服务,如图

​终端输入命令:update-rc.d ssh enable,配置sshd开机自动启动

网络配置

终端输入命令:vim /etc/network/interfaces,进入网络配置文件修改界面

将文件内容修改为如图状态

​按Esc取消编辑状态,shift+冒号输入wq后回车(保存并退出)

kali网络配置

静态IP地址配置

首先,我们来配置以下Kali Linux的静态IP地址,打开/etc/network/interfaces的文件,并且在文件下方添加如下内容

auto eth0 
iface eth0 inet static 
address 192.168.136.199(IP地址) 
netmask 255.255.255.0 (子网掩码)
 gateway 192.168.136.254(网关)

在上述配置中,我们分别设置了Kali Linux的IP地址、子网掩码以及网关,要注意的是,这里的配置一定要符合我们的Kali Linux所处的网络环境

配置完成后的文件如下所示:

重启网络生效

在完成网络的相关配置后,我们的配置现在还没有生效,我们必须重启网络服务才可以使之生效

首先,我们需要执行命令:

systemctl stop NetworkManager

该命令可以关闭NetworkManager服务,该服务时网络服务的图形化管理工具

在该服务器启动的情况下,会自动管理我们的网络服务,导致我们对网络的重启不生效,因此,我们需要手动关闭该服务

之后,我们执行命令:

systemctl restart networking

即可重启网络服务,使得我们的静态IP配置生效了,上述命令执行以及结果如下所示:

当我们配置好IP地址后,就可以访问我们的网关和其他设备了,如下所示:

临时IP配置

此外,除了采用上述修改配置文件的方式修改IP地址外,我们有时需要临时性的给Kali Linux设置一个IP地址,这样我们再通过上述方式来进行修改就显示非常复杂。这时,我们可以采取以下方法

执行命令:

ifconfig eth0:1 192.168.136.198

这样,就可以给Kali Linux系统的eth0的网卡增加一个IP地址(Kali Linux系统允许一个网卡有两个IP地址)了,添加完成后的结果如下所示:

注意,这种方式仅用于配置临时性的IP地址,当系统重启或者网络服务重启后,我们这样配置的IP地址即失效

DNS配置

我们在完成上述配置后,还不能正常的上网,这时我们还缺少DNS的配置。DNS的配置需要我们打开文件/etc/resolv.conf,并且在文件下面添加如下内容:

nameserver 114.114.114.114

配置完成后的文件如下所示:

​之后,我们可以尝试一下PING一个域名,看看我们的DNS配置是否正常,结果如下:

​从以上配置可以看出,我们的对www.baidu.com的访问正常,我们的Kali Linux配置正常

ATP源

ATP源配置

Kali Linux的软件下载很多时候都是通过apt的方式进行下载的

但是,在默认情况下,Kali Linux的apt源是国外的源。由于一些众所周知的原因,我们不能很方便的访问国外的apt源,在下载安装软件的时候,速度也会很慢

鉴于此,我们可以选择一些国内的镜像源,他们会经常通过国外镜像源的一些软件,可以起到代替国外apt源的效果

接下来,我们就来实际配置以下Kali Linux的apt源,在这里,我们选择中科大的apt源

首先,打开/etc/apt/sources.list文件,在文件的最下方加入如下内容:

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

其他ATP源:

#阿里云

deb http://mirrors.aliyun.com/kali kali-rolling main non-free contrib 
deb-src http://mirrors.aliyun.com/kali kali-rolling main non-free contrib

#清华大学

#deb http://mirrors.tuna.tsinghua.edu.cn/kali kali-rolling main contrib non-free 
#deb-src https://mirrors.tuna.tsinghua.edu.cn/kali kali-rolling main contrib non-free

#浙大

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

#东软大学

deb http://mirrors.neusoft.edu.cn/kali kali-rolling/main non-free contrib 
deb-src http://mirrors.neusoft.edu.cn/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

#重庆大学

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

配置完成后的文件如下所示:

注意,在上述配置中,kali-rolling是Kali的即时更新版本,只要在Kali中有更新,更新包就会放入该源中,以供用户下载使用

在kali-rolling中,有三种类型的软件包:main、non-free和contrib

main类型指的是遵从Debian自由软件指导方针,并且不依赖于Non-free的软件包

non-free指的是遵从Debian自由软件指导方针,但是依赖于non-free的软件包

contrib指的是不遵从Debian自由软件的软件包

Kali Linux apt源更新

在配置完成我们的国内apt源后,为了检测我们apt源安装的正确性,我们执行命令:

apt update

即可完成Kali Linux的apt源更新,顺便还可以检验一下我们刚才配置的结果。该命令执行结果如下所示:

​之后,我们执行命令:

apt upgrade

apt dist-upgrade

即可完成Kali Linux的APT源更新了

kali汉化

Kali 汉化教程

  1. 在Kali的桌面按下Ctrl+Alt+T打开终端

  2. root权限下键入dpkg-reconfigure locales命令,然后敲回车

​选中en_US.UTF-8 UTF-8和zh_CN.UTF-8 UTF-8(注意:按下空格键选中,选好后按下TAB键退出编码格式选项,跳到OK选项)

选择zh_CN.UTF-8,选择OK

​在终端键入reboot, 重启Kali

重启Kali后, 建议选择保留旧的名称

​此时可以看到界面已经汉化完成了!

​kali linux配置python-pip

查看当前python的版本信息

Kali Linux默认已经安装了Python运行环境,运行python --version即可以查看当前Python版本

安装python软件包的三种方法

1.pip安装

默认情况,kali也已经安装了python-pip,如果你的系统没有的话,可以使用命令apt-get install python-pip手动安装pip

​然后使用命令pip install github3.py来安装github3模块

​2.手动安装

把包下载到本地之后解压,并将当前目录切换到解压出来的目录,在这个目录中,使用python setup.py install命令来安装

比如我们想要使用Python-nmap组件去解析nmap的扫描结果,我们先手动下载安装包

wget http://xael.org/pages/python-nmap-0.6.0.tar.gz

​然后解压,进入对应目录,使用命令手动安装

root@kali:~# tar xzf python-nmap-0.6.0.tar.gz 
root@kali:~# ls 
        公共 模板 视频 图片 
        文档 下载 音乐 桌面 
        python-nmap-0.6.0 python-nmap-0.6.0.tar.gz 
root@kali:~# cd python-nmap-0.6.0 
root@kali:~/python-nmap-0.6.0# python setup.py install

3.eazy_install安装

easy_install 是Python setuptools组件中的一个模块,默认在kali2.0中该组件已经存在了

如果没有的话,我们可以使用apt-get 进行安装

apt-get install python-setuptools

​然后就可以使用easy_install 来安装Python的其他组件包了

python开发工具

kali既有python2的环境,又有python3的环境

​使用命令apt-get install idle3安装idle3,如果安装失败,apt-get update之后再安装(亲身经历)

Git使用

安装 Git

Linux 做为服务器端系统,Windows 作为客户端系统,分别安装 Git

服务器端:

#yum install -y git

安装完后,查看 Git 版本

[root@localhost ~]# git --version 
git version 1.7.1

客户端:

下载 Git for Windows,地址:https://git-for-windows.github.io/

安装完之后,可以使用 Git Bash 作为命令行客户端

安装完之后,查看 Git 版本

$ git --version 
git version 2.8.4.windows.1

服务器端创建 git 用户,用来管理 Git 服务,并为 git 用户设置密码

[root@localhost home]# id git 
id: git:无此用户 
[root@localhost home]# useradd git 
[root@localhost home]# passwd git

服务器端创建 Git 仓库

设置 /home/data/git/gittest.git 为 Git 仓库

然后把 Git 仓库的 owner 修改为 git

[root@localhost home]# mkdir -p data/git/gittest.git 
[root@localhost home]# git 
init --bare data/git/gittest.git Initialized empty Git repository in /home/data/git/gittest.git/ 
[root@localhost home]# cd data/git/ 
[root@localhost git]# chown -R git:git gittest.git/

客户端 clone 远程仓库

进入 Git Bash 命令行客户端,创建项目地址(设置在 d:/wamp64/www/gittest_gitbash)并进入: dee@Lenovo-PC MINGW64 /d

$ cd wamp64/www 

dee@Lenovo-PC MINGW64 /d/wamp64/www 
$ mkdir gittest_gitbash 

dee@Lenovo-PC MINGW64 /d/wamp64/www 
$ cd gittest_gitbash 

dee@Lenovo-PC MINGW64 /d/wamp64/www/gittest_gitbash 
$

然后从 Linux Git 服务器上 clone 项目:

$ git clone git@192.168.56.101:/home/data/gittest.git

如果SSH用的不是默认的22端口,则需要使用以下的命令(假设SSH端口号是7700):

$ git clone ssh://git@192.168.56.101:7700/home/data/gittest.git

当第一次连接到目标 Git 服务器时会得到一个提示:

The authenticity of host '192.168.56.101 (192.168.56.101)' can't be established. 
RSA key fingerprint is SHA256:Ve6WV/SCA059EqoUOzbFoZdfmMh3B259nigfmvdadqQ. 
Are you sure you want to continue connecting (yes/no)?

选择 yes:

Warning: Permanently added '192.168.56.101' (RSA) to the list of known hosts.

此时 C:\\Users\\用户名\\.ssh 下会多出一个文件 known_hosts,以后在这台电脑上再次连接目标 Git 服务器时不会再提示上面的语句

后面提示要输入密码,可以采用 SSH 公钥来进行验证

客户端创建 SSH 公钥和私钥

$ ssh-keygen -t rsa -C "472323087@qq.com"

此时 C:\\Users\\用户名\\.ssh 下会多出两个文件 id_rsa 和 id_rsa.pub

id_rsa 是私钥

id_rsa.pub 是公钥

服务器端 Git 打开 RSA 认证

进入 /etc/ssh 目录,编辑 sshd_config,打开以下三个配置的注释:

RSAAuthentication yes 
PubkeyAuthentication yes 
AuthorizedKeysFile .ssh/authorized_keys

保存并重启 sshd 服务:

[root@localhost ssh]# /etc/rc.d/init.d/sshd restart

由 AuthorizedKeysFile 得知公钥的存放路径是 .ssh/authorized_keys,实际上是 $Home/.ssh/authorized_keys,由于管理 Git 服务的用户是 git,所以实际存放公钥的路径是 /home/git/.ssh/authorized_keys

在 /home/git/ 下创建目录 .ssh

[root@localhost git]# pwd /home/git 
[root@localhost git]# mkdir .ssh 
[root@localhost git]# ls -a 
. .. .bash_logout .bash_profile .bashrc .gnome2 .mozilla .ssh

然后把 .ssh 文件夹的 owner 修改为 git

[root@localhost git]# chown -R git:git .ssh 
[root@localhost git]# ll -a 
总用量 32 
drwx------. 5 git git 4096 8月 28 20:04 . 
drwxr-xr-x. 8 root root 4096 8月 28 19:32 .. 
-rw-r--r--. 1 git git 18 10月 16 2014 .bash_logout 
-rw-r--r--. 1 git git 176 10月 16 2014 .bash_profile 
-rw-r--r--. 1 git git 124 10月 16 2014 .bashrc 
drwxr-xr-x. 2 git git 4096 11月 12 2010 .gnome2 
drwxr-xr-x. 4 git git 4096 5月 8 12:22 .mozilla 
drwxr-xr-x. 2 git git 4096 8月 28 20:08 .ssh

将客户端公钥导入服务器端 /home/git/.ssh/authorized_keys 文件

回到 Git Bash 下,导入文件:

$ ssh git@192.168.56.101 'cat >> .ssh/authorized_keys' < ~/.ssh/id_rsa.pub

需要输入服务器端 git 用户的密码

回到服务器端,查看 .ssh 下是否存在 authorized_keys 文件:

[root@localhost git]# cd .ssh 
[root@localhost .ssh]# ll 
总用量 4 
-rw-rw-r--. 1 git git 398 8月 28 20:08 authorized_keys

可以查看一下是否是客户端生成的公钥

重要:

修改 .ssh 目录的权限为 700

修改 .ssh/authorized_keys 文件的权限为 600


[root@localhost git]# chmod 700 .ssh 
[root@localhost git]# cd .ssh 
[root@localhost .ssh]# chmod 600 authorized_keys

客户端再次 clone 远程仓库

$ git clone git@192.168.56.101:/home/data/git/gittest.git

查看客户端项目目录:

项目已经 clone 了

也可以使用 tortoiseGit 客户端来管理项目:

clone

禁止 git 用户 ssh 登录服务器

之前在服务器端创建的 git 用户不允许 ssh 登录服务器

编辑 /etc/passwd

找到:

git:x:502:504::/home/git:/bin/bash

修改为

git:x:502:504::/home/git:/bin/git-shell

此时 git 用户可以正常通过 ssh 使用 git,但无法通过 ssh 登录系统

SSH登录

什么是SSH

SSH为建立在应用层基础上的安全协议。SSH 是较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题

在很多时候,需要通过远程登录到Kali主机进行操作

配置SSH服务

使用root用户,打开Kali终端

vim /etc/ssh/sshd_config

#PermitRootLogin prohibit-password 取消注释并prohibit-password改为yes 
#PubkeyAuthentication yes 取消注释

​注: prohibit-password:禁止密码

PubkeyAuthentication:公钥身份验证,开启此项允许Xshell 配置SSH秘钥登录

修改完配置文件,重启ssh服务

systemctl restart ssh

设置ssh服务开机自动启动

update-rc.d ssh enable

检查ssh服务是否开启,并且是否为开机自动启动

systemctl status ssh

获取Kali主机的IP地址信息,用于远程连接

ifconfig

通过Xshell远程登录

官网下载Xshell https://www.xshell.com/zh/xshell/

建议把Xshell和Xftp都下载一下,Xftp可以远程上传、下载文件

点击下载,之后登录邮箱,点击邮箱链接,如果邮箱没有链接,看看是不是被当作垃圾邮件了(一般不会)

会发2封邮件,分别点击链接下载就行

安装过程都是中文,就不详细讲了

安装完成后,打开软件,会跳一个小框,叉掉就行,然后如下

ssh root@192.168.1.4

ssh 用户名@主机IP地址

输入root用户的密码,进行登录

同理,可登录dq这个普通用户

这样就可以远程对Kali主机进行操作了

kali linux软件源怎么配置

如果在用旧的kali版本的话,你可以搜索到阿里的源和中科大的源,写入/etc/apt/sources.list中。如果是最新的kali,保持官方源就好了,不需要修改。 参考技术A 修改etc/apt/下的sources.list

以上是关于Kali linux配置的主要内容,如果未能解决你的问题,请参考以下文章

kali linux下的网络配置

kali Linux环境配置和虚拟网络配置

Kali linux配置

kali linux网络配置

kali linux网络配置

虚拟机kali Linux 的网络配置