ConfigSentry

FreeBSD Collector

System Requirements

  • A FreeBSD host with rc.d and root or sudo access to install and manage services.
  • tar to extract the installer archive, plus this collector's private Config JSON. The installer adds jq, curl, and OpenSSL with the system package manager if they are missing.
  • Outbound HTTPS to https://www.secdit.com/configsentry/ and network access to each appliance's SSH port.
  • SSH credentials with sufficient read access to retrieve the configuration. Have a trusted way to verify the appliance's SSH host-key fingerprint.
  • If using syslog triggers, permit the configured inbound UDP port. Collectors sharing a host need distinct listen IP/port combinations.

How to install it

  1. Create a collector on the website. From Appliances → Collectors, download only its private Collector Config JSON and the FreeBSD installer bundle (.tar.gz).
  2. Put both downloads in one private working directory and run the two commands below.
  3. The installer reads the collector identity and website endpoint from the JSON, verifies the bundled signed release and runtime, installs any missing dependencies, then creates and starts this collector's private services.
tar -xzf ./configsentry-freebsd-native-installer.tar.gz
sudo sh ./install.sh

If your JSON has a different filename or location, run sudo sh ./install.sh --config-file /path/to/your-config.json instead. Otherwise install.sh automatically finds ./configsentry_collector_install.json.

Complete any locally managed appliance settings, then confirm a first collection and audit on the website. If the first attempt happened before credentials were ready, request a Manual Audit. Delete the extra downloaded private JSON copy when finished.

Menu options and command-line actions

sudo configsentry-collector

The global command lists installed collectors when there is more than one. The installer also prints a direct /opt/configsentry/native/ACCOUNT-COLLECTOR/manage.sh path for this collector.

1. Show collector status

Shows version, local service and heartbeat state, website check-in, configuration revision, assigned appliance count, and pending delivery. Use sudo /opt/configsentry/native/ACCOUNT-COLLECTOR/manage.sh --status for a non-interactive check.

2–3. Enable or disable collector service

Start or stop this collector's worker, configured syslog listener, and updater. Disabling the service leaves its files and website record intact.

4. Appliances

Choose an assigned appliance by name to see connection settings, local collection and upload outcomes, and errors. Use --appliances for a non-interactive list.

5. Edit locally configured settings

Choose an appliance and enter host, SSH port, username, password or key where the website marks them Enter Locally. Test the connection before saving; verify any new SSH host-key fingerprint independently.

6. Syslog configuration

Shows receiver and service status, listen address, and UDP port. If syslog is locally managed, this option can also enable the receiver and change its listen settings.

7–8. Install collector or config updates

Check the approved signed runtime or authenticated website configuration. Use --runtime-update or --config-update for non-interactive actions.

9. Uninstall this collector

Requires typed confirmation. Removes this instance's local services and private data, not its website record or other instances.

10. Exit and other parameters

Exit closes the menu. Use --menu to reopen it, --validate to validate the instance, or --automatic-updates to manage its update policy.

How to add a collector config file

Create the additional collector on the website and download its own Config JSON. Run the installation steps above again with that JSON; an already downloaded installer archive can be reused for the same platform release. The installer creates a separate instance and services without replacing existing collectors. Give each syslog listener on the same computer a different local UDP port. Never reuse another collector's JSON or credentials.

Configure an appliance and syslog

  1. Assign the appliance to this collector on the website. Open the menu and choose Install config updates if you want the new assignment immediately.
  2. Choose Edit locally configured settings, select the appliance by name, and supply any host or SSH values marked Enter Locally. Test before saving. Verify a newly presented SSH host key through a trusted channel.
  3. For event-triggered collection, enable syslog on the website. Use Syslog configuration to check the listen IP and UDP port or change them if local management is enabled. Send FortiGate config-change events to that address and permit the UDP port through the host firewall.

The default listener is 0.0.0.0:2216/UDP, unless configured otherwise. See the FortiGate syslog guide for the appliance-side filter.

How to update it

When automatic updates are enabled, the updater handles both signed runtime and website configuration updates. If disabled, open this collector's menu and choose Install collector updates or Install config updates; review the result and confirm an available update.

After adding an appliance or changing website settings, Install config updates also checks for the new assignment immediately. Verify its initial audit on the website.

How to remove a collector config

Open that collector's manage.sh and choose Uninstall this collector. Confirm by typing UNINSTALL. This removes only that instance's local services, configuration, encrypted credentials, state, logs, and runtime. Its website record is not deleted. Disable collector service only stops it; it does not remove the config.

How to completely uninstall it

Uninstall each collector instance through its own menu. When removing the final instance, accept the separate prompt to remove the shared native service files and global management command too. If you also want the website record removed, delete it separately on the website after preserving anything you need.

Troubleshooting

  • No check-in: open Show collector status; check the worker service and outbound HTTPS access.
  • No first audit: check the appliance assignment and local SSH settings, install config updates, then request a Manual Audit.
  • SSH host key not trusted: compare the displayed fingerprint with the appliance through a trusted channel before accepting it. A verified known_hosts file can be supplied with --known-hosts-file during installation.
  • Syslog not arriving: check receiver status, listen address, UDP port, and network firewall. See the Syslog Guide.