Linux系统相关检测与Shell脚本了解
文章目录Linux文件下载器wget文件下载器cutl多功能文件下载器Linux防火墙查看iptables静态防火墙状态查看firewalld动态防火墙状态防火墙安装指令Linux防火墙关闭与启动服务了解shell脚本编辑器常见的shell与shell的区别如何写shell脚本与使用可用TRAE CN平台生成AI写Shell脚本xshell远程连接xshell普通用户连接前提xshell管理员连接前提TRAE CN远程连接Hydra九头蛇工具使用语法常用命令参数Linux文件下载器Linux相关检测涵盖文件下载和Linux防火墙了解主要目的是为了解决防火墙入站规则过严带来的访问拦截问题。wget文件下载器wget简单可靠的下载器例如wget http://www.baidu.com/robots.txt -O abc.txt解析wget执行下载http://www.baidu.com百度网址robots.txt是网站根目录协议文件是告知搜索引擎/爬虫有哪些限制目录禁止访问权限文件-O大写文件下载本地另取名abc.txt。cutl多功能文件下载器cutl多功能传输工具“通过命令访问某个网站检测能否正常访问该内容能够返回响应内容响应内容是否HTML源码。”例如curl http://www.baidu.com/robots.txt -O abc.txt解析curl http://www.baidu.com回车此命令网站可先检测是否能正常访问百度网页网站。注以上需root管理员权限Linux防火墙防火墙就是根据系统管理员设定的规则来控制数据包的进出主要是保护内网的安全。目前Linux系统的防火墙类型主要有两种分别是iptables和firewalld。注Kali Linux是一个发行版本其中并没有安装防火墙需手动安装。查看iptables静态防火墙状态早期的Linux系统中默认使用的是iptables防火墙配置文件在/etc/sysconfig/iptables,主要工作在网络层该防⽕墙使⽤链式规则只可以过滤互联⽹的数据包⽆法过滤从内⽹到内⽹的数据包。iptables只可以通过命令行进行配置默认是允许所有需要通过拒绝去做限制在修改规则之后必须得全部刷新才可以生效还会丢失连接无法守护进程。查看firewalld动态防火墙状态取代了之前的iptables防火墙配置文件在/usr/lib/firewalld和/etc/fiewalld中,主要工作在网络层新增区域概念。(可过滤互联网数据包也可过滤内网的数据包控制数据进出)firewalld不仅可以通过命令行进行配置也可以通过图形化界面配置默认是拒绝所有需要通过允许去放行可以动态修改单条规则动态管理规则集允许更新规则而不破坏现有会话和连接可以守护进程。防火墙安装指令注Kali Linux是一个发行版本其中并没有安装防火墙需手动安装。sudo yum install firewalld基于RPM的系统安装firewalld。sudo apt install firewalld基于Debian的系统如Ubuntu虽然通常不预装firewalld但也可以使用apt命令进行安装。Linux防火墙关闭与启动服务sudo systemctl status firewalld查看firewalld防⽕墙状态sudo systemctl status iptables查看iptables防⽕墙状态如果系统使⽤iptables作为防⽕墙sudo systemctl start firewalld启动服务sudo systemctl stop firewalld 关闭firewalld服务sudo systemctl enable firewalld开机自启动sudo systemctl disable firewalld 禁止务开机自启动#逐句拆解 sudo→任务执行 systemctl→开启某个服务 start→状态指令 firewalld→服务名了解shell脚本编辑器shell是什么shell是人与机子中间的翻译管同时是程序语言是Linux当中一个自动化处理器。shell是Linux当中提高工作效率的一门编辑器语言windous中提高工作效率的编辑器是bet自动化批量处理的编辑器文本。目的shell不仅在Linux中提高某些开发人员或运维人员的工作效率同时也依赖一些功能非常强大的命令快速完成某些开发任务。常见的shell与shell的区别Linux 的 Shell 种类众多常⻅的有Bourne Shell/usr/bin/sh或/bin/shBourne Again Shell/bin/bashC Shell/usr/bin/cshK Shell/usr/bin/kshShell for Root/sbin/sh不同的shell工作环境与使用方法也是不一样的。/bin/bash它能够保证跨平台兼容性部分脚本开发优先使用的解释环境。没有美观格式Kali默认的sh是zsh例如usr/din/zsh它是日常交互与功能保持美观平衡状态的shell。保持美观格式sh这个shell是做嵌入式和轻量级一些的环境在当中优先使用的shell。如何写shell脚本与使用shell通常默认脚本文件名后缀为.sh是方便开发者肉眼区分行业中约定俗成的文件命令习惯。而Linux系统通常以文件头部的shebang标记#!去识别它的解释器。所以在文件中编辑自己的某个解释器就是告诉计算机自己需要的是哪个环境并去调用执行需要的环境。// vim编辑器自定义文件名vim adc//在vim文件编辑器中用#!去声名指定脚本使⽤的解释器bash#!/bin/bash//用sh语法,echo→去输出编写内容字符,输出字符内容需打上双引号echohell hack//vim用pw保存退出返回Linux的运行编辑指令./adc 如回车报错root权限也已被拒需查看r、w、x读写执行的文件权限并进行必要权限修改echo $SHELL查看当前用户使用的shbash 脚本名强行用bash执行sh 脚本名默认用sh执行当脚本文件没有sh执行权限可以bash或sh自带的执行权限去执行没有权限的脚本文件。可用TRAE CN平台生成AI写Shell脚本如果不会手动写脚本可将自己的需求描述给AI让他编写好脚本内容再复试去vim编辑器内粘贴保存并退出vim在去Linux中运行使用bash 脚本名执行打印到终端即可。那什么是TRAE CN:它是结合AI使用功能提高开发效率它是字节跳动国内开发ID。xshell远程连接xshell是远程连接服务协议可与xftp传输文件服务搭配使用。xshell用于远程连接服务器或虚拟机支持SSH、SERTAL等多种协议。SSH安全、加密协议用于远程连接Linux服务默认端口是22。服务又分成两部分组成“服务端”与“客户端”。服务端1.open ssh提供sh的服务 。 2.open ssl提供加密程序用于安全加密远程连接Linux系统。客户端xshellxshell普通用户连接前提xshell连接前提先确定被连通的远程主机是否开启SSH服务若没开启SSH服务需先开启再查看开放SSH服务对应端口再用ping检测网络互通性前提须知远程连接机子的ID地址或域名再要知道连接机子的“用户名”和“用户密码”。service ssh status查看服务运行状态。service ssh start远程主机开启ssh服务。netstat -ano |grep 22查看开放ssh对应端口。ping kali网络能通。ping通谁机子就连谁机子要知道机子的IP地址或域名。密码用户账号正确。注如以上无法正常连通查看虚拟网络服务器是什么模式“桥接模式可能无法ping通”注普通用户ping远程连接提权root用户是无法使用查看传输root文件。xshell管理员连接前提xshell会话root用户登录身份验证也要root用户名与密码。连通会话后若会弹出显示“ssh服务器拒绝密码”则是未满足连通机子的满足条件所以要让该账号允许远程登录权限需开启密码配置项允许该账号密码验证。vim /etc/ssh/sshd_config打开配置文件进行编辑ssh文件更改。将 PermitRootLogin without-password第33⾏ 改为 PermitRootLogin yes 并去掉前⾯的注释符号##PasswordAuthentication yes(第57⾏)的注释去掉如果是no就改为yesvim编辑器快速找到文本行号“命令模式33jj ”、“编辑模式set nu”列出显示行号。保存并退出shift输⼊wq然后回⻋重启ssh服务service ssh restartTRAE CN远程连接TRAE CN同样可做远程连接,支持SSH、WSL协议服务。操作步骤打开TRAE CN→左列计算机标识点击远程资源管理器→选择SSH连接目标→SSH连接目标右侧加号点击弹出窗口→填写远程连接机子(如ssh 用户名主机名IP)→ IP连通机子后在SSH连接目标右侧栏中点击“→当前主机连接窗口 ”→左下角会显示正在打开远程连接并会弹出窗口填写用户密码随后激活中间下方并完成显示。TRAE CN在关闭重新开启会自启动连接远程主机。快捷键退出远程连接ctrlD命令退出exit。Hydra九头蛇工具hudra九头蛇工具这款工具相当于弱口令暴力破解账号密码是一个强大的网络登录破解工具可自动化测试提高效率。且⽀持多种协议包括HTTP、HTTPS、FTP、SSH、Telnet等。Hydra的特点是能够使⽤多个密码同时进⾏尝试以加快破解过程。注在Kali中的Hydra工具自带无需下载。pydictor生成字典工具是一个强大的暴力破解生成字典工具有自己的使用语言可生成密码。在Kali中有自带目录字典文件名cd /usr/share/wordlists解压字典文件名的压缩包gunzip 压缩包文件名查看字典文件内容全部摊开cat 文件名不一次性摊开上下键滚动查看more 文件名退出ctrlc操作前提:通过技术手段得知Kali机子中有SSH协议这个的Kali账号所以爆破密码要知道通过什么协议去完成 。使用语法hydra 参数 IP地址 服务名hydra -l ⽤户名 -P 密码字典⽂件 ssh://⽬标IP地址hydra -L users.txt -P passwords.txt ssh://192.168.1.100-hydra -l ⽤户名 -P 密码字典⽂件 -s 端⼝号 ssh://⽬标IP地指定端口常用命令参数hydra [-l ⽤户名 或者 –L ⽤户名⽂件路径] [-p 密码 或者 –P 密码⽂件路径] [-t 线程数]默认16 [–vV 显示详细信息] [–o 输出⽂件路径] [–f 找到密码就停⽌] [–e ns 空密码和指定密码试探][ip|-M ip列表⽂件路径]