配置邮件分为两种情况: 第一种:使用远端邮件服务器发送报警邮件 Linux系统版本:CentOS6.5-64 下载mailx: http://nchc.dl.sourceforge.net/project/heirloom/heirloom-mailx/12.4/mailx-12.4.tar.bz2 安装邮件发送软件mailx(CentOS6.5自带mailx软件包为12.4,故无需下载源码安装) [root@vm-zabbix ~]# rpm -qa |grep mailxmailx-12.4…
邮件报警有两种情况:1)Zabbix服务端只是单纯的发送报警邮件到指定邮箱,发送报警邮件的这个邮箱账号是Zabbix服务端的本地邮箱账号(例如:root@localhost.localdomain),只能发送,不能接收外部邮件.2)使用一个可以在互联网上正常收发邮件的邮箱账号(例如:xxx@163.com),通过在Zabbix服务端中设置,使其能够发送报警邮件到指定邮箱.上面第2中使用外部邮箱发送报警邮件之前已经介绍了:分布式监控系统Zabbix-3.0.3-完整安装记录(5)-邮件报警部署.下…
最近想监控下云主机的ssh登录情况,所以开始写ssh登录报警监控.实现方式并不难. 一:邮箱申请开启SMTP 在邮箱中选择“设置”----->“账户” 在如下图处开启POP3/SMTP服务,并生成授权码. 二:修改相关参数 登录要进行ssh登录监控的服务器,在/etc/ssh创建"sshrc"文件: #!/bin/bash #获取登录者的用户名 user=$USER #获取登录者的IP地址 ip=${SSH_CLIENT%% *} #获取登录的时间 time=$(date +%F…
一,alertmanager的用途 1,Alertmanager的作用: Alertmanager是一个独立的报警模块, 它接收Prometheus等客户端发来的警报,并通过分组.删除重复等处理, 通过路由把警报发送给正确的接收器: 报警方式可以按照不同的规则发送给不同的模块负责人, Alertmanager支持Email, Slack,等报警方式,  也支持通过webhook接入钉钉等IM工具   2,我们这里配置的例子: 当一台运行node_exporter的服务器发生故障后, alertm…
#前提得在zabbix_server配置文件中配置触发脚本的目录,例如,我配置的在/usr/local/zabbix/server/scripts目录下 编写python脚本如下 因为我的服务器在腾讯云,无法使用25端口,故使用465端口,因此脚本中需配置ssl,就是这一行 smtp_server = smtplib.SMTP_SSL(smtp_host,465) #!/usr/bin/python # -*- coding: UTF-8 -*- from email import encode…
本文章主要解决 linux下监控到系统状况后怎么发邮件报警的问题. 如果你是最小化安装的centos/redhat 系统,是没有自带mailx的,也就是没有mail 命令. 解决办法 yum -y install mailx :安装一个就好了. 1,编辑配置文件 /etc/mail.rc 对配置说明 from: 对方收到邮件时显示的发件人 smtp :指定第三方发邮件的smtp服务器地址(如qq,163,也可是公司的邮件服务器) set smtp-auth-user: 邮件账号的用户名 set…
#!/bin/bash DATE=$(date +%F" "%H:%M) #只支持centos6 IP=$(ifconfig eth0 | awk -F '[ :]+' '/inet addr/{print $4}') MAIL="13102133719@126.com" if ! which vmstat &>/dev/null; then echo "vmstat command no found, Please install proc…
正在看C++,我主业是Java开发,但是最近服务不太稳定,自己用C++造了个小轮子. 配置好要监控的访问路径,IP.端口号和路径.涉及到的知识点有以下几个部分: 构造函数与析构函数 内存的分配与释放(new,delete) C++读配置文件(IO操作) 数据结构与算法(单链表操作+模板类) C++网络编程(访问HTTP地址以及发送邮件) C++程序的编译过程 string,char *数组的使用 看了一万遍书,不如造个轮子.可能还有其他的知识点,暂时没有总结. 有需要的话,可以把这个轮子的git…
#!/bin/bash#提取根分区剩余空间disk_size=$(df -h / | awk '/\//{print $4}')#提取内存剩余空间disk_size=$(df -h / | awk '/\//{print $4}')while :do#注意内存和磁盘提取的空间大小都是以 Kb 为单位     if[ $disk_size -le 512000 -a $mem_size -le 1024000 ];then         mail -s Warning root <<EOF …
最近Linux服务器磁盘使用量经常到100%,直到影响到正常服务出现故障才会去注意,做不到防患于未然,今天在网上搜集了资料,加上自己修改,写了一个shell脚本用于实时监控磁盘使用量并在超过阀值后自动发送报警邮件. 脚本简单说明:用df命令查看磁盘使用量信息,超过脚本设置的阀值(critical=90)90%,就会自动用sendEmail命令发送报警邮件(邮件smtp.email等需自行修改成真实存在的). 1.首先下载监测脚本(点击下载)或直接复制下面脚本代码存为disk_check.sh文件…
众所周知,用Linux系统自带的sendmail发送邮件是有限制的,可能对有些邮箱无法正常发送,导致报警邮件不能够及时发送到,因此就可能会产生不必要的麻烦!对此,我们可以用其他方法来发送邮件,就是在cacti上登陆自己的邮箱,设定自己的邮箱来发送报警邮件!简而言之就是把系统当做一个邮件客户端,登陆自己的邮箱来发送邮件! 废话不多说,下面是在cacti上面的设置过程,其中cacti已经安装了相关的插件. 测试系统信息: #uname -a Linux 2.6.32-358.el6.x86_64 #…
一.mail基本配置 1.配置:vim /etc/mail.rc 在文件末尾追加以下内容: set from=@.com # 别名<123456789@163.com> set smtp=smtphz.qiye..com set smtp-auth-user=@.com set smtp-auth-password=xxx set smtp-auth=login # 两种常用模式:tls.ssl,如果使用的是后者,则password填写授权码而不是密码 set ssl-verify=ignor…
情况介绍 首先确保邮箱规则没有把报警邮件作为垃圾邮件拉黑了. 服务器断电重启后,发现zabbix报警邮件无法发送,断电之前是好好的,但是重启后不行了,于是查看maillog日志,发现这个错误: Host found but no data record of requested type. [root@zabbixminitor ~]# tail /var/log/maillog Nov 14 19:52:05 zabbixminitor postfix/pickup[3914]: 72A482…
zabbix原生的报警媒介类型中,邮件报警是我们常用的方式.当我们在CentOS6上面安装zabbix3.0并配置邮件报警的时候,在邮件配置正确的前提下,不管触发器如何触发,邮件总是发送不出去,但是在CentOS7上面安装的zabbix3.0却可以正常发送邮件.究其原因,是因为zabbix3.0对服务器上的libcurl版本有要求(CentOS6.9上的默认curl版本为7.19.7,而CentOS7.2上的默认libcurl版本为7.29.0),zabbix3.0所要求的的版本说明在zabbi…
给Linux设置SSH登录邮件提醒 心血来潮,用 last 命令查看了登录记录,不看不知道,一看就有问题.竟然有两个陌生的IP ,一个是美国欧莱雅的,一个是北京联通的.真是郁闷,密码简单了真不行 后来仔细想了,这两个陌生的IP可能还是自己的,美国欧莱雅的可能是自己用过的VPN, 而北京联通这个IP可能是自己的联通卡流量,虽然我这人山高皇帝远,可是这个联通网络貌似要经过北京的联通网管,难道是虚惊一场   ;) 或许这两位是一些网站的站长,这么轻而易举的就进来我的 root, 或者他们只是看看,我这…
在写监控脚本时,为了更好的监控服务器性能,如磁盘空间.系统负载等,有必要在系统出现瓶颈时,及时向管理员进行报告.在这里通常采用邮件报警,同时,邮件设置为收到邮件,即向指定手机号码发送短信.这样可以实现7*24小时及时监控服务器状况.      在这里,采用的是linux系统自带的邮件服务器:sendmail.但sendmail默认只能给本机发送邮件,如何发送外部邮件呢?在这里,需要修改sendmail的配置文件.具体步骤如下:      1.修改配置文件            # vim /et…
安装zabbix的时候已经配置了zabbix_server的脚本目录 AlertScriptsPath=/opt/app/zabbix/script 所以把邮件.钉钉.微信相关的脚本都放在/opt/zabbix/script目录下 邮件 效果图 <table width="800px" border="0" cellspacing="0", cellpadding="4"> <tr bgcolor="…
本地生成密钥 这里选择在购买前先在本地生成密钥key(分为private key和public key),所以先生成密钥再进行购买,购买完以后直接ssh登录,不需要输入密码(安全性考虑) 其中,public key存放在欲登录的服务器上,而private key为特定的客户机所持有. 当客户机向服务器发出建立安全连接的请求时,首先发送自己的public key,如果这个public key是被服务器所允许的,服务器就发送一个经过public key加密的随机数据给客户机,这个数据只能通过priv…
利用python写了简单测试主机是否存活脚本,此脚本不适于线上使用,因为网络延迟.丢包现象会造成误报邮件,那么后续会更新判断三次ping不通后再发报警邮件,并启用多线程处理. #!/usr/bin/env python # coding:UTF- import time import pexpect import smtplib from email.mime.text import MIMEText mail_host = "smtp.163.com" #定义smtp服务器 mail…
使用Gerrit发送测试邮件 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.安装HTTP服务 1>.安装HTTP服务 [root@gerrit.yinzhengjie.org.cn ~]# yum -y install httpd 2>.使用HTTP配置反响代理 [root@gerrit.yinzhengjie.org.cn ~]# /etc/httpd/conf/httpd.conf Listen <VirtualHost *:> ServerName g…
设置防火墙策略时,关于SSH:22访问权限,我们常常会设置服务器只接受某个固定IP(如公司IP)访问,但是当我们出差或在家情况需要登录服务器怎么办呢? 常用两种解决方案:1.通过VPN操作登录主机: 2.使用ping钥匙临时开启远程主机SSH:22端口: 我们今天就讨论第2种方案,阐述如何通过ping钥匙来临时打开SSH:22的访问权限 原理: recent 模块可以记录最近访问者IP,常利用此功能做DROP策略应对syn-flood及ddos攻击.但在本例中我们反其道,利用recent模块做A…
使用phpmailer发送smtp邮件时提示 SMTP Error: Could not authenticate 错误 这个错误是验证出现错误, $mail->Port = 25; //SMTP服务器的端口号 $mail->Host = "smtp.163.com"; ///SMTP服务器 $mail->Username = "123456@163.com"; //SMTP服务器用户名 $mail->Password = "123…
一.ssh登录过程 在实际开发中,经常使用ssh进行远程登录.ssh 登录到远程主机的过程包括: 版本号协商 密钥和算法协商 认证 交互 1.1 版本号协商阶段 (1) 服务端打开22端口(也可以为了避免攻击,重定义ssh端口),等待客户连接 (2) 客户端向服务端发起TCP连接,连接建立后,服务端向客户端发送第一个报文,包括版本标志字符串,格式为"协议版本号 次协议版本号 软件版本号". (3) 客户端收到报文后进行解析,如果服务端的协议版本号比自己的低,则使用服务端的协议版本号,否…
设置防火墙策略时,关于SSH:22访问权限,我们常常会设置服务器只接受某个固定IP(如公司IP)访问,但是当我们出差或在家情况需要登录服务器怎么办呢? 常用两种解决方案:1.通过VPN操作登录主机: 2.使用ping钥匙临时开启远程主机SSH:22端口: 我们今天就讨论第2种方案,阐述如何通过ping钥匙来临时打开SSH:22的访问权限 原理: recent 模块可以记录最近访问者IP,常利用此功能做DROP策略应对syn-flood及ddos攻击.但在本例中我们反其道,利用recent模块做A…
一.邮件发送 1.邮件发送使用SMTP协议或者IMAP协议,这里使用SMTP协议演示. SMTP协议使用的端口号:25 rfc821详细记载了该协议的相关信息 (1)使用telnet发送邮件(使用126邮箱服务器,现在126邮箱服务器要求使用类似于QQ的独立密码进行客户端的验证(网页登陆不需要)) 第一步:连接到邮箱服务器 telnet smtp.126.com 25 第二步: ehlo aaa(任意字符串) 第三步:请求验证登录 auth login 第四步:输入使用Base64编码后的用户名…
环境: 1:操作系统:openSUSE 2:SSH工具:Xshell 3:virtualbox 解决问题:Xshell通过ssh登录openSUSE进行操作. 1:virtualbox安装好openSUSE后,网络设置为桥接 linux-8o9i:~ # ifconfig :::3C:DC:1B inet addr:192.168.1.111 Bcast:192.168.1.255 Mask:255.255.255.0 inet6 addr: fe80::a00:27ff:fe3c:dc1b/…
Windows 中远程 SSH 登录 VPS 进行管理的利器是 PuTTY,但是 Linux 中就没必要用它了.Linux.Unix(包括 Mac iOS)都必然有内置的命令行终端,内建了 OpenSSH 指令.通过它登录 VPS 上的 Linux 系统要更方便. 在 Linux 中打开命令行终端,直接输入指令, ssh <username>@<serverdomain 或 ip> -p <port> 就会提示输入密码来登录.也可以使用图形界面,如果服务器支持的话,增加…
今天收到报警邮件,提示网站502 bad gateway, 输入网站url后果然无法打开: 登录服务器查看nginx进程正常: 查看fastcGI进程已经停止运行了: 问题找到后就该查找是什么原因产生的问题,先把fastcGI进程启动后网站能够访问了再细找原因. 查看php日志 tail –n 1000 /usr/local/php/logs/php-fpm.log [Linux公社 http://www.linuxidc.com ] 找到报警时间点时的日志信息,其中高亮部分为问题所在,提示系统…
ssh登录docker容器1.启动一个docker容器# docker run -t -i ubuntu/ruby:v1 /bin/bash2.然后在容器里,安装openssh-server openssh-client# apt-get install openssh-server openssh-client3.完成之后,修改root密码# passwd4.退出容器,并保存以上修改# docker commit 3ea7a99a0025 ubuntu/ruby:v25.停止,并删除刚才的容器…