Вопрос или проблема
Я уже использую активные агенты на других серверах, и все работает очень хорошо. Я установил Zabbix агент на новый сервер и настроил тот же конфиг, что и на других активных агентах. Проблема в том, что мой агент не может подключиться к серверу.
Логи:
End of zbx_tls_connect():FAIL error:'SSL_connect() I/O error: [0x00002746] Существующее соединение было принудительно закрыто удаленным хостом.'
активная проверка конфигурации обновления с [hidden_address:10051] начала давать сбой (TCP успешен, не удается установить TLS к [[hidden_address]:10051]: SSL_connect() I/O error: [0x00002746] Существующее соединение было принудительно закрыто удаленным хостом.)
End of refresh_active_checks():FAIL
Я уверен, что ключ PSK и идентификатор установлены правильно как в агенте, так и на сервере. Мой конфиг (работает на других агентах):
LogFile=C:\Zabbix\zabbix_agentd.log
DebugLevel=5
Server=hidden_address
ListenPort=10051
Hostname=hidden_name
ServerActive=hidden_address
EnableRemoteCommands=1
TLSConnect=psk
TLSAccept=psk
TLSPSKFile=C:\Zabbix\conf\client.txt
TLSPSKIdentity=hidden_id
Порт открыт с обеих сторон, и я проверил с помощью Test-NetConnection в Powershell, что могу подключиться от агента к серверу на указанном порту (10051).
Есть ли идеи, что еще я могу проверить или сделать, чтобы устранить проблему?
Это обычно вызвано использованием агента zabbix с ошибкой в реализации TLS / PSK. Я советую проверить раздел известных проблем вашей версии zabbix https://www.zabbix.com/documentation/4.0/manual/installation/known_issues и использовать LTS версию zabbix, если это возможно.
У меня самой была проблема с zabbix агентом 4.0.0 для windows (я думаю), который не был корректно скомпилирован с поддержкой TLS.
Пожалуйста, также убедитесь, что строка PSK в C:\Zabbix\conf\client.txt
совпадает с той, что в интерфейсе zabbix.
Если же вы используете проверенный рабочий zabbix агент, вот несколько других указаний:
Я советую вам проверить ваш трафик с помощью wireshark
, так как, вероятно, это ваша сеть или сервер, которые вызывают сбои соединения.
Кстати – если вы используете только активную настройку – вы можете указать StartAgents = 0
и опустить директивы конфигурации Server=
и ListenPort=10051
.
Ответ или решение
Проблема с подключением активного агента Zabbix к серверу: «соединение было принудительно закрыто удалённым хостом»
При использовании активного агента Zabbix, который не может подключиться к серверу и выводит сообщение об ошибке «состояние SSL_connect() I/O error: [0x00002746]», важно провести тщательное расследование проблем, чтобы выявить и устранить причину сбоя.
1. Проверка конфигурации
Прежде всего, стоит убедиться, что конфигурация агента точно соответствует рабочим настройкам других агентов. Судя по предоставленной информации, вы уже сравнили настройки и убедились, что все параметры совпадают:
LogFile=C:\Zabbix\zabbix_agentd.log
DebugLevel=5
Server=hidden_address
ListenPort=10051
Hostname=hidden_name
ServerActive=hidden_address
EnableRemoteCommands=1
TLSConnect=psk
TLSAccept=psk
TLSPSKFile=C:\Zabbix\conf\client.txt
TLSPSKIdentity=hidden_id
Обратите внимание на:
- TLSPSKFile: Убедитесь, что файл с предшествующим ключом (PSK) находится по указанному пути и правильно прочитывается.
- TLSPSKIdentity: Проверьте, что идентификатор PSK соответствует тому, что настроен на сервере.
Ваша проверка порта с помощью Test-NetConnection
подтверждает, что соединение по TCP на порту 10051 возможно, что минимизирует вероятность сетевой проблемы.
2. Изучение журналов
Увеличьте уровень отладки в настройках агента (DebugLevel=5), чтобы получить более детализированные логи. Это может помочь выявить дополнительные проблемы, не очевидные с первого взгляда.
3. TLS/PSK совместимость
Сообщение об ошибке, которое указывает на проблему с TLS-соединением, может быть связано с версией агента Zabbix или его компиляцией. Проверьте:
-
Версия Zabbix: Убедитесь, что используете стабильную версию LTS (долгосрочную поддержку) Zabbix, так как более ранние версии могут содержать ошибки в реализации TLS/PSK. Ознакомьтесь с разделом известных проблем на официальном сайте: Известные проблемы Zabbix. Возможно, вы столкнулись с багом, исправленным в более поздних версиях.
-
Проверка PSK: Убедитесь, что строка PSK в файле
C:\Zabbix\conf\client.txt
полностью совпадает с той, что настроена в интерфейсе Zabbix. Ошибка в символах (например, пробелы или другие скрытые символы) может привести к сбоям соединения.
4. Безопасность и сеть
Если явные настройки верны и версия Zabbix обновлена:
-
Трафик: Используйте инструменты вроде Wireshark для анализа трафика между агентом и сервером. Это поможет установить, происходят ли сбои на уровне TCP/IP или ниже. Обратите внимание на время жизни соединения и возможные сбросы.
-
Настройки фаервола: Проверьте настройки фаервола на сервере и на клиенте. Убедитесь, что нет правил, которые могут блокировать или сбрасывать соединения по указанному порту.
5. Дополнительные настройки агента
Если ваша архитектура предполагает только активное соединение:
- StartAgents: Вы можете установить
StartAgents=0
в конфигурации агента, что уберет необходимость в настройкахServer
иListenPort=10051
. Это может предотвратить ненужные проверки или конфликты.
Заключение
Если после выполнения всех вышеперечисленных шагов проблема не решена, рассмотрите возможность обращения в поддержку Zabbix или к сообществу для более детального анализа. Также может быть полезно рассмотреть возможность использования другой версии агента или сервера, если проблема окажется слишком сложной для устранения.