Wiki source code of Agentless Scanner

Last modified by Steffi F on 2025/05/12 06:50

Show last authors
1 {{aagon.floatingbox/}}
2
3 The Agentless Scanner allows you to inventory Windows clients through Active Directory (AD) without having to run or install any software on the Clients. In addition, you can also inventory Linux and MacOS Clients from the Agentless Scanner Configuration Manager using the integrated XML Importer.
4
5 = Functionality =
6
7 The Agentless Scanner consists of three main components: the AD connector, the AD agent and the WMI scanner. The basic data of a client is collected from the AD, compared with the data available in ACMP, and finally stored if it does not already exist. Once set up, Clients that are newly connected to the AD are automatically inventoried. This eliminates the need to trigger an inventory manually.
8
9 {{aagon.infobox}}
10 Because the agentless scanner cannot read all the data due to the way it works, it provides less data than the ACMP agent.
11 {{/aagon.infobox}}
12
13 The following section explains how each component works in detail.
14
15 |=(% scope="row" %)AD Connector|(((
16 The AD Connector is responsible for collecting data from the Active Directory. The AD is scanned for new Clients in fixed intervals. It is also triggered by certain AD events, such as adding a new machine to the AD. The read data is collected and then passed to the AD Agent.
17
18 {{aagon.infobox}}
19 In multi-domain environments, the NetBios name may not be resolved correctly when read by the AD Connector. To avoid this error, an additional attempt is made to reach the clients via FQDN.
20 {{/aagon.infobox}}
21 )))
22 |=AD Agent |The AD Agent is responsible for comparing the received data with the data already present in ACMP. If a new client or an existing client with new data is found in AD, the client's basic data (name, description, domain and address) is stored or modified in the ACMP database. This allows the client to be found in the agent installation and its basic data to be processed normally (e.g. in queries or client commands).
23 |=WMI Scanner |(((
24 The WMI scanner is required so that continuing data of the Client can be inventoried which go beyond the basic data. A scan of the WMI of the Client is triggered. This data is then stored in the ACMP Database. This means that Clients which are not accessible via NetBIOS (e.g. due to certain network guidelines) and therefore do not appear in the Agent Installation can also be inventoried.
25 )))
26
27 = Installation requirements =
28
29 Before you can perform the installation, check the following requirements:
30
31 * The services are installed on the server on which ACMP is also installed.
32 * At least .Net Framework version 4.7.2 is installed.
33 * Message Queuing is installed.
34
35 {{aagon.infobox}}
36 If Message Queuing is not yet installed, it can be installed via the Control Panel under Windows Components (for workstation systems) or via the Server Manager under Features (for server systems).
37 {{/aagon.infobox}}
38
39 == Run installation ==
40
41 To use the Agentless Scanner, you must first install its services. To do this, run the ACMP Agentless Scanner_Installer.exe installation file located in the ACMP Server installation directory in the Installers/AgentlessScan folder. Follow the installation instructions and install all the components.
42
43 [[Installation of the Agentless Scanner>>image:Agentless Scanner_Installer.png||alt="Installation des Agentless Scanners"]]
44
45 {{aagon.infobox}}
46 The XML Importer is only required for inventorying Linux and macOS Clients and can be installed separately at a later date if necessary.
47 {{/aagon.infobox}}
48
49 = Configuring the Agentless Scanner =
50
51 Now open the Configuration Manager to begin configuring the agentless scanner. The Configuration Manager is divided into six sections.
52
53 {{aagon.infobox}}
54 You can find the application in your specified installation directory or through Windows Quick Search under the name Configuration Manager.
55 {{/aagon.infobox}}
56
57 == General ==
58
59 The connection string to the ACMP database is entered by default in the General area. If this is not available or if a different connection string is entered, click on Get database connection string from ACMP configuration to have the connection string to the ACMP database entered automatically.
60 Now click on Test connection string to test the connection. If you receive the message Connection successful, the connection to the database has been established. If you receive the message Failed to connect instead, the connection string must be customized.
61 To customize the connection string, click Edit connection string and enter the correct connection string. Then repeat the test process until the connection has been successfully established.
62 If you encounter any problems, Aagon Support will be happy to help you. Alternatively, you can find further information on general adjustments to the connection string here.
63
64 [[Establish connection to ACMP database>>image:Agentless Scanner_General.png||alt="Verbindung zur ACMP Datenbank herstellen"]]
65
66 == AD Connector ==
67
68 In the AD Connector area, you can define the settings for AD access:
69
70 1. Under //Domain Controller//, enter the name or IP address of the server on which the AD is installed.
71 1. Under //User Name//, enter a user who has read access to the domain from which the client data is to be read.
72 1. Under //Password//, enter the password for the user you entered previously.
73 1. Enter the name of the domain from which the client data is to be read in //NT Domain Name//.
74 1. Enter the AD path under which the clients whose data is to be read can be found in //BaseDN//. This can be the main directory, for example, but you can also specify a specific group (OU) within the AD.
75 1. If you want to filter Clients that have not been on the network for a certain number of days and have not logged on to the domain controller, assign a value for the number of days in the //Ignore Objects that haven't changed for X days// option.
76
77 [[Configuring the Active Directory Connector>>image:Agentless Scanner_AD Connector.png||alt="Active Directory Connector konfigurieren"]]
78
79 {{aagon.infobox}}
80 In addition to configuration through the Configuration Manager, you can make additional settings in the AD Connector configuration file. For more information, see the section Additional customizations in the AD Connector configuration file.
81 {{/aagon.infobox}}
82
83 == AD Agent ==
84
85 The settings in the AD Agent section are required for the internal processes of the Agentless Scanner. This includes the message queue path and the number of internal IP scanner threads.
86
87 {{aagon.warnungsbox}}
88 You should only change these settings if requested to do so by Aagon Support.
89 {{/aagon.warnungsbox}}
90
91 Abgesehen von den beiden genannten Einstellungen, können Sie im Eintrag Client Import Destination festlegen, wie mit den gefundenen Clients und den erfassten Daten umgegangen werden soll. Sie können zwischen folgenden Optionen wählen:
92
93 * //Inventory// – Das Inventory wird mit den Clients inklusive der erfassten Daten befüllt
94 * //AgentDistribution// – Die erfassten Clients werden in der Agenteninstallation in ACMP eingetragen
95 * //Inventory and AgentDistribution// – Beide Vorgänge werden ausgeführt
96
97 [[Active Directory Agent konfigurieren>>image:Agentless Scanner_AD Agent.png||alt="Active Directory Agent konfigurieren"]]
98
99 == WMI Scanner ==
100
101 Der Bereich WMI Scanner können Sie, wie schon zuvor beim AD Agent, die Einstellungen für den Pfad der Message Queue und die Anzahl der internen IP Scanner Threads für den WMI Scanner anpassen.
102
103 {{aagon.warnungsbox}}
104 Diese Einstellungen sollten Sie nur nach Aufforderung durch den Aagon-Support ändern.  
105 {{/aagon.warnungsbox}}
106
107 [[WMI Scanner konfigurieren>>image:Agentless Scanner_WMI Scanner.png||alt="WMI Scanner konfigurieren"]]
108
109 Abgesehen von den beiden genannten Einstellungen, können Sie im Eintrag //Database Request Frequency// festlegen, in welchem Intervall (in Stunden) die ACMP Datenbank geprüft werden soll. Bei dieser Prüfung werden alle Clients ermittelt, welche vom //AD Connector// erfasst wurden, für die aber noch keine Daten vorhanden sind. Diese Clients werden schließlich an den WMI Scanner übergeben und es wird ein Scan der WMI der Clients angestoßen, in dem die erweiterten Daten und Eigenschaften der Clients ausgelesen werden.
110
111 Unter //Domain Credentials// können Benutzerkonten hinterlegt werden, die Administratorrechte auf den zu scannenden Clients besitzen. Sie müssen hier mindestens einen Benutzer eintragen. Gehen Sie dafür folgendermaßen vor:
112
113 1. Klicken Sie auf den Plus-Button, um das Dialogfenster für die Credentials zu öffnen.
114 1. Tragen Sie unter //Domain name (FQDN)// den „Fully Qualified Domain Name“ der Domain ein, deren Clients gescannt werden sollen. 
115 1. Trage Sie bei //User Name// den Benutzernamen ein. Dieser muss nach dem Prinzip Benutzer@FQDN „User Principal Name“ (UPN) aufgebaut sein.{{aagon.infobox}}Der zuerst angegebene Domain name und der FQDN des Benutzers müssen nicht identisch sein. Der Domain name stellt einen Filter der übergebenen Clientdaten dar. So werden nur Clients gescannt, welche nach ACMP Datenbank zur entsprechenden Domain gehören. {{/aagon.infobox}}
116 1. Tragen Sie bei Password das Passwort für den Benutzer ein.
117 1. Klicken Sie auf den OK-Button, um Ihre Angaben zu bestätigen und das Dialogfenster zu schließen.
118
119 [[Domain Credentials hinterlegen >>image:Agentless Scanner - Domain Credentials.png||alt="Domain Credentials hinterlegen"]]
120
121 Nun können Sie bei Bedarf noch weitere Domänen mit entsprechenden Benutzerangaben hinzufügen.
122
123 == XML Importer ==
124
125 Während Clients mit Windows-Betriebssystem über die beschriebenen Schritte mithilfe des AD inventarisiert werden können, erfolgt die Inventarisierung von Linux- und MacOS-Clients durch den Einsatz von XML-Dateien. Dabei werden folgende Arbeitsschritte für die Inventarisierung durchgeführt:
126
127 1. Ausführung eines lokalen Python-Skripts auf allen Linux- und MacOS-Clients mithilfe des Client Commands Linux- und MacOS-Inventarisierung.
128 1. Automatische Erzeugung von XML-Dateien (eine Datei pro Client) auf einer spezifischen Netzwerkfreigabe durch das Skript, in denen jeweils alle gesammelten Informationen des Clients gespeichert sind.
129 1. Die erzeugten XML-Dateien werden durch den XML Importer ausgelesen, die enthaltenen Informationen werden erfasst und schließlich in der ACMP Datenbank hinzugefügt.
130
131 Da im Agentless Scanner selbst nur der XML-Import (Arbeitsschritt 3) durchgeführt wird, wird an dieser Stelle auch nur die Konfiguration des XML Importers beschrieben. Für weiterführende Informationen zur Ausführung des Python-Skripts und der Erzeugung der XML-Dateien (Arbeitsschritte 1 und 2), lesen Sie bitte den Abschnitt Linux- und MacOS-Inventarisierung.
132
133 Im Bereich //XML Importer// müssen Sie für die Inventarisierung der Linux- und MacOS-Clients bei //Reader //die Netzwerkfreigaben angeben, auf der die zu importierenden XML-Dateien hinterlegt sind. Bei der Verwendung des XML Importers müssen Sie folgende Hinweise beachten:
134
135 * Sollten zwei Clients ihre Daten in derselben XML-Datei speichern, so überschreibt der zweite Client die Daten des ersten.
136 * Nach dem Importieren werden die XML-Dateien gelöscht.
137 * Defekte Dateien oder Dateien, die nicht für den XML Importer bestimmt sind, werden ebenfalls gelöscht. Daher dürfen in der Freigabe nur Dateien für den XML Importer hinterlegt werden.
138 * Es ist nicht möglich die XML-Dateien in einem Unterverzeichnis der Freigabe abzulegen
139 * Die Software-Inventarisierung mit dem Paketmanager „dpkg“ kann einige Zeit in Anspruch nehmen (15-20 min). Die Softwareinventarisierung kann jedoch unter „Options“ in der Oberfläche des ClientCommands ausgeschaltet werden.
140 * Linux Software wird standardmäßig im Lizenzmanagement ausgeblendet, da grundsätzlich davon ausgegangen wird, dass es sich um Open Source Software handelt. Sie kann jedoch auch wieder eingeblendet werden.
141
142 Sie können zwischen drei verschiedenen Reader-Typen wählen (FTP-, SCP- und Share Reader). Die Konfiguration der verschiedenen Reader ist im Grundsatz gleich aufgebaut:
143
144 * Pfad des Verzeichnisses, in dem die XML-Dateien hinterlegt sind {{aagon.infobox}}Beachten Sie, dass der FTP-Reader nicht das FTP-Root unterstützt. Es ist daher notwendig, dass Sie ein Unterverzeichnis angeben. {{/aagon.infobox}}
145 * Benutzer, der über Zugriffsrechte auf die Verzeichnisse verfügt 
146 * Domain, in der der Benutzer angelegt ist
147 * Passwort für das Benutzerkonto
148 * Pfad des Verzeichnisses, in dem alle Dateien vor dem Import lokal als Sicherheitskopie zwischengespeichert werden
149 * Maximale Anzahl von Inventardateien, die gleichzeitig aus dem Verzeichnis importiert werden
150 * Zeitangabe in Sekunden, wie oft der Reader nach einem Scan warten soll, bis er das Verzeichnis nach neuen XML-Dateien scannt
151
152 [[Reader konfigurieren >>image:Agentless Scanner_XML Importer_Share Reader.png||alt="Reader konfigurieren"]]
153
154 Im Eintrag //Max queue length// können Sie die maximale Anzahl an gleichzeitig zu verarbeitenden XML-Dateien begrenzen. Weiterhin können Sie im Eintrag //Wait every n cycles// festlegen, dass der Verarbeitungsvorgang nach einer gewissen Anzahl n an verarbeiteten XML-Dateien unterbrochen werden soll. Die Dauer der Wartezeit können Sie im Eintrag //Wait time// einstellen. Auf diese Weise ist es möglich die Datenbank zu entlasten.
155
156 == Services ==
157
158 Im Bereich Services können Sie die einzelnen Dienste des Agentless Scanners starten und stoppen.
159
160 {{aagon.infobox}}
161 Beachten Sie, dass Sie vor dem Starten oder Stoppen eines Dienstes alle Änderungen über Save speichern müssen, bevor ein Starten/Stoppen möglich ist.
162 {{/aagon.infobox}}
163
164 = Zusätzliche Anpassungen in der Konfigurationsdatei des AD Connectors =
165
166 Neben den Angaben, die Sie in der Konfigurationsoberfläche des Configuration Manager machen können, haben Sie die Möglichkeit, weitere Einstellungen in der Konfigurationsdatei des AD Connectors vorzunehmen. 
167
168 Speichern Sie dazu zunächst die im Configuration Manager getätigten Eingaben. Öffnen Sie nun die Konfigurationsdatei Configuration.xml, die Sie im Dateiverzeichnis //Aagon/Configuratio//n finden. 
169
170 Mithilfe der XML-Tags <OuAllowList>,<OuDenyList> und <OuRuleOrder> ist es Ihnen möglich festzulegen, aus welchen OUs Computerobjekte importiert werden sollen. Die verschiedenen XML-Tags haben folgende Funktionen:
171
172 * <OuAllowList> - Liste mit allen OUs, die ausgelesen werden
173 * <OuDenyList> - Liste mit allen OUs, die nicht ausgelesen werden
174 * <OuRuleOrder> - Reihenfolge zur Auswertung der beiden Listen 
175 ** 0 (Standardwert) = Alle OUs werden ausgelesen und alle OUs, die nicht einbezogen werden sollen, müssen in der OuDenyList eingetragen werden. Rekursiv darunter liegende OUs werden dann ebenfalls nicht berücksichtigt. Sollen diese berücksichtigt werden, so müssen sie in die OuAllowList eingetragen werden
176 ** 1 = Keine OUs werden ausgelesen und es müssen explizit alle OUs in der OuAllowList angegeben werden, die einbezogen werden sollen. Sollen bestimmte, darunter liegende OUs nicht mit einbezogen werden, so müssen diese in der OuDenyList eingetragen werden.
177
178 {{aagon.infobox}}
179 OUs müssen in der Schreibweise des Distinguished Name (DN) angegeben werden (siehe Beispiel). Beachten Sie beim Bearbeiten der Configuration.xml-Datei die Groß- und Kleinschreibung, ansonsten wird die gesamte Konfigurationsdatei als fehlerhaft angesehen und der Dienst beendet sich direkt nach dem Starten wieder. 
180 {{/aagon.infobox}}
181
182 Das folgende Beispiel soll das Verhalten illustrieren:
183
184 {{code}}
185 <OuAllowList>
186
187 <OuAllow>OU=Aagon,dc=aagon,dc=local</OuAllow>
188
189 </OuAllowList>
190
191 <OuDenyList>
192
193 <OuDeny>OU=Marketing,OU=Aagon,dc=aagon,dc=local</OuDeny>
194
195 </OuDenyList>
196
197 <OuRuleOrder>1</OuRuleOrder>
198 {{/code}}
199
200
201 [[image:1729693841810-329.png]]
202
203 (% class="box" %)
204 (((
205 **Erklärung des Beispiels:** Grundsätzlich sind alle OUs verboten, da die RuleOrder auf 1 gesetzt ist. Durch die Angabe einer OU in der OuAllowList wird die OU „Aagon“ und alle unter ihr liegenden OUs erlaubt. Durch Angabe der OU „Marketing“ wird diese spezielle OU wieder ausgeschlossen.
206 )))
207
208 = Agentless Scanner aktualisieren =
209
210 Nach der Installation eines ACMP Updates kann es vorkommen, dass eine Aktualisierung des Agentless Scanners erforderlich ist
211
212 {{aagon.infobox}}
213 Sie können aus den ACMP Release Notes entnehmen, ob und welche Zusatzkomponenten von Ihnen aktualisiert werden müssen.
214 {{/aagon.infobox}}
215
216 Sollte eine neue Version vom Agentless Scanner im ACMP Update vorhanden sein, können Sie Ihre vorhandene Installation wie folgt aktualisieren:
217
218 1. Navigieren Sie zum Installationsverzeichnis des ACMP Servers zum Ordner Installers/AgentlessScan mit der Installationsdatei ACMP Agentless Scanner_Installer.exe.
219 1. Folgen Sie den [[Installationsanweisungen>>doc:ACMP.68.ACMP-Solutions.Client-Management.Agenteninstallation.WebHome||anchor="HAgentlessScannerkonfigurieren"]] und installieren Sie alle fünf Komponenten.
© Aagon GmbH 2025
Besuchen Sie unsere neue Aagon-Community