To register agents, both for agent updates and for TLS encryption, it might be desirable to have a dedicated user and role at hand.
This article outlines how that can be achieved.
Table of Contents
The UI way
The easiest way to build an agent registration role is by using the GUI and following these steps:
- Create a copy of the guest role and name it meaningfully.
- Ensure the role has the following permissions:
- "Use the GUI at all"
- "Register Host & download monitoring agents of your hosts",
- "Register all hosts & download all monitoring agents"
- Optionally you can disable all other permissions.
- Create a user with a meaningful name
- Configure the following things:
- Authentication: Automation Secret
- Assign the agent registration role created before
- Configure the following things:
The config file way
Note |
---|
We always recommend using the GUI instead of modifying .mk files. For any issue or broken config, we do not provide any support. In exceptional circumstances, you might want to adjust configuration files with caution. Please do a backup before adjusting the files. |
- Pretty print the configuration for a better overview: Pretty-print the configuration files
Add the following section to the config file: ~/etc/check_mk/multisite.d/wato/roles.mk.
Code Block language bash theme RDark 'agent_updater': {'alias': 'agents registration and download', 'basedon': None, 'builtin': True, 'permissions': {'general.see_all': True, 'general.use': True, 'wato.download_all_agents': True}}
In order to put it in the right place, please add a comma "," before the "})".
Agent Pairing for TLS Encryption
For a user to be able to do the cmk-agent-ctl register
, which is needed to enable the TLS encryption (available from 2.1.0 onwards), you have to add the following rights (internal name "general.agent_pairing") to their role.
...
Code Block | ||||
---|---|---|---|---|
| ||||
# Written by Checkmk store roles.update({ 'admin': {'alias': 'Administrator', 'builtin': True, 'permissions': {}}, 'guest': {'alias': 'Guest user', 'builtin': True, 'permissions': {}}, 'user': {'alias': 'Normal monitoring user', 'builtin': True, 'permissions': {}}, 'agent_updater': {'alias': 'agents registration and download', 'basedon': None, 'builtin': True, 'permissions': {'general.see_all': True, 'general.use': True, 'wato.download_all_agents': True}}, 'agent_ctl': {'alias': 'Agent Controller', 'basedon': None, 'builtin': True, 'permissions': {'general.agent_pairing': True, 'general.use': True, 'wato.see_all_folders': True, 'wato.all_folders': True}} }) ~ |
Related articles
Filter by label (Content by label) showLabels false max 5 spaces KB showSpace false sort modified reverse true type page cql label in ("agent_bakery","roles") and type = "page" and space = "KB" labels agent_bakery roles
...