Я настраиваю monit на новом сайте, который я буду называть mywebsite.com во время этого вопроса. Я настроил конфигурацию для доступа к странице веб-интерфейса Monit, но не могу подключиться к ней. У меня есть базовый брандмауэр, работающий с iptables, и я думаю, что я сделал дыру для monit, но я не могу подключиться к веб-интерфейсу monit, и я не знаю почему.
Я еще ничего не настроил для мониторинга: моя конфигурация monit выглядит так:
## 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 с этими правилами.
Я сделал правило для monit в своем конфиге iptables, который выглядит так:
#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. Заранее спасибо Макс
РЕДАКТИРОВАТЬ: я попытался изменить строку «localhost» в конфигурации Monit таким образом:
set httpd port 2812 and
use address mywebsite.com
allow mywebsite.com
allow admin:password
но это не имело никакого значения.
Ответы:
Чтобы получить доступ к Monit извне, просто установите:
Без аутентификации и доступа отовсюду:
Для доступа отовсюду с аутентификацией:
В вашем случае удалите
and
в конце строкиset httpd port 2812 and
Примечание . Если вы тестируете установку с паролем, установленным как «пароль», вы получите эту ошибку:
источник
allow
иcredentials
директивами. См. Serverfault.com/a/900823/459872