|
| 1 | +--- |
| 2 | +title: Certify Management Agent (Linux, macOS) |
| 3 | +--- |
| 4 | + |
| 5 | +## Summary |
| 6 | + |
| 7 | +The *Certify Management Agent* is a service which can be use on Linux or macOS to perform certificate renewals and deployment tasks, or to monitor renewals managed by external certificate managers (including Certbot, acme.sh, win-acme/simple-acme and Posh-ACME). The agent is functionally the same as [Certify Certificate Manager](ccm.md) on Windows, but without a Desktop UI. |
| 8 | + |
| 9 | +## Installation and Upgrades |
| 10 | + |
| 11 | +See our [install guide](../installation/linux#certify-management-agent) for details installing and upgrading. |
| 12 | + |
| 13 | +## Joining the Management Hub |
| 14 | + |
| 15 | +Joining your existing *Certify Management Agent* instance to a Management Hub allows you to control the instance settings, renewals and monitoring. |
| 16 | + |
| 17 | +The basic steps are: |
| 18 | + |
| 19 | +1. Set up a Joining API key in the hub (one is automatically created when the hub is installed). |
| 20 | +2. Configure the agent to join the hub (via the command line) |
| 21 | +3. Verify that the joining has completed in the hub UI |
| 22 | + |
| 23 | +## Before Joining the Hub |
| 24 | + |
| 25 | +### Security Considerations |
| 26 | + |
| 27 | +:::warning Important |
| 28 | + |
| 29 | +The Management Hub will have complete control over the Certify Management Agent instance settings, including the ability to specify deployment tasks which may include locally executed code (PowerShell etc). |
| 30 | + |
| 31 | + **Do not join a hub you don't control or trust.** |
| 32 | + |
| 33 | + ::: |
| 34 | + |
| 35 | +## Joining the Hub |
| 36 | + |
| 37 | +By default a joining API key is created when you install the hub. This is found under *Settings > Security > API Access*. You will need the API URL (e.g. `https://hub.internal.yourdomain.com:9697` depending on your configuration), Client Id and Client Secret values. |
| 38 | + |
| 39 | +``` |
| 40 | +curl -X POST http://127.0.0.2:9696/api/system/hub/join -H 'Content-Type: application/json' -d '{"clientId":"managedinstance_sp_01","secret":"<secret>","url":"<hub url>"}' |
| 41 | +``` |
| 42 | + |
| 43 | +## Verification |
| 44 | + |
| 45 | +After joining, confirm that your instance appears in the Management Hub UI's **Instances** list. |
| 46 | + |
| 47 | +## Using the Hub to manage the agent |
| 48 | + |
| 49 | +When you are working with individual settings such as Stored Credentials, Certificate Authority accounts etc these remain per-instance settings, so each instance of the app has it's own set of settings and you will selected the target |
| 50 | +instance when working with those. |
| 51 | + |
| 52 | +### Monitoring External Certificate Managers |
| 53 | + |
| 54 | +The agent can provide monitoring of renewals that are managed by a selected number of ACME certificate management tools including Certbot, acme.sh, win-acme/simple-acme and Posh-ACME. |
| 55 | + |
| 56 | +With your agent installed on your target machine and joined to the hub, configure the paths for your chosen certificate manager under *Settings > General > External Certificate Managers*, ensuring to select your target instance from the Target Instance dropdown list at the top the page. By default the system will attempt to discover existing config using the default paths. Configuration of log paths is only required where logs are stored separately from the other config (e.g. Certbot). |
| 57 | + |
| 58 | +| Cert Manager | Default Config Path | Default Log Path | |
| 59 | +|---|---|---| |
| 60 | +| acme.sh | ~/.acme.sh/ | - | |
| 61 | +| certbot | /etc/letsencrypt | /var/log/letsencrypt | |
| 62 | +| posh-acme | %APPDATA%\Local\Posh-ACME | - | |
| 63 | +| simple-acme | %PROGRAMDATA%\simple-acme | - | |
| 64 | +| win-acme | %PROGRAMDATA%\simple-acme | - | |
| 65 | + |
| 66 | +The agent will cache results from each certificate manager and periodically refresh results, so changes to renewals etc will take a few minutes to show up in the hub UI. |
0 commit comments