Shell编程实战指南:扫描MAC记录、系统监控和FTP服务安装
需积分: 0 96 浏览量
更新于2024-08-04
收藏 11KB MD 举报
"Shell编程实战"
本章节主要讲述了Shell编程实战的相关知识点,包括脚本编程步骤、MAC记录与端口扫描脚本、系统监控脚本等。
**脚本编程步骤**
在编写Shell脚本时,需要遵守一定的步骤,以确保脚本的正确性和可读性。这些步骤包括:
1. 需求分析:根据系统管理的需求,分析脚本要实现的功能、功能实现的层次、实现的命令与语句等。
2. 命令测试:将要用到的命令逐个测试,以决定使用的选项、要设置的变量等。
3. 脚本编程:将测试好的命令写入到脚本文件中,并通过各种语句将命令执行的结果保存、判断或者发出报警等。
4. 测试调优:对脚本进行测试,并根据结果进行优化,建议一边编程一边调试以减少错误的发生。
**MAC记录与端口扫描脚本**
本节讲述了如何编写MAC记录与端口扫描脚本。该脚本的需求描述如下:
* 编写名为system.sh的脚本,记录局域网中各主机的MAC地址,保存到/etc/ethers文件中;若此文件已存在,应先转移进行备份;每行一条记录,第1列为IP地址,第2列为对应的MAC地址。
* 检查有哪些主机开启了匿名FTP服务,扫描对象为/etc/ethers文件中的所有IP地址,扫描的端口为212。
实现步骤如下所示:
```bash
visystem.sh
#!/bin/bash
#1.定义网段地址、MAC列表文件
NADD="192.168.245."
FILE="/etc/ethers"
#2.发送ARP请求,并记录反馈结果
[-f $FILE] && /bin/cp -f $FILE $FILE.old
HADD=1
while [ $HADD -lt 254 ]
do
arping -c 2 -w 1 ${NADD}${HADD} &> /dev/null
if [ $? -eq 0 ]; then
arp -n | grep ${NADD}${HADD} | awk '{print $1, $3}' >> $FILE
fi
let HADD++
done
TARGET=$(awk '{print $1}' /etc/ethers)
echo "以下主机已开放匿名FTP服务:"
for IP in $TARGET
do
wget ftp://$IP/ &> /dev/null
if [ $? -eq 0 ]; then
echo $IP
rm -rf index.html
fi
done
chmod +x system.sh
./system.sh
cat /etc/ethers
```
**系统监控脚本**
本节讲述了如何编写系统监控脚本。该脚本的需求描述如下:
* 编写名为sysmon.sh的Shell监控脚本。
* 监控内容包括CPU使用率、内存使用率等。
在编写系统监控脚本时,需要考虑到监控的内容、监控的频率、报警的机制等因素,以确保系统的稳定运行。
本章节主要讲述了Shell编程实战的相关知识点,包括脚本编程步骤、MAC记录与端口扫描脚本、系统监控脚本等。这些知识点将帮助读者更好地理解Shell编程的实践应用。
2025-01-05 上传
2025-01-05 上传
2025-01-05 上传
2025-01-05 上传
2025-01-05 上传
2025-01-05 上传
xiaomoyu030
- 粉丝: 0
- 资源: 1
最新资源
- 校园优秀作品展示网页模板
- 毕业设计&课设-基于matlab的VLC系统仿真程序.zip
- 相关大数据框架内容.zip
- quizgrader:R套件,可自动进行测验评分和管理
- Quick Switch-crx插件
- 毕业设计&课设-文章题目为“通信时延和多址条件下的容错周期性事件触发共识”的MATLAB仿真代码….zip
- ReactNativeSample:React Native示例程序
- 橘黄色教育信息网页模板
- ColorGrad:这是供网站开发人员搜索颜色的网站
- MRF8P9040N_1_wrk.zip
- 华硕 P8H67D-M PRO驱动程序下载
- Randomizer-crx插件
- appresent:用于动画、缩放演示的 JavaScript 框架
- msu_prak:3个学期
- PyTestReport:PyTestReport
- HR Desk助手-crx插件