网站首页 > 开源技术 正文
前面介绍了SSH协议的基本工作原理,我们知道客户端通过SSH方式可以远程登录到服务端上,从而操作远程主机。那么,现在我们就可以利用Zabbix监控系统的SSH检查方式将一些命令传递给远程主机,然后就可以收集到远程主机的一些返回信息,并且可以根据实际情况设置相应的触发器,从而到达监测远程主机运行状况的目的。
1.登陆Zabbix Web界面,点击配置–>主机–>创建主机。添加要检测目标主机的IP地址,因为SSH检查不需要在目标主机上安装Zabbix Agent,所以这里的10050端口无意义。
2.创建监控项。类型选择SSH客户端,键值为ssh.run[<unique short description>,<ip>,<port>,<encoding>] ,并可设置相应的参数,默认ssh端口为22。认证方法有两种,就是前面介绍的基于口令和基于密钥,这里选择密码口令的认证方式,输入目标主机的用户名和密码。
执行脚本中我们检测目标主机HTTP服务运行情况,可以使用简单的命令来进行查看,最终让它返回值为1,说明HTTP服务运行正常。
3.创建触发器。这样我们就可以创建一个触发器,当检测目标主机HTTP服务返回值不是1时,触发告警。
4. 查看最新数据。数据获取值为1说明目标主机的HTTP服务正常,如果为0则服务不正常。
5.测试通过命令“systemctl stop httpd”关闭目标主机的HTTP服务使它触发告警,这里通过邮件成功收到该告警信息。
通过SSH基于密码的方式安全性不是很高,我们可以看到在Zabbix Web界面上直接显示出用户名和密码,所以我们一般可采用基于密钥的认证方式。
1.目标主机上创建一个用户和密码。因为不建议直接采用root管理员权限用户供访问登录。
# groupadd zabbix
# useradd -g zabbix zabbix
# passwd zabbix
# tail -1 /etc/passwd
zabbix:x:1000:1000::/home/zabbix:/bin/bash
2.Zabbix服务器上也需要对zabbix用户进行相应的修改。
# tail -1 /etc/passwd
zabbix:x:996:994:Zabbix Monitoring System:/var/lib/zabbix:/sbin/nologin
# systemctl stop zabbix-server
# systemctl stop zabbix-agent
# mkdir /home/zabbix
# usermod -d /home/zabbix/ zabbix
# chown zabbix:zabbix /home/zabbix
# chmod 700 /home/zabbix
# usermod -s /bin/bash zabbix
# tail -1 /etc/passwd????????
zabbix:x:996:994:Zabbix Monitoring System:/home/zabbix/:/bin/bash
# systemctl start zabbix-server
# systemctl start zabbix-agent
3.修改zabbix server配置文件。添加公钥和私钥所在文件夹的完整路径。修改完后重启zabbix server。
# vi /etc/zabbix/zabbix_server.conf
…
### Option: SSHKeyLocation
#?????? Location of public and private keys for SSH checks and actions.
#
# Mandatory: no
# Default:
# SSHKeyLocation=
SSHKeyLocation=/home/zabbix/.ssh
?
# systemctl restart zabbix-server
4.Zabbix服务器上生成zabbix用户的公钥和私钥。
# ls -l /home/zabbix/.ssh/
total 8
-rw------- 1 zabbix zabbix 1675 Jan? 8 16:49 id_rsa
-rw-r--r-- 1 zabbix zabbix? 395 Jan? 8 16:49 id_rsa.pub
5.将zabbix公钥传送到远程目标主机上。
查看目标主机上已生成zabbix服务器分发过来的密钥。
# ls -l /home/zabbix/.ssh/
total 4
-rw-------. 1 zabbix zabbix 395 Jan? 8 16:53 authorized_keys
并且可在zabbix服务器上可以测试登陆到目标主机上。
6.这样我们就可以使用密钥认证方式创建监控项了,指定在/hom/zabbix/.ssh下的公钥和私钥文件。比如这里我们通过“df -h”收集远程主机文件挂载情况。
7.查看最新数据。可以看到收集到了目标主机的文件挂载情况了。
以上就是我们通过Zabbix监控系统SSH方式检测目标主机的全部内容了。
- 上一篇: ssh固定资产管理系统(《固定资产管理系统》)
- 下一篇: 浅谈SSH框架(ssh框架整合实战教程)
猜你喜欢
- 2024-10-21 ssh端口转发教程(ssh端口转发 内网穿透)
- 2024-10-21 U-NAS系统登陆管理的几种方法(u-nas登陆账号密码)
- 2024-10-21 java程序员的基础知识篇,回顾ssh
- 2024-10-21 「JSP入门」JavaWeb项目如SSH或SSM等如何提升80%以上效率
- 2024-10-21 假如 SSH 协议基于 HTTP/3 构建,会是什么样?
- 2024-10-21 如何加强云端的SSH安全性(云端数据加密)
- 2024-10-21 简单分析实现运维利器---webssh终端libl
- 2024-10-21 基于JavaEE架构SSH框架的web项目实现
- 2024-10-21 2019最新Java Web J2EE下的两大框架SSH和SSM对比
- 2024-10-21 使用Jenkins通过Publish Over SSH插件远程控制主机执行脚本
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- jdk (81)
- putty (66)
- rufus (78)
- 内网穿透 (89)
- okhttp (70)
- powertoys (74)
- windowsterminal (81)
- netcat (65)
- ghostscript (65)
- veracrypt (65)
- asp.netcore (70)
- wrk (67)
- aspose.words (80)
- itk (80)
- ajaxfileupload.js (66)
- sqlhelper (67)
- express.js (67)
- phpmailer (67)
- xjar (70)
- redisclient (78)
- wakeonlan (66)
- tinygo (85)
- startbbs (72)
- webftp (82)
- vsvim (79)
本文暂时没有评论,来添加一个吧(●'◡'●)