linux下如何监控服务器的存活状态
发表于:2025-02-04 作者:千家信息网编辑
千家信息网最后更新 2025年02月04日,这篇文章主要讲解了"linux下如何监控服务器的存活状态",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"linux下如何监控服务器的存活状态"吧!简单邮
千家信息网最后更新 2025年02月04日linux下如何监控服务器的存活状态
这篇文章主要讲解了"linux下如何监控服务器的存活状态",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"linux下如何监控服务器的存活状态"吧!
简单邮件传输协议 (Simple Mail Transfer Protocol, SMTP) 是在Internet传输email的事实标准,SMTP是一个相对简单的基于文本的协议。在其之上指定了一条消息的一个或多个接收者,然后消息文本会被传输。SMTP使用TCP端口25。一、配置环境[root@ser ~]# cat /etc/redhat-release CentOS Linux release 7.5.1804 (Core) #查看系统环境[root@ser ~]# systemctl stop firewalld#停止firewall防火墙服务[root@ser ~]# systemctl disable firewalld#禁止firewall防火墙服务开机自动启动功能[root@ser ~]# firewall-cmd --statenot running#查看防火墙运行状态,确认防火墙被关闭。vi /etc/selinux/config#SELINUX=enforcing#SELINUXTYPE=targetedSELINUX=disabled:wq! #关闭selinux,保存退出[root@ser ~]# setenforce 0#临时关闭selinux,重启失效[root@ser ~]# getenforceDisabled#查看selinux状态,确认已关闭二、下载软件,并安装相关依赖的perl组件[root@ser ~]# yum -y install perl-Net-SSLeay perl-IO-Socket-SSL#安装依赖[root@ser ~]# wget http://caspian.dotconf.net/menu/Software/SendEmail/sendEmail-v1.56.tar.gz#下载安装包[root@ser ~]# tar -zxf sendEmail-v1.560.tar.gz#解压安装包[root@ser ~]# cd sendEmail-v1.56/[root@ser sendEmail-v1.56]# lsCHANGELOG README README-BR.txt sendEmail sendEmail.pl TODO#进入目录sendEmail-v1.56/[root@ser sendEmail-v1.56]# cp sendEmail /usr/local/bin/sendEmail[root@ser sendEmail-v1.56]# chown root:root /usr/local/bin/sendEmail[root@ser sendEmail-v1.56]# ll /usr/local/bin/sendEmail -rwxr-xr-x 1 root root 80183 Jul 31 15:14 /usr/local/bin/sendEmail#将sendEmail复制到执行目录/usr/local/bin/下,并赋予root用户权限、属组权限三、创建脚本并赋予脚本执行权限[root@ser ~]# cd[root@ser ~]# pwd/root#返回/root[root@ser ~]# vim mail.sh#!/bin/bashto=$1subject=$2body=$3/usr/local/bin/sendEmail -o tls=auto -f ******@qq.com -t "$to" -s smtp.qq.com -u "$subject" -o message-content-type=html -o message-charset=utf8 -xu ******@qq.com -xp ****** -m "$body"#脚本中 -f ********@qq.com表示发件人邮箱,-s smtp.qq.com 表示邮件的smtp服务器#本文中使用腾讯qq邮箱,使用其他邮箱服务器需要修改# -xu ********@qq.com 表示发件人邮箱的用户名,-xp ********表示邮件协议授权密钥[root@ser ~]# chmod +x mail.sh#执行脚本测试发送邮件[root@ser ~]# ./mail.sh chao.il@qq.com test 123 test 发件人:**<********@qq.com> 时 间:2019年9月12日(星期四) 下午3:50 (UTC+0:00 伦敦、都柏林、里斯本时间) 收件人:** <********@qq.com> 123 #收到的测试邮件四、常见问题及处理:1、当进行邮件测试时,出现invalid SSL_version ******/IO/Socket/SSL.pm line 444这样的报错时,原因是sendEmail软件和perl里面的SSL版本不兼容导致,通过修改/usr/local/bin/sendEmail文件第1906行,不指定SSL版本,原始文件为 if (! IO::Socket::SSL->start_SSL($SERVER, SSL_version=> 'SSLv3 TLSv1')) { 更改后为 if (! IO::Socket::SSL->start_SSL($SERVER)) {2、当进行邮件测试,出现ERROR => SMTP-AUTH: Authentication to smtp.qq.com:25 failed这样的报错时,原因是邮箱要求使用第三方客户端发送邮件是必须使用授权码登录的,使用帐号密码验证时,授权码需要登录邮箱设置中查找,有些邮件服务器需要先开启POP3服务。五、编写shell脚本进行服务器在线状态监控[root@ser ~]# vim CheckNetwork.sh #!/bin/bashtt1=172.20.220.20 #定义服务器一tt2=172.20.11.1 #定义服务器二while true#while(true)是一个无穷循环语句 #我们必须在他的循环语句内部加入一个判断,当他达到了什么要求就会跳出do ping -c 5 $tt1 >/dev/null #用ping命令来探测远程机是否存活 if [ $? -eq 0 ];then #shell脚本中$?是指上一次命令执行的成功或者失败的状态。如果成功就是0,失败为1。 #语句if [ $? -eq 0 ] 是判断if语句的上一个命令执行如果失败就执行if中的语句,否则就执行else中的内容。 echo `date +%F-%T` " $tt1 is yes" >> ip_yes.txt #追加当前时间和服务器IP is yes 到ip_yes.txt,此处ip_yes.txt用做正确日志文件 else echo `date +%F-%T` " $tt1 is Error" >> ip_no.txt #追加当前时间和服务器IP is Error到ip_no.txt,此处ip_no.txt用做错误日志文件 /root/mail.sh ********@qq.com 服务器错误 `date +%F-%T`----"爱普 $tt1 is Error" /root/mail.sh ********@qq.com 服务器错误 `date +%F-%T`----"爱普 $tt1 is Error" /root/mail.sh ********@sunplusapp.com 服务器错误 `date +%F-%T`----"爱普 $tt1 is Error" /root/mail.sh ********@sunplusapp.com 服务器错误 `date +%F-%T`----"爱普 $tt1 is Error" #发送邮件给以上的邮件地址 sleep 5 #休眠5秒fi ping -c 5 $tt2 >/dev/null if [ $? -eq 0 ];then echo `date +%F-%T` " $tt2 is yes" >> ip_yes.txt else echo `date +%F-%T` " $tt2 is Error" >> ip_no.txt /root/mail.sh ********@qq.com 服务器错误 `date +%F-%T`----"益辉 $tt2 is Error" /root/mail.sh ********@qq.com 服务器错误 `date +%F-%T`----"益辉 $tt2 is Error" /root/mail.sh ********@sunplusapp.com 服务器错误 `date +%F-%T`----"益辉 $tt2 is Error" /root/mail.sh ********@sunplusapp.com 服务器错误 `date +%F-%T`----"益辉 $tt2 is Error" sleep 5fi kill -9 `ps aux | grep CheckNetwork | grep -v grep | awk '{print $2}'` #执行脚本后,杀死此脚本的进程,防止重复执行脚本。done [root@ser ~]# crontab -l*/15 8-18 * * * /usr/bin/bash /root/CheckNetwork.sh#设置定时任务,8点到18点每15分钟执行CheckNetwork.sh。(时间请根据需求设定)下面为报警邮件信息 服务器错误 发件人:** <********@qq.com> 时 间:2019年9月12日(星期四) 下午4:45 (UTC+0:00 伦敦、都柏林、里斯本时间) 收件人:** <********@qq.com> 2019-09-12-12:45:19----益辉 172.20.11.1 is Error
感谢各位的阅读,以上就是"linux下如何监控服务器的存活状态"的内容了,经过本文的学习后,相信大家对linux下如何监控服务器的存活状态这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!
服务
服务器
邮件
错误
脚本
状态
邮箱
监控
时间
语句
发件人
文件
防火墙
爱普
测试
防火
内容
命令
权限
传输
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
农大肥业互联网农业科技
网络安全博览会互动
怎样删除已筛选数据库
网络安全宣传周活动倡议书
关于网络安全有趣的网名
acs期刊数据库
计算机网络技术中英翻译
口腔医院区医院网络安全等级保护
智能手机的网络安全隐患有哪些
关于网络安全说法的错误
互联网公司高科技研发
互联网与无线网络技术的发展
网络技术专业术语
表和数据库的关系是( )
网络安全有哪些编程
基础数据库开发是什么意思
计算机和网络安全协议
数据库访问不了如何备份
socket 服务器怎么测并发
嘉兴网络技术支持企业
电信运营商的数据库软件
oracle数据库精讲课程
个人软件开发方法
网络安全法内容安全
浙江软件开发技术咨询哪家好
剑灵人物数据库
浙江戴尔服务器续保更换云主机
小米路由服务器
绝地求生大逃杀哪个服务器
临床资料数据库有哪些问题