让 Monit Web 界面和 CLI 在 Ubuntu 服务器上运行

让 Monit Web 界面和 CLI 在 Ubuntu 服务器上运行

我很难让 monit 在我的 Ubuntu 18.04.4 上运行。

我已经通过 安装了 monit sudo apt install monit,然后我httpd像这样启用了:

set httpd port 2812 and
    use address localhost
    allow localhost
    allow admin:monit

这基本上是 monit 的默认配置。然后我通过 重新启动了 monit sudo systemctl restart monit

如果我查看它的日志文件/var/log/monit.log,我可以看到 monit web 服务器应该正在运行:

Starting Monit 5.25.1 daemon with http interface at [localhost]:2812

在服务器上,我正在运行 ufw,输出如下sudo ufw status verbose

root@v22017062828950292:~# sudo ufw status verbose
Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing), disabled (routed)
New profiles: skip

To                         Action      From
--                         ------      ----
2812/tcp                   ALLOW IN    Anywhere
22/tcp                     ALLOW IN    Anywhere
8080/tcp                   ALLOW IN    Anywhere
127.0.0.1 2812/tcp         ALLOW IN    127.0.0.1
127.0.0.1 80/tcp           ALLOW IN    127.0.0.1
2812/tcp (v6)              ALLOW IN    Anywhere (v6)
22/tcp (v6)                ALLOW IN    Anywhere (v6)
8080/tcp (v6)              ALLOW IN    Anywhere (v6)

但是,如果我执行monit status,我会得到:

Monit: the monit HTTP interface is not enabled, please add the 'set httpd' statement and use the 'allow' option to allow monit to connect.

我尝试过将 monit 绑定到0.0.0.0如下位置:

set httpd port 2812 and
    use address 0.0.0.0
    allow 0.0.0.0/0.0.0.0
    allow admin:monit

然后我可以通过浏览器和服务器的 IP 连接到 Web 界面,但monit status仍然输出 http 界面未启用。

我现在已经没有什么主意了,因为使用最后的配置,我可以从浏览器清楚地访问 Web 界面,但不能通过命令行界面访问。

我也尝试使用 禁用 ufw sudo ufw disable,结果出现同样的问题,即 CLI 无法连接到 Web 界面。

您还有什么想法吗?可能出了什么问题?

答案1

你会怎么做sudo monit status?你的配置放在哪里了?

monit 客户端必须能够读取配置才能运行 status 命令。它需要知道要连接的端口和用户名/密码。如果您使用密码正确保护了配置,则只有 root 才能读取它。

相关内容