【kali linux】基础知识整理

查看 95|回复 9
作者:孤樱懶契   
认识linux
SHELL和终端

查看shells:  cat /etc/shells
查看当前shell   :  echo $SHELL  linux区分大小写

vim编译器

VM编辑器是所有unix及linux系统下标准的编辑器。

vi/vim编辑器模式

命令模式:刚进入vim的时候,默认就是命令模式,可以复制行,删除行等。
输入模式:可以输入内容
输入模式 -> 命令模式  快键键 ESC键
关闭、保存文件
冒号“:”开头
命令模式下
w: 保存
q:退出
wq和x都是保存退出
q! :强制退出
w!: 强制保存,管理员才有权限
例如      :q!
查找
普通模式:
/PATTERN: 从当前位置向后查找
?PATTERN: 从当前位置向前查找
模式转换
使用insert键切换进输入模式
命令模式 -> 输入模式
i:在当前光标所在字符的前面,转换为输入模式
I:在当前光标所在行的行首转换为输入模式
a:在当前光标所在字符的后面,转换为输入模式
A:在当前光标所在行的行尾,转换为输入模式
o:在当前光标所在行的下方,新建一行,并转为输入模式
O:在当前光标所在行的上方,新建一行,并转为输入模式
s:删除光标所在字符
r:替换光标处字符

Linux常用命令

echo命令: echo $SHELL
echo命令用于在终端输出字符串或变量提取后的值
date命令
date命令用于显示及设置系统的时间或日期
poweroff命令
poweroff命令用于关闭系统
top命令
显示当前系统正在执行的进程的相关信息,包括进程id、内存占用率等

系统检测命令

ifconfig命令
ifconfig命令用于获取网卡配置与网络状态等信息
uname命令 : uname -a
uname命令用于查看系统内核与系统版本等信息
who命令
who用于查看当前登入主机的用户终端信息
history命令 : history
history命令用于显示历史执行过的命令

工作目录切换命令

pwd命令
pwd命令用于显示用户当前所处的工作目录
cd命令
cd命令用于切换工作路径
ls命令
ls命令用于显示目录中的文件信息

了解VMware网络基本配置

briged(桥接模式):虚拟机和主机好比在同一个网络环境下的两台电脑
Nat(网络地址转换模拟):NAT模式虚拟机通过主机进行联网。
Host-Only(主机模式):主机模式将虚拟机与外网隔开,只能让虚拟机和虚拟机之间联网

kali的更新
一句话更新
root@kali:~# apt update && apt full-upgrade
如何查看自己的Kali Linux是否更新成功?更新到最新版本?重启后,用如下命令:
root@kali:~# grep VERSION /etc/os-release
VERSION="2019.1"
VERSION_ID="2019.1"
root@kali:~#
root@kali:~# uname -a
Linux kali 4.19.0-kali1-amd64 #1 SMP Debian 4.19.13-1kali1 (2019-3-18) x86_64 GNU/Linux
系统源
源配置(软件源)概念:源就是来源。就是你安装软件时,程序从哪里获取软件包(安装程序在你的机器上,但需要安装的东西却在软件源服务器上)。其实你可以把它称为软件仓库。安装软件时,就是从仓库里面调取数据放在你的机器上。
Linux下载软件的两种方式:

1、从源配置(软件源)所在服务器上通过特定命令获取JDK,Tomcat之类的软件包
2、从官网上下载软件包

第一次更新源的过程就相当于我们刚装好windows系统需要打补丁

1、查看当前系统中所有软件包状态
sudo dpkg --get-selections | more
可以找到metasploit-framework软件包名为"metasploit-framework"
2、给metasploit-framework锁定当前版本不更新
sudo apt-mark hold metasploit-framework
3、查看当前已锁定的软件包
sudo dpkg --get-selections | grep hold
4、取消软件保留设置
sudo apt-mark unhold metasploit-framework

配置kali系统更新源

1、使用编译器打开系统源文本
leafpad /etc/apt/sources.list   
2、可以更改更新源
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



3、使用更新命令

apt-get updata && apt-get upgrade && apt-get dist-upgrade
kali系统更新后出现的问题
如果metasploit-framework无法启动
进入cd  /usr/share/metasploit-framework目录下
使用命令
gem install bundler
gem update --system
然后成功启动
SSH服务简介

SHH是标准的网络协议,默认22号端口,采用密文的形式在网络中传输数据,相对于通过明文传输的telnet,更具有更高的安全性
SSH服务目前较可靠,专为远程登录服务器和其他网络服务提供安全性的协议
SSH提供了口令和密钥两种用户验证方式,这两者都是通过密文传输数据的。
SSH对我们主要的作用是:能够操作远程服务器系统

kali配置SSH服务和windows配置SSH服务

1、使用编辑器打开ssh配置
leafpad /etc/ssh/sshd_config
搜索:
#PasswordAuthentication yes  去掉注释
#PermitRootLogin prohibit-password   去掉注释并改为PermitRootLogin yes  
2、使用命令行模式开启SSH服务
service ssh start
3、查看服务开启状态
service ssh status
3、登陆测试
使用
xshell蓝奏云: https://wwr.lanzouj.com/b0262213c 密码:9hm1
putty蓝奏云:[https://wwr.lanzouj.com/ib2cio96gxi   52pj
openssh使用windows自带命令窗口连接:https://www.mls-software.com/opensshd.html
使用方法

等工具测试

  • windows配置ssh服务

  • 下载地址:https://github.com/PowerShell/Win32-OpenSSH/releases


  • 安装SSH服务

    powershell.exe -ExecutionPolicy Bypass -File install-sshd.ps1




    Kali工具包简介
    kali linux 含有可用于渗透测试的工具

    信息收集:这类工具主要用来帮助我们收集目标的网站架构、网站脚本语言、网站信息泄露
    漏洞评估:这类工具可以扫描目标系统上的漏洞,扫描主机漏洞,系统漏洞
    漏洞利用:这类工具可以利用在目标系统中发现的漏洞,让我们针对性的去利用攻击
    Web应用:即与web应用有关的工具,关于web方面的扫描器、爆破等工具
    密码攻击:提供在线密码破解或者是离线的密码破解工具给我们使用

    Linux常用命令
    文本文件编辑命令

    cat命令
    cat命令用于查看纯文本文件(内容较少的)
    more命令
    more命令用于查看纯文本文件(内容较多的)
    ls命令
    查看当前目录
    head命令
    head命令用于查看纯文本文档的前N行
    wc命令
    wc命令用于统计指定文本的行数、字数、字节数
    stat命令: stat nmap.txt
    stat命令用于查看文件的具体存储信息和时间等信息
    touch命令: touch --help    touch -a 05011001 nmap.txt
    touch命令用于创建空白文件或设置文件的时间
    mkdir命令
    mkdir命令用于创建空白的目录
    cp命令
    cp命令用于复制文件或目录
    mv命令
    mv命令用于移动文件或将文件重命名
    file命令
    file命令用于查看文件的类型
    tar命令
    tar命令用于对文件进行打包压缩或解压
    find命令
    find命令用于按照指定条件来查找文件
    rm命令
    用于删除文件或者文件夹,删除文件夹要用-r -f
    wget命令: wget http://linux.51yip.com/images/logo.png
    wget命令用于下载

    文件管理权限命令

    chmod
    文件和目录的权限
    linux中文件和目录的权限有所不同
    文件的权限
    r 可以读文件 数值为4
    w 可以写文件  2
    x  可以执行文件 1

    用户/用户组

    在Linux中,每个文件都是属于一个用户的,每一个用户都属于一个用户组
    可以同时拥有N多个用户,和用户组

    保存用户信息

    用户信息:cat /etc/passwd
    root:x:0:0:root:/root:/usr/bin/zsh
    daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
    bin:x:2:2:bin:/bin:/usr/sbin/nologin
    sys:x:3:3:sys:/dev:/usr/sbin/nologin
    sync:x:4:65534:sync:/bin:/bin/sync
    games:x:5:60:games:/usr/games:/usr/sbin/nologin
    man:x:6:12:man:/var/cache/man:/usr/sbin/nologin
    lp:x:7:7:lp:/var/spool/lpd:/usr/sbin/nologin
    mail:x:8:8:mail:/var/mail:/usr/sbin/nologin
    news:x:9:9:news:/var/spool/news:/usr/sbin/nologin
    uucp:x:10:10:uucp:/var/spool/uucp:/usr/sbin/nologin
    proxy:x:13:13:proxy:/bin:/usr/sbin/nologin
    www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin
    backup:x:34:34:backup:/var/backups:/usr/sbin/nologin
    list:x:38:38:Mailing List Manager:/var/list:/usr/sbin/nologin
    irc:x:39:39:ircd:/run/ircd:/usr/sbin/nologin
    gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/usr/sbin/nologin
    nobody:x:65534:65534:nobody:/nonexistent:/usr/sbin/nologin
    _apt:x:100:65534::/nonexistent:/usr/sbin/nologin
    systemd-timesync:x:101:101:systemd Time Synchronization,,,:/run/systemd:/usr/sbin/nologin
    systemd-network:x:102:103:systemd Network Management,,,:/run/systemd:/usr/sbin/nologin
    systemd-resolve:x:103:104:systemd Resolver,,,:/run/systemd:/usr/sbin/nologin
    mysql:x:104:110:MySQL Server,,,:/nonexistent:/bin/false
    tss:x:105:111:TPM software stack,,,:/var/lib/tpm:/bin/false
    strongswan:x:106:65534::/var/lib/strongswan:/usr/sbin/nologin
    ntp:x:107:113::/nonexistent:/usr/sbin/nologin
    messagebus:x:108:114::/nonexistent:/usr/sbin/nologin
    redsocks:x:109:115::/var/run/redsocks:/usr/sbin/nologin
    rwhod:x:110:65534::/var/spool/rwho:/usr/sbin/nologin
    iodine:x:111:65534::/run/iodine:/usr/sbin/nologin
    miredo:x:112:65534::/var/run/miredo:/usr/sbin/nologin
    _rpc:x:113:65534::/run/rpcbind:/usr/sbin/nologin
    usbmux:x:114:46:usbmux daemon,,,:/var/lib/usbmux:/usr/sbin/nologin
    tcpdump:x:115:120::/nonexistent:/usr/sbin/nologin
    rtkit:x:116:121:RealtimeKit,,,:/proc:/usr/sbin/nologin
    sshd:x:117:65534::/run/sshd:/usr/sbin/nologin
    statd:x:118:65534::/var/lib/nfs:/usr/sbin/nologin
    postgres:x:119:123:PostgreSQL administrator,,,:/var/lib/postgresql:/bin/bash
    avahi:x:120:125:Avahi mDNS daemon,,,:/run/avahi-daemon:/usr/sbin/nologin
    stunnel4:x:121:126::/var/run/stunnel4:/usr/sbin/nologin
    Debian-snmp:x:122:127::/var/lib/snmp:/bin/false


  • 用户划分
  • 系统用户
  • root
  • 普通用户
  • 用户所创建的用户
  • 虚拟用户
  • 软件所创建的虚拟用户

  • 用户组信息:cat /etc/group
    scanner:x:133:saned,kali
    saned:x:134:
    sambashare:x:135:
    inetsim:x:136:
    colord:x:137:
    geoclue:x:138:
    lightdm:x:139:
    kpadmins:x:140:
    kali:x:1000:
    kaboxer:x:141:kali,root
    systemd-coredump:x:999:
    beef-xss:x:142:

  • id组名 查看组信息



    参考:https://blog.51cto.com/983836259/1634705


  • 用户组
  • 文件所拥有者   : 文件的创造者,谁创建的文件,谁就是文件的所有者
  • 用户所在组      : 当linux当前用户创建了一个文件后,则这个文件所属的组便是这个用户所在的组
  • 其他组 : 除了文件所有者以及所在组的用户外,系统其他的用户都是文件的其他组

  • 用户管理
  • 查看用户信息 : cat /etc/passwd   



  • 添加用户

  • useradd -m key  ——自动在home文件夹下创建key

  • useradd -g 组名 用户名 ——指定添加在某个组里面

  • passwd key ——修改key的新密码

  • 删除用户 userdel -r key或者不加-r  ——删除目录以及用户

  • 组管理

  • 查看用户组信息

  • cat /etc/group

  • 查看用户组归属  ---> groups用户名

  • 添加组

  • usermod -G 组名 用户名

  • usermod -a -G 组名 用户名 ->> 追加到新组

  • 删除组 -->> groupdel -f 组名



    权限管理


  • 权限划分
  • r 表示读文件 数值为4
  • w 表示写文件 数值为2
  • x 表示执行文件 数值为1

  • 查看权限 -> 当前目录下 ls -l


  • 设置权限
  • chmod命令
  • chmod 777 文件名 ---> 给当前文件设置为777权限
  • chmod -R 777 目录名  ---> 给当前目录递归权限为777



    软件安装管理

  • dpkg ----> dpkg是Debian Package缩写,是一个Debian的命令行工具,它可以用来安装、删除、构建和管理Debian的软件包
  • 安装软件 dpkg -i xxx.deb
  • 卸载软件
  • dpkg -r xxx.deb  --->删除软件包
  • dpkg -r --purge xxx.deb --->连通配置文件一起删除
  • gdebi ---> gdebi是一个轻量级的deb安装工具,它能代替臃肿的ubuntu软件中心安装deb
  • 安装gdebi
  • sudo apt-get update
  • sudo apt-get install gedbi
  • 安装软件 sudo gdebi sogoupinyin.deb 选择y即可
  • 图形化安装



    压缩命令


  • linux下常用压缩文件格式
  • .zip
  • .gz
  • .bz2
  • .tar.gz
  • .tar.bz2

  • tar命令

  • 打包命令 : tar -czvf 打包之后的文件名 源文件名 e.g. tar -czvf 123.tar 123.txt

  • 解压命令: tar -xzvf 指定解包文件





    搜索命令

  • find命令 ---> find命令所查找的目录路径
  • 指定目录查找并输出内容 ---> find ./kali/ -print
  • 指定目录以shell脚本运行输出 --->  find ./etc -exec ls {} \;
  • 分支主题



    欢迎来到我的博客http://gylq.github.io

    命令, 文件

  • ak2lb8k8cuf   

    楼主在哪里学习的
    hua111   

    每天认真学习
    唯有诗酒度余生   

    学习会进步,进步会使人开心
    JoyChh1   

    总结很到位呀,感谢楼主分享
    hua111   

    认真学习每天进步
    szupc   

    收藏学习,多谢分享了
    staruniverse   

    多谢多谢,还想着怎么自己总结呢
    11940s   

    感谢分享
    FlyinSnail   

    谢谢大佬分享,小白来学习了。
    您需要登录后才可以回帖 登录 | 立即注册

    返回顶部