TL; сводка DR: NXLog не загрузит мой сертификат - почему?
Я настроил сервер CE NXlog для действия как зашифрованный entrypoint для сервера Graylog. После создания самоподписанного сертификата и добавления его к конфигурации, я получаю неожиданную ошибку в журнале, когда NXlogs запускает.
2015-07-10 06:49:22 INFO reloading configuration and restarting modules
2015-07-10 06:49:22 ERROR SSL error, Failed to open certfile: "/certificates/client.pem";No such file or directory
2015-07-10 06:49:22 INFO configuration reloaded successfully.
Я предположил, что это мог бы быть выпуск новых акций файла, но рассмотрение файлов, кажется, что права на самом деле немного слишком свободны для комфорта:
root@e757dae37501:/# ll /certificates/
total 20
drwxr-xr-x 2 nxlog nxlog 4096 Jul 10 06:32 ./
drwxr-xr-x 49 root root 4096 Jul 10 06:32 ../
-rw-r--r-- 1 nxlog nxlog 1387 Jul 9 15:51 ca.pem
-rw-r--r-- 1 nxlog nxlog 887 Jul 9 15:54 client.key
-rw-r--r-- 1 nxlog nxlog 1001 Jul 9 15:55 client.pem
Моя конфигурация NXlog похожа на это:
...
<Input inssl>
Module im_ssl
Host 0.0.0.0
Port 1515
InputType Binary
CAFile "/certificates/ca.pem"
CertFile "/certificates/client.pem"
CertKeyFile "/certificates/client.key"
KeyPass secret
RequireCert FALSE
AllowUntrusted TRUE
</Input>
...
Я попытался смотреть на исходный код для модуля SSL, но он похож на строку, которая сбои не связана с проверкой, но простым доступом к файлу. Я понятия не имею, как продолжить двигаться. Предложения?
Итак, потратив часы на поиск в Google по этой ошибке, я нашел решение 1 через пять минут после публикации здесь и на форуме сообщества NXLog. Обычно.
По сути, пути к сертификатам не должны указываться,поэтому изменение CertFile "/certificates/client.pem"
на CertFile /certificates/client.pem
помогло.