文章目录
- 【网络云计算】2024第52周-每日【2024/12/23】小测-理论&实操
- 1. 与系统管理相关的if控制语句脚本
- (1)磁盘空间检查脚本
- (2)进程监控脚本
- (3)用户登录检查脚本
- (4)系统负载检查脚本
- (5)服务端口监听检查脚本
- 2. 基于eNSP的交换机实验
- (1)理论拓扑图和实现思路
- (2)实操录屏和文档实现过程
- 实操录屏(此处文字描述操作步骤,实际可根据操作过程录制视频):
- 实操文档:
【网络云计算】2024第52周-每日【2024/12/23】小测-理论&实操
【网络云计算】2024第52周-每日【2024/12/23】小测-理论&实操
1. 与系统管理相关的if控制语句脚本
(1)磁盘空间检查脚本
- 理论核心思路:通过
df -h
命令获取磁盘使用情况,检查根分区(/
)的使用率是否超过设定阈值(如80%),如果超过则输出警告信息。 - 实操文档:
- 脚本内容:
#!/bin/bash
# 获取根分区磁盘使用率
usage=$(df -h / | awk 'NR==2{print $5}' | sed's/%//g')
# 判断使用率是否超过80%
if [ $usage -gt 80 ]; then
echo "根分区磁盘使用率已超过80%,当前使用率为$usage%,请及时清理磁盘空间。"
fi
- 使用方法:将上述脚本保存为`check_disk_space.sh`,赋予执行权限(`chmod +x check_disk_space.sh`),然后在终端运行即可。
(2)进程监控脚本
- 理论核心思路:使用
ps -ef
命令查找特定进程(如nginx
),如果进程不存在则尝试启动该进程。 - 实操文档:
- 脚本内容:
#!/bin/bash
# 检查nginx进程是否存在
process_count=$(ps -ef | grep nginx | grep -v grep | wc -l)
if [ $process_count -eq 0 ]; then
echo "nginx进程未运行,尝试启动nginx..."
systemctl start nginx
sleep 2
process_count=$(ps -ef | grep nginx | grep -v grep | wc -l)
if [ $process_count -eq 0 ]; then
echo "nginx启动失败,请检查相关配置。"
else
echo "nginx已成功启动。"
fi
else
echo "nginx进程正在运行。"
fi
- 使用方法:将脚本保存为`monitor_nginx_process.sh`,赋予执行权限后运行。
(3)用户登录检查脚本
- 理论核心思路:检查
/var/log/secure
日志文件中是否有新的用户登录失败记录(根据特定错误信息判断),如果有则发送邮件通知管理员。 - 实操文档:
- 脚本内容:
#!/bin/bash
# 检查登录失败记录
failed_login=$(grep "Failed password" /var/log/secure | tail -n 1)
if [ -n "$failed_login" ]; then
echo "检测到新的用户登录失败记录:$failed_login"
echo "登录失败记录:$failed_login" | mail -s "用户登录失败通知" admin@example.com
fi
- 使用方法:将脚本保存为`check_login_failures.sh`,赋予执行权限后运行(需确保服务器已配置邮件发送功能,且`admin@example.com`为管理员邮箱地址)。
(4)系统负载检查脚本
- 理论核心思路:通过
uptime
命令获取系统1分钟、5分钟和15分钟的平均负载,判断是否超过设定阈值(如1分钟负载超过2),如果超过则输出警告信息。 - 实操文档:
- 脚本内容:
#!/bin/bash
# 获取系统负载
load=$(uptime | awk '{print $10,$11,$12}' | sed's/,//g')
one_minute_load=$(echo $load | awk '{print $1}')
# 判断1分钟负载是否超过阈值
if [ $(echo "$one_minute_load > 2" | bc) -eq 1 ]; then
echo "系统1分钟平均负载过高,当前负载为$load,请检查系统资源使用情况。"
fi
- 使用方法:将脚本保存为`check_system_load.sh`,赋予执行权限后运行。
(5)服务端口监听检查脚本
- 理论核心思路:使用
netstat -tln
命令检查特定服务端口(如8080
)是否在监听状态,如果未监听则尝试启动相关服务(假设服务启动命令为./start_service.sh
)。 - 实操文档:
- 脚本内容:
#!/bin/bash
# 检查8080端口是否监听
port_listening=$(netstat -tln | grep 8080 | wc -l)
if [ $port_listening -eq 0 ]; then
echo "8080端口未监听,尝试启动服务..."
./start_service.sh
sleep 5
port_listening=$(netstat -tln | grep 8080 | wc -l)
if [ $port_listening -eq 0 ]; then
echo "服务启动失败,8080端口仍未监听,请检查服务配置。"
else
echo "服务已成功启动,8080端口正在监听。"
fi
else
echo "8080端口正在监听。"
fi
- 使用方法:将脚本保存为`check_port_listening.sh`,赋予执行权限后运行(需根据实际情况修改`start_service.sh`为正确的服务启动脚本路径和名称)。
2. 基于eNSP的交换机实验
(1)理论拓扑图和实现思路
- 拓扑图:
+----------+
| PC1 |
| 192.168.1.2/24 |
+----------+
|
|
+----------+----------+
| Switch1 |
| VLAN10: 192.168.1.1/24 |
| VLAN20: 192.168.2.1/24 |
+----------+----------+
|
|
+----------+
| PC2 |
| 192.168.2.2/24 |
+----------+
- 实现思路:
- 在eNSP中创建一台交换机(Switch1)和两台PC(PC1和PC2),并按照拓扑图连接。
- 配置Switch1的VLAN,创建VLAN10和VLAN20。
- 将连接PC1的交换机端口划分到VLAN10,将连接PC2的交换机端口划分到VLAN20。
- 配置VLAN10和VLAN20的接口IP地址,分别为192.168.1.1/24和192.168.2.1/24。
- 配置PC1和PC2的IP地址、子网掩码和网关,使其能与对应VLAN的交换机接口通信。
- 测试PC1和PC2之间的连通性,验证VLAN配置是否成功。
(2)实操录屏和文档实现过程
实操录屏(此处文字描述操作步骤,实际可根据操作过程录制视频):
- 打开eNSP软件,新建拓扑,从设备列表中拖出一台交换机(Switch)和两台PC(PC)到工作区。
- 使用连线工具将PC1连接到Switch1的端口0/0/1,将PC2连接到Switch1的端口0/0/2。
- 配置Switch1:
- 进入系统视图:
system-view
。 - 创建VLAN10:
vlan 10
,然后退出VLAN视图:quit
。 - 创建VLAN20:
vlan 20
,退出VLAN视图。 - 将端口0/0/1划分到VLAN10:
interface GigabitEthernet0/0/1
,port link-type access
,port default vlan 10
。 - 将端口0/0/2划分到VLAN20:
interface GigabitEthernet0/0/2
,port link-type access
,port default vlan 20
。 - 配置VLAN10接口IP地址:
interface Vlanif10
,ip address 192.168.1.1 24
。 - 配置VLAN20接口IP地址:
interface Vlanif20
,ip address 192.168.2.1 24
。
- 进入系统视图:
- 配置PC1:
- 打开PC1的配置界面,设置IP地址为192.168.1.2,子网掩码为255.255.255.0,网关为192.168.1.1。
- 配置PC2:
- 打开PC2的配置界面,设置IP地址为192.168.2.2,子网掩码为255.255.255.0,网关为192.168.2.1。
- 测试连通性:
- 在PC1上打开命令提示符,使用
ping 192.168.2.2
命令测试与PC2的连通性。如果能收到回复,则说明VLAN配置成功,不同VLAN间的通信通过交换机的三层接口实现;如果无法收到回复,则需要检查配置是否正确。
- 在PC1上打开命令提示符,使用
实操文档:
- 设备连接:
- 在eNSP工作区中,正确连接Switch1、PC1和PC2,确保物理连接正常。
- 交换机配置:
- 进入系统视图后,按上述步骤创建VLAN并划分端口,注意端口类型为access模式,确保端口只能属于一个VLAN。
- 配置VLAN接口IP地址时,确保地址与拓扑图中规划一致,且子网掩码正确。
- PC配置:
- 仔细设置PC1和PC2的IP地址、子网掩码和网关,保证与所在VLAN的交换机接口在同一网段。
- 连通性测试:
- 在PC1上执行ping命令时,观察返回结果。如果出现“请求超时”等错误信息,需要逐步排查交换机配置、PC配置以及网络连接等方面可能存在的问题。例如,检查VLAN划分是否正确、IP地址是否冲突、网关是否可达等。如果ping通,说明实验配置成功,实现了不同VLAN间通过交换机三层接口的通信。