US English (US)
FR French
DE German
ES Spanish
IT Italian
NL Dutch
JP Japanese

Contact Us

If you still have questions or prefer to get help directly from an agent, please submit a request.
We’ll get back to you as soon as possible.

  • Contact Us
French
US English (US)
FR French
DE German
ES Spanish
IT Italian
NL Dutch
JP Japanese
  • Home
  • Base de connaissances AutoElevate
  • Intégrations
  • Intégrations d'outils RMM et déploiement automatisé

Déploiement RMM générique à l'aide de commandes PowerShell

Découvrez comment déployer efficacement des outils de surveillance et de gestion à distance (RMM) via des commandes PowerShell, en simplifiant le processus et en garantissant une mise en œuvre fluide.

Written by Owen Parry

Updated at June 9th, 2025

Contact Us

If you still have questions or prefer to get help directly from an agent, please submit a request.
We’ll get back to you as soon as possible.

  • Base de connaissances AutoElevate
    Nouveau sur AutoElevate ? COMMENCEZ ICI Généralités et dépannage Gestion des règles Intégrations Annonces FAQ Vidéos explicatives
  • Base de connaissances de Password Boss
    Utilisation Password Boss Administration des affaires Documents des partenaires Password Boss
  • Boîte à outils marketing
    Boîte à outils de marketing et de formation MSP
  • Journaux des modifications pour Autoelevate et Password Boss
  • Statut actuel
+ More

Deploying AutoElevate Using Powershell

Your browser does not support HTML5 video.

Si vous déployez l'agent MSI AutoElevate à l'aide d'une stratégie de groupe, de Microsoft Intune ou d'un outil RMM pour lequel nous n'avons pas déjà fourni de script de déploiement prêt à l'emploi (c'est-à-dire ConnectWise Automate, Datto RMM, Kaseya VSA, Syncro, N-Able) et que l'outil RMM utilise PowerShell, vous pouvez utiliser les commandes de déploiement PowerShell ci-dessous comme base pour votre déploiement.

Veuillez lire la section supérieure des commandes et ajouter vos variables Clé de licence , Société , Emplacement , Mode d'élévation et Mode de blocage entre les guillemets ( "" ).

PowerShell peut télécharger automatiquement le fichier MSI le plus récent à partir de notre emplacement de téléchargement d’agent dans le cadre du déploiement.

Cliquez pour télécharger
Script d'installation AE V3.ps1

# Copyright (c) 2024 CyberFOX, LLC
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#    * Redistributions of source code must retain the above copyright
#      notice, this list of conditions and the following disclaimer.
#    * Redistributions in binary form must reproduce the above copyright
#      notice, this list of conditions and the following disclaimer in the
#      documentation and/or other materials provided with the distribution.
#    * Neither the names of CyberFOX, AutoElevate nor the names of its contributors
#      may be used to endorse or promote products derived from this software
#      without specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
# DISCLAIMED. IN NO EVENT SHALL CyberFOX, LLC. BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
# OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
# LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
# EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

<#
.SYNOPSIS
  Installs the AutoElevate agent using the License Key, Company Name, and Location supplied below
  
.DIRECTIONS
  Insert your license key below.  Change the default agent mode if you desire
  (audit, live, policy), and set the "Company Name" & "Location Name" that will be used to
  "group" these assets.
#>

$LICENSE_KEY = "__LICENSE_KEY_HERE__"
$COMPANY_NAME = "__COMPANY_NAME_HERE___"
$LOCATION_NAME = "__LOCATION_NAME_HERE__"
$ELEVATION_MODE = "audit"
$BLOCKER_MODE = "disabled"

# Set $DebugPrintEnabled = 1 to enabled debug log printing to see what's going on.
$DebugPrintEnabled = 0

# You don't need to change anything below this line...

$InstallerName = "AESetup.msi"
$InstallerPath = Join-Path $Env:TMP $InstallerName
$DownloadBase = "https://autoelevate-installers.s3.us-east-2.amazonaws.com"
$DownloadURL = $DownloadBase + "/current/" + $InstallerName
$ServiceName = "AutoElevateAgent"

$ScriptFailed = "Script Failed!"

function Get-TimeStamp {
    return "[{0:MM/dd/yy} {0:HH:mm:ss}]" -f (Get-Date)
}

function Confirm-ServiceExists ($service) {
    if (Get-Service $service -ErrorAction SilentlyContinue) {
        return $true
    }
    
    return $false
}

function Debug-Print ($msg) {
    if ($DebugPrintEnabled -eq 1) {
        Write-Host "$(Get-TimeStamp) [DEBUG] $msg"
    }
}

function Get-Installer {
    Debug-Print("Downloading installer...")
    $WebClient = New-Object System.Net.WebClient
    
    try {
        $WebClient.DownloadFile($DownloadURL, $InstallerPath)
    } catch {
        $ErrorMessage = $_.Exception.Message
        Write-Host "$(Get-TimeStamp) $ErrorMessage"
    }
    
    if ( ! (Test-Path $InstallerPath)) {
        $DownloadError = "Failed to download the AutoElevate Installer from $DownloadURL"
        Write-Host "$(Get-TimeStamp) $DownloadError"
        throw $ScriptFailed
    }
    
    Debug-Print("Installer downloaded to $InstallerPath...")
}

function Install-Agent () {
    Debug-Print("Checking for AutoElevateAgent service...")
    
    if (Confirm-ServiceExists($ServiceName)) {
        Write-Host "$(Get-TimeStamp) Service exists. Continuing with possible upgrade..."
    }
    else {
        Write-Host "$(Get-TimeStamp) Service does not exist. Continuing with initial installation..."
    }

    Debug-Print("Checking for installer file...")
    
    if ( ! (Test-Path $InstallerPath)) {
        $InstallerError = "The installer was unexpectedly removed from $InstallerPath"
        Write-Host "$(Get-TimeStamp) $InstallerError"
        Write-Host ("$(Get-TimeStamp) A security product may have quarantined the installer. Please check " +
                               "your logs. If the issue continues to occur, please send the log to the AutoElevate " +
                               "Team for help at support@autoelevate.com")
        throw $ScriptFailed
    }

    Debug-Print("Executing installer...")
    
    $Arguments = "/i {0} /quiet /lv C:\AEInstallLog.log LICENSE_KEY=""{1}"" COMPANY_NAME=""{2}"" LOCATION_NAME=""{3}"" ELEVATION_MODE=""{4}"" BLOCKER_MODE=""{5}""" -f $InstallerPath, $LICENSE_KEY, $COMPANY_NAME, $LOCATION_NAME, $ELEVATION_MODE, $BLOCKER_MODE
  
    Start-Process C:\Windows\System32\msiexec.exe -ArgumentList $Arguments -Wait
}

function Verify-Installation () {
    Debug-Print("Verifying Installation...")
    
    if ( ! (Confirm-ServiceExists($ServiceName))) {
        $VerificationError = "The AutoElevateAgent service is not running. Installation failed!"
        Write-Host "$(Get-TimeStamp) $VerificationError"
        
        throw $ScriptFailed
    }
}

function main () {
    Debug-Print("Checking for LICENSE_KEY...")
    
    if ($LICENSE_KEY -eq "__LICENSE_KEY_HERE__" -Or $LICENSE_KEY -eq "") {
        Write-Warning "$(Get-TimeStamp) LICENSE_KEY not set, exiting script!"
        exit 1
    }
     
    if ($COMPANY_NAME -eq "__COMPANY_NAME_HERE___" -Or $COMPANY_NAME -eq "") {
        Write-Warning "$(Get-TimeStamp) COMPANY_NAME not specified, exiting script!"
        exit 1
    }
	
	if ($LOCATION_NAME -eq "__LOCATION_NAME_HERE__" -Or $LOCATION_NAME -eq "") {
        Write-Warning "$(Get-TimeStamp) LOCATION_NAME not specified, exiting script!"
        exit 1
    }
		
    Write-Host "$(Get-TimeStamp) CompanyName: " $COMPANY_NAME
    Write-Host "$(Get-TimeStamp) LocationName: " $LOCATION_NAME
    Write-Host "$(Get-TimeStamp) ElevationMode: " $ELEVATION_MODE
	Write-Host "$(Get-TimeStamp) BlockerMode: " $BLOCKER_MODE
    
    Get-Installer
    Install-Agent
    Verify-Installation
    
    Write-Host "$(Get-TimeStamp) AutoElevate Agent successfully installed!"
}

try
{
    main
} catch {
    $ErrorMessage = $_.Exception.Message
    Write-Host "$(Get-TimeStamp) $ErrorMessage"
    exit 1
}

Was this article helpful?

Yes
No
Give feedback about this article

Related Articles

  • ConnectWise Automate - Présentation
  • ConnectWise Automate - Configuration et déploiement
  • Fichiers d'installation de ConnectWise Automate (Labtech)
  • Fichiers de déploiement et configuration de N-able N-central
  • Datto RMM - Composant de déploiement (script)
  • Products
    • Privileged Access Management
    • Password Management
  • Solutions
    • For MSPs
    • For IT Pros
    • By Industry
  • Resources
    • Weekly Demos
    • Events
    • Blog
    • FAQ
  • Company
    • Leadership
    • Culture + Values
    • Careers
    • Awards
    • News & Press
    • Trust Center
    • Distributors
  • Get Pricing
  • Free Trial
  • Request a Demo
  • Support
  • Login
  • Contact
4925 Independence Parkway
Suite 400
Tampa, FL 33634
CALL US (813) 578-8200
  • Link to Facebook
  • Link to Linkedin
  • Link to Twitter
  • Link to Youtube
© 2023 CYBERFOX LLC ALL RIGHTS RESERVED  |  Privacy Policy

Knowledge Base Software powered by Helpjuice

Expand