FNMS klientagent

Innholdsfortegnelse

Bakgrunn

For å kunne innhente informasjon om klientene som hardware, programvare og lisenser er man avhengig av å ha en agent installert. Agenten sender informasjon til en onpremise FlexNet Beacon server.

Overordnet

Det er mulig å konfigurere eksklusjoner basert på mapper, filnavn, MD5 etc. om nødvendig.

Nåværende konfigurasjon har ingen spesialtilpasninger utover å spesifisere path til Beacon hvor inventory skal lastes opp.

Agenten kjører én gang om dagen.

All kommunikasjon foregår via https.

Agent arkitektur

agent arkitektur
  1. ndinit (kun Windows): Kjører som en service og starter ndtask og ndsens
  2. ndtask: Kjører som en daemon på macOS. Funksjonelt identisk med MS task scheduler. Starter ikke oppgaver direkte men kaller på ndschedag.
  3. ndschedag: Samler inventory, policy oppdatering og opplasting av inventory
  4. ndsens (kun Windows): starter opp ved reetablering av nettverksforbindelse. Kaller på ndscehdag for å sjekke om det er noen oppgaver som er køet opp.
  5. ndtrack: Startes av ndschedag og samler inventory i .ndi filer og discovery data i .disco filer. Komprimerte .ndi filer forsøkes sendt umiddelbart til Beacon. Ved nettverksproblemer lagres de lokalt og sendes senere av ndupload. På Windows kjøres og getSystemId. Ellers se oversikt over andre underprosessor for Windows og macOS
  6. mgspolicy: Sjekker om det er noen ny policy fra Beacon som skal oppdateres 
  7. ndupload: Prosessen som tar seg av alle opplastinger til Beacon som ikke initielt blir gjort av ndtrack
  8. ndlaunch: Laster ned filer fra Beacon, og kjører agent oppdateringer:
    • Agent konfigurasjon
    • Gjeldende versjon av InventorySettings.xml
    • Liste over våre FlexNet Beacons
    • Oppgraderingspakker for agenten, for selvoppgradering om tilgjengelig
    • Agent schedule
    • Loggfører og kaller på ndupload for å laste de opp
  9. mgsecvsvc (kun Windows): Kjører som en service. Fungerer som en wrapper for underprosesser, som er DLL’er som kjører samtidig med servicen.
  10. mgsusageag: Monitorer bruk av applikasjoner når dette er konfigurert. På macOS kjører denne som en daemon, mens på Windows startes den av mgsecvsvc. ndupload laster opp bruksdata når dette er tilgjengelig som .mmi filer.
  11. vdiendpoint: Samler virtual desktop inventory som .vdi filer og overleverer til ndupload for umiddelbar opplastning

 

Windows

Agenten kjører alltid som LocalSystem, og dermed også kan kjøre følgende som LocalSystem:

  • Kommandoer under sikre system paths
  • Kommandoer som ligger under %PATH% variablen for LocalSystem brukeren

Default oppførsel:

  • Installeres under %ProgramFiles(x86)%\ManageSoft
  • Lagrer dataene under %temp%\FlexeraSoftware\$(UserName) on $(MachineId).ndi
    • Når ndtrack kjøres som LocalSystem vil $(UserName) få verdien system
    • $(MachineId).ndi får maskinnavnet som rapportert av OS’et
  • Loggfører aktiviteten under %temp%\ManageSoft\tracker.log.
    • Hvor %temp% er for system, dvs. Windows\Temp\
  • Noen logfiler og .ndi filer etc. er og tilgjengelig under %ProgramData%\ManageSoft Corp\ManageSoft
  • Eksempel på ndi fil for Windows

Oversikt over relevante underprosesser for Windows

Executable

Path

Notes

cmd

C:\Windows\System32

Command line:

C:\Windows\System32\cmd.exe script

Purpose: Runs the named script that has been delivered within InventorySettings.xml (these scripts may be updated through the Application Recognition Library). These scripts provide specialized inventory-gathering steps for use with Oracle products. They include the Oracle LMS scripts required for preparing an Oracle audit report.

Invoked using: The account running the ndtrack executable (default: LocalSystem).

nbtstat

%PATH%

Command line:

\%PATH%\nbtstat -A IPAddr

Purpose: Returns the local NetBIOS name table for the computer at the nominated IP address, as well as the MAC address of the adapter card connecting it to the network. This data is used in discovery. 

Invoked using: The account running the ndtrack executable (default: LocalSystem).

 

macOS

Trackeren kjører vanligvis som root, med mindre annet spesifisert. Dette for å kunne fullføre en komplett system inventory. Dette resulterer i at trackeren kjører som root:

  • Kommandoer under sikre system paths
  • Kommandoer som ligger under $PATH variablen for root

Default oppførsel:

  • Installeres under /opt/managesoft
  • Under /var/opt/managesoft ligger logger og filer. Denne er kun tilgjengelig for root.
  • Lager en inventory fil som heter $(UserName) on $(MachineId).ndi
    • Når ndtrack kjøres som root vil $(UserName)få verdien system
    • $(MachineId).ndi får maskinnavnet som rapportert av OS’et
  • Lagrer inventory fil, både en ukomprimert for innspeksjon og en komprimert for opplasting under /var/opt/managesoft/uploads/inventories
  • Loggfører aktivitetene i filen tracker.log under /var/opt/managesoft/log
  • Eksempel på ndi fil for macOS

Oversikt over relevante underprosesser for macOS

Executable

Path

Notes

arp

The following are searched in this order:

  • $PATH
  • /usr/sbin.

Command line:

/successfulPath/arp IPaddress

Purpose: Reports the MAC address of network interface(s). 

Invoked using: The account running the ndtrack executable (default: root).

ifconfig

/usr/sbin or $PATH

Command lines: On all platforms except HP-UX:

/successfulPath/ifconfig -a

 

Purpose: Lists all network interfaces; or reports the configuration of the interface identified as adapter. 

Invoked using: The account running the ndtrack executable (default: root). If running as an account other than root, information is less complete (for example, no MAC addresses for network adapters).

lsbom

/usr/bin

Command line:

/usr/bin/lsbom -p f path

Purpose: Obtains a listing of files identified within path by the installer's Bill of Materials (binary bom file). 

Invoked using: The account running the ndtrack executable (default: root).

netstat

$PATH

Command line:

/successfulPath/netstat -nr

Purpose: Collects the default IP gateway address. 

Invoked using: The account running the ndtrack executable (default: root).

pkgutil

/usr/sbin

Command line: To collect details of a package:

/usr/sbin/pkgutil --pkg-info-plist packageName

To list the files for a package:

/usr/sbin/pkgutil --files packageName

Purpose: Collects details of packages and the files they contain to include in software inventory. 

Invoked using: The account running the ndtrack executable (default: root). If an account other than root is used, some OS X bundles under /Applications or /System/Library that are not accessible by the executing user cannot be reported in inventory.

ps

/bin

Command line:

/bin/ps -ax -o pid,ruid,command

 

Purpose: A fail-over step to identify processes that are required in later inventory gathering, when these could not be recovered from the proc file system.

Invoked using: The account running the ndtrack executable (default: root).

sh

/bin

Command line:

/bin/sh -c script

Purpose: Runs the named script that has been delivered withinInventorySettings.xml (these scripts may be updated through theApplication Recognition Library). These scripts provide specialized inventory-gathering steps for use with Oracle products. They include the Oracle LMS scripts required for preparing an Oracle audit report.

Invoked using: The account running the ndtrack executable (default: root).

Publisert 18. jan. 2021 21:31 - Sist endret 13. nov. 2024 07:04