ManageEngine

Deploy and manage Safety Endpoint on Windows devices using ManageEngine Endpoint Central Custom Script Configurations

This guide covers deploying Safety Endpoint to Windows devices using Custom Script Configurations in ManageEngine Endpoint Central (formerly Desktop Central). The deployment uses the same signed script used across all supported platforms — it installs, updates, and verifies Safety Endpoint on a recurring schedule.

Overview

Safety Endpoint is deployed as an Endpoint Central Computer Configuration using the Custom Script feature. The script downloads the official setup script, verifies its Authenticode signature, and executes it. Since the setup script is idempotent, it handles installation, updates, and health checks internally.

The configuration is set to run on every Refresh Cycle (approximately every 90 minutes), ensuring devices stay up to date without manual intervention.

The script reports status through its exit code:

Exit Code
Meaning

0

Safety Endpoint is installed and up to date

1

Setup failed — requires manual review

Prerequisites

Before starting, make sure you have:

  • Endpoint Central admin access (cloud or on-premises)

  • Endpoint Central agent installed and healthy on target devices

  • Enrollment key from the Safety Platform — click Manage Enrollment KeyCreate Enrollment Key

  • Target devices running Windows 10 or later with PowerShell 5.0+

Deploy Safety Endpoint

1

Get Your Enrollment Key

Log in to the Safety Platform, click Manage Enrollment KeyCreate Enrollment Key, and copy the generated key. This key links devices to your Safety organization.

2

Prepare the Script

Copy the script below and replace REPLACE_WITH_YOUR_ENROLLMENT_KEY with your organization's enrollment key:

3

Create the Custom Script Configuration

  1. In the Endpoint Central console, go to ConfigurationsAdd ConfigurationsWindows ConfigurationCustom ScriptComputer Configuration

  2. Enter the configuration details:

    • Name: Safety Endpoint - Setup

    • Description: Installs and maintains Safety Endpoint via signed setup script

  3. Under Script Execution:

    • Select Command Line

    • Paste the full script content, or select Repository if you have already added the script to the Script Repository

  4. Set Exit Code to 0 (success indicator)

  5. Set Deploy Schedule:

    • Frequency: Every Refresh Cycle

  6. Set Execution Context:

    • Run as: System user

4

Define Targets and Deploy

  1. Under Define the targets, select the computers or custom groups to deploy to

  2. Click Deploy to apply the configuration

The Refresh Cycle runs approximately every 90 minutes. The setup script is idempotent — it exits quickly when Safety Endpoint is already up to date, so frequent execution has minimal overhead.

Monitor Compliance

After deployment, monitor your fleet status in Endpoint Central:

  1. Go to ConfigurationsDeployed Configurations

  2. Find the Safety Endpoint - Setup configuration

  3. Click to view the deployment status summary

Status
What It Means
Action

Success

Safety Endpoint is installed and current

None

Failed

The script exited with a non-zero code

Click the device entry to view error details

Yet to Apply

Agent has not picked up the configuration

Wait for the next refresh cycle

In Progress

Script is currently running

Wait for completion

To retry a failed deployment on a specific device, select the device and click Retry.

Uninstall Safety Endpoint

If you need to remove Safety Endpoint from devices, create a separate Custom Script Configuration with the uninstall wrapper script. Like the deployment script, it downloads the official uninstall script from Safety, verifies its Authenticode signature, and executes it.

1

Create the Uninstall Configuration

  1. Go to ConfigurationsAdd ConfigurationsWindows ConfigurationCustom ScriptComputer Configuration

  2. Enter the configuration details:

    • Name: Safety Endpoint - Uninstall

    • Description: Removes all Safety Endpoint artifacts from the device

  3. Under Script Execution, select Command Line and paste the following:

  1. Set Exit Code to 0

  2. Set Deploy Schedule:

    • Frequency: Once

  3. Set Run as: System user

2

Deploy the Uninstall

  1. Under Define the targets, select the computers to uninstall from

  2. Click Deploy

The script runs once per device. It requires SYSTEM privileges and will clean up:

  • Safety Endpoint binaries and system PATH entries

  • Per-user configuration, firewall wrappers, and shell profiles

  • Package manager configurations (pip, uv, npm)

  • Scheduled tasks created by Safety Endpoint

Troubleshooting

Script fails with proxy or network errors

The script automatically detects proxy settings from the HTTPS_PROXY, ALL_PROXY, or HTTP_PROXY environment variables. If your network requires a proxy that is not configured via these variables, set the appropriate environment variable at the system level:

  1. Go to System PropertiesEnvironment Variables

  2. Add a system variable HTTPS_PROXY with your proxy URL (e.g., http://proxy.company.com:8080)

If using an authenticated proxy, include credentials in the URL: http://user:[email protected]:8080

Signature verification fails

The script verifies that the downloaded setup script is signed by Safety CLI Cybersecurity Inc using Authenticode. If signature verification fails:

  • Ensure the device has internet access to getsafety.com

  • Check that TLS 1.2 is enabled on the device

  • Verify no network appliance is intercepting or modifying HTTPS traffic (SSL inspection can break Authenticode signatures)

Configuration shows "Yet to Apply" for extended periods

If a device does not pick up the configuration:

  • Verify the Endpoint Central agent is installed and running on the device — check the ManageEngine service in Windows Services

  • Confirm the device appears in Scope of Management and is reachable

  • Check the agent's last contact time in the device details

  • Trigger a manual agent refresh from the Endpoint Central console: right-click the device → Scan Now

Configuration shows "Failed" but Safety Endpoint is installed

A Failed status means the script exited with a non-zero code. This can happen if:

  • The setup script detected a problem during its health check

  • A newer version failed to install

  • A temporary network issue occurred during the run

Click the failed device entry to view the error details. The configuration will automatically retry on the next Refresh Cycle (approximately 90 minutes).

Script requires interactive input

Endpoint Central cannot run scripts that require user interaction. The Safety Endpoint setup and uninstall scripts are fully non-interactive when run with the enrollment key parameter. If you see errors about interactive input, verify you are using the exact script provided in this guide.

Last updated

Was this helpful?