编写MAC记录与端口扫描脚本的shell脚本

                         MAC记录与端口扫描脚本

1、需求描述
编写名为system.sh的小脚本,记录局域网中各主机的MAC地址,保存到/etc/ethers文件中;
若此文件已存在,应先转移进行备份;每行一条记录,第1列为IP地址,第2列为对应的MAC地址
检查有哪些主机开启了匿名FTP服务,扫描对象为/etc/ethers文件中的所有IP地址,扫描的端口为21
2、命令测试
分析:记录局域网中各主机的MAC地址,保存到/etc/ethers文件中;若此文件已存在,
应先转移进行备份;检查有哪些主机开启了匿名FTP服务,扫描对象为/etc/ethers文件中的所有IP地址,
扫描的端口为21
arping –c 2 –w 1 ip :发送MAC地址解析请求
arp –n:纪录MAC
awk :打印 ip与MAC地址
使用wget下载的方法测试FTP服务
3、脚本编程与调试
 通过arping命令发送ARP请求,使用if语句根据反馈结果记录MAC地址
 将网段地址(如192.168.4.)赋值给变量NADD,作为检测地址的前缀
 使用while循环语句,重复检测目标并记录MAC地址,主机地址为1~254
let  HADD++ 使得ip地址的主机位自动加1
 通过awk命令过滤出/etc/ethers文件中的所有IP地址,赋值给变量TARGET,
并使用for循环语句,读取TARGET变量中的IP地址,重复探测FTP开启情况

实验步骤
1.编写名为system.sh的小脚本,记录局域网中各主机的MAC地址,保存到/etc/ethers文件中;
若此文件已存在,应先转移进行备份;每行一条记录,第1列为IP地址,第2列为对应的MAC地址

编写MAC记录与端口扫描脚本的shell脚本

脚本文件如下:
#!/bin/bash
d=/etc/ethers
if [ -f "$d" ] ###判断有没有/etc/ethers这个文件
then
(cp /etc/ethers /etc/ethers.bark )&&[ -d "$d" ]&&[ touch "$d" ]
###有,就新备份,删除,在创个新的
else ###这里注意,直接命令,用小括号
touch "$d" ###没有就创建文件
fi
HADD=1 ###定义IP的变量参数,起始值为1
while [ $HADD -lt 12 ] ###循环语句,当IP最后为不小于12,执行循环这里是做下测试,测试完后改为12改为254
do
ping -c 3 -i 0.2 -W 3 192.168.32.$HADD &> /dev/null ###ping一下
if [ $? -eq 0 ] ###有返回值,
then
echo "192.168.32.$HADD is up" ###输出此IP开启
arp -n |grep ether |awk '{print $1,$3}' > /etc/ethers ###并将IP和对应的mac地址筛选出来,
else ###覆盖保存到/etc/ethers文件里
echo "192.168.32.$HADD is down" ###否则,输出此IP关闭
fi
let HADD++ ###每次变量加1
Done
2.更改权限,运行测试文件

编写MAC记录与端口扫描脚本的shell脚本

3 查看/etc/ethers里面有没有存到文件

编写MAC记录与端口扫描脚本的shell脚本

开启的IP,其和他对应关系的IP都储存到这里面来了。

2、并使用for循环语句,读取TARGET变量中的IP地址,重复探测FTP开启情况
3、配置脚本文件。直接在system.sh后面添加下面脚本如下

编写MAC记录与端口扫描脚本的shell脚本

TARGET=$(awk '($1!="192.168.32.6")&&($1!="192.168.32.1"){print $1}' /etc/ethers)
###定义变量文件,要把网关和本机IP去掉,否则会卡机
for n in $TARGET
do
wget ftp://$n &> /dev/null ###当能用ftp下载,则匿名访问就开启了,否则关闭。
if [ $? -eq 0 ]
then
echo "ftp 匿名访问开启的服务机: $n"
else
echo "ftp 匿名访问关闭的服务机: $n"
fi
done

运行程序:

编写MAC记录与端口扫描脚本的shell脚本


在将shell脚本中HADD参数范围改成254,运行就可以用了

编写MAC记录与端口扫描脚本的shell脚本

原文地址:http://blog.51cto.com/14062619/2348845

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


现在给大家介绍一下如何查询MAC的生产日期,希望对你查询MAC的生产日期操作有所帮助。
1、点击【编辑虚拟机设置】,转到【CD/DVD (SATA)】,选中【使用 ISO 映像文件】复选框,点击【浏览】,找到已经准备好的 MacOS Ventura 镜像;4、客户机操作系统下,选择【Apple Mac OS X】,版本选择大家需要的【macOS版本】,再点击【下一步】;7、完成【抹掉】后,左上角关闭该窗口,返回上一界面,选择【Install macOS】,正式进入苹果系统安装流程;1、打开 Vmware Workstation,然后点击左上角的【文件】,打开的下拉项中,选择【新建虚拟机】;
注意:用哪个版本的 Python 运行安装脚本,pip 就被关联到哪个版本。一般情况 pip 对应的是 Python 2.7,pip3 对应的是 Python 3.x。pip介绍:pip 是 Python 包管理工具,该工具提供了对Python 包的查找、下载、安装、卸载的功能。1.打开后输入python3确定电脑上是否已安装python3,如果输入python是查看mac上的自带版本。如果你在 python.org 下载最新版本的安装包,则是已经自带了该工具。如下图是已经成功安装pip的状态。
Mac 安装nvm
Mac(M1)安装VMware虚拟机及Linux系统
Mac 如何安装 Telnet,mac安装telnet命令
是不是对键盘输入厌烦了?那你可以试试语音输入。 你可以按照下面的步骤打开Mac的语音输入功能。 以 macOS Catalina 为例: Step 1. 点击屏幕左上角的图标,点击【系统偏好设置】。
1.clean my Mac x 2.Cleaner One Pro 3.App Cleaner
按caps lock键。 CapsLock键,短按切换中英文,长按切换大小写。
windows: 1.PowerToys 2.不用软件进行分屏 Windows 10技巧1:窗口1/4分屏 - Acer Community 介绍说明 从Win7时代开始,微软便引入了屏幕热区概念,即
https://zhuanlan.zhihu.com/p/111111684 下载地址: https://www.smoothscroll.net/mac/
https://support.apple.com/zh-cn/guide/imac/apd2e7352054/mac 浏览:24 英寸 iMac 24 英寸 iMac 比以往更个
在Mac自带的中文输入法中,“反斜杠”键(“\”)就是顿号。
1.系统偏好设置。 2和3步如下图: 注意:在设置后,启用capslock大写的时候,需要长按capslock键。
Typora是一款轻便简洁的Markdown编辑器,支持即时渲染技术,这也是与其他Markdown编辑器最显著的区别。即时渲染使得你写Markdown就想是写Word文档一样流畅自如,不像其他编辑器的有编辑栏和显示栏。简洁美观实时预览扩展语法跨平台免费Typora现在收费,但你仍然可以在官方网站上找到历史版本。虽然新版本仍然值得收费,但免费版本仍然可以使用。httpshttpshttpshttpshttpshttpshttpshttps。......
Mac M1安装Centos7
连接为官方下载链接, 直接复制MD5可迅雷下载亲测可用, 和付费版使用体验无差别.1. Windows 64bithttps://download.typora.io/windows/typora-setup-x64-0.11.18.exeMD5:12F96372BEE2951ACF5627EA28F8A389**2. Window 32bit **https://download.typora.io/windows/typora-setup-ia32-0.11.18.exeMD5:F5036
ubuntu22.04 、系统安装、win双系统、Ubuntu分区、Ubuntu优化、美化gnome tweaks,扩展、macos、搜狗输入法、wps字体、微信安装、navicat15、java开发环境搭建、idea 输入法问题处理、双系统问题、github慢等等。史上最全保姆级Ubuntu使用教程
MAC怎么获取文件路径 MAC获取文件路径的四种方法