Я недавно установил monit (на debian), и все работает нормально. Теперь я хотел бы включить поддержку ssl. Я сделал то, что нашел в документации:
set httpd port 2812
ssl enable
pemfile /etc/ssl/certs/ssl-cert-snakeoil.pem
Теперь я не только не могу подключиться к серверу через Интернет с помощью https://myserver.com:2812, но связь между демоном monit и командой monit также не выполняется:
$# monit status
monit: Openssl read timeout error!
monit: error connecting to the monit daemon
Кажется, вы не создали сертификат SSL. Вот несколько указателей (я делал это на своем Ubuntu).
Обеспечить Openssl
доступен в вашей системе, если нет apt-get install openssl
/var/certs
cd /var/certs
monit.cnf
и скопируйте / вставьте в него следующее, затем сохраните и закройте файл:#create RSA certs - Server RANDFILE = ./openssl.rnd [ req ] default_bits = 2048 encrypt_key = yes distinguished_name = req_dn x509_extensions = cert_type [ req_dn ] countryName = Country Name (2 letter code) countryName_default = MO stateOrProvinceName = Ile de France stateOrProvinceName_default = Monitoria localityName = Paris localityName_default = Monittown organizationName = the_company organizationName_default = Monit Inc. organizationalUnitName = Organizational Unit Name organizationalUnitName_default = Dept. of Monitoring Technologies commonName = Common Name (FQDN of your server) commonName_default = server.monit.mo emailAddress = Email Address emailAddress_default = root@monit.mo [ cert_type ] nsCertType = server
enter
каждый раз, когда вам будет предложено ввести информацию):openssl req -new -x509 -days 365 -nodes -config ./monit.cnf -out /var/certs/monit.pem -keyout /var/certs/monit.pem
chmod 700 /var/certs/monit.pem
(в моем случае user:group
для файла pem это root:root
)Установите в своем monitrc
файл конфигурации:
set httpd port 2812
ssl enable
pemfile /var/certs/monit.pem
allow user:pass
Начать сначала monit
И тогда это работает! Теперь вам нужно поместить свою настоящую информацию в monit.cnf
файл и запустите openssl
команду снова.