monit:无法连接到 http 接口

monit:无法连接到 http 接口

我正在一个新网站上设置 monit,在回答这个问题时我将它称为 mywebsite.com。我已经设置了访问 monit 的 Web 界面页面的配置,但我无法连接到它。我有一个使用 iptables 运行的基本防火墙,我想我已经为 monit 打了一个洞,但我无法连接到 monit 的 Web 界面,我不知道为什么。

我还没有设置任何要监控的东西:我的监控配置如下:

## Start monit in the background (run as a daemon):
set daemon  120           # check services at 2-minute intervals

set httpd port 2812 and
  use address mywebsite.com  
  allow localhost      
  allow admin:password

我已经按照这些规则重新启动了 monit。

我在我的 iptables 配置中为 monit 制定了一条规则,如下所示:

#monit interface
-A OUTPUT -p tcp --dport 2812 -j ACCEPT
-A INPUT -p tcp --dport 2812 -j ACCEPT

然后我将这些规则导入到/sbin/iptables-restore。执行以下命令后,我可以看到 monit 条目sudo /sbin/iptables -L

...
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:2812 
...

但是,当我进入时,http://mywebsite.com:2812我进入了Error code: ERR_EMPTY_RESPONSE浏览器。

有人有什么想法吗?我甚至不知道问题是否与 iptables 有关。提前致谢,Max

编辑:我尝试更改 monit 配置中的“localhost”行,如下所示:

set httpd port 2812 and
  use address mywebsite.com  
  allow mywebsite.com      
  allow admin:password

但并没有什么区别。

答案1

要从外部网络访问 Monit,只需设置:

无需身份验证,即可从任何地方访问:

set httpd port 2812

对于从任何地方进行身份验证的访问:

set httpd port 2812
   allow <auth_user>:<auth_password>

在你的情况下,删除and行末的set httpd port 2812 and

笔记:如果您正在测试将密码设置为“password”的设置,您将收到此错误:

Error: syntax error 'password'

相关内容