XML Importer

Navigation:  First steps > Install clients >

XML Importer

Version 1.0.2

The XML Importer is used to inventory Linux and MacOS clients. It can be installed during the installation of the Agentless Scanner or alone at a later time on the ACMP server. In order to inventory the clients, a local Python script will run on the Linux and Mac clients to collect the necessary information of the client and store it in an XML file. Each client creates a separate XML file with inventory data. This XML file is then stored on a network share. This Python script can be distributed to the clients and executed with the Client Commands "Linux and MacOS Inventory" in "Advanced Inventory." The XML Importer service periodically scans the configured network shares, reads out the inventory information from the XML files and writes them to the ACMP database.

 

In the query manager, Linux and MacOS clients are marked with a tux or an apple icon.

 

3.3.3 - XMLImporter

 

3.3.3 - Command Linux und MacOS Inventarisierung

Agentless Scanner: XML Importer

 

It is important to note that neither the NT notation (with \), nor the UPN notation (with @) can be used for the user name for logging in at the share. If a local user is to be used, you must enter the machine name in the Domain field. In addition, the password must not contain an @-sign.

 

Linux distributions Debian as from 6.0.3, Fedora as from 16, Open Suse as from 11.4 and Ubuntu as from 12.04 and MacOS X as from 10.6 Snow Leopard version are supported. In addition, the following requirements must be fulfilled:

Python 2.6 is installed
Sufficient privileges to execute commands with "sudo"
SSH service must be installed, started and accessible

 

In addition, the following aspects must be observed for the inventory of Linux clients:

Only software that was installed with the package managers "dpkg" or "rpm" is inventoried.
The following programs must be installed:
„hdparm“ for reading out hard drives and drive ifnormation.
„dmidecode“ for reading out BIOS information
„lsb_release“ for reading out distribution information
„aptitude“ for reading out software information (only for package manager dpkg)
"unzip"
"smbclient"

 

In addition to running the Client Command described above, you also have the option to launch the scripts manually or automatically with a cron job to implement a regular inventory. The scripts can be found in the installation directory of the ACMP server in the "\Installers\AgentlessScan\InventoryScripts" folder.

 

Hinweis

Note

If you automate the inventory with a cron jobs, note that "cron" must be installed on the clients. For more information about creating a cron jobs on Linux and MacOS X clients, see the following chapters.

 

There are various parameters to choose from:

Parameter

Alternative

Description

-?

-h

Issues a mini-guide

-c

check

Check feasibility in this environment

-d

debug

System calls, including results, are saved in the log file "/var/log/aagon-inventory-debug.log."

-s

silent

Processed results not issued

noBios


Bios information not read

noCpu


CPU information not read

noDrives


Hard drives/drives not read

noMachine


Housing information not read

noMemory


Memory information not read

noMonitors


Monitor data not read (MacOS only)

noNetwork


Network cards not read

noOs


Operating system data not read

noSoftware


Installed software not read

smbOutput


Data are copied to a SMB share after completion of the scan process (=FILENAME,UNC-PATH,USER,PASSWORD,DOMAIN)

 

For example, to output all executed system commands and their output, but not the XML file, the following command must run:

> sudo python inventory.py –s –d

or

> sudo python inventory.py silent debug

 

If you want to read all data, except RAM data and information on installed software, the following command is required:

> sudo python inventory.py noSoftware noMemory

 

If you would like to specify a certain memory location for the XML file, you require the following command.

In doing so, all data are read and saved in the file "192.168.0.64.xml" on the "//fileserver/inventory" share. For authentication on the server of the share, the "inventoryUser" with the password "secret" from the "aagon.local" domain is used:

> sudo python inventory.py smbOutput=192.168.0.64.xml,//fileserver/inventory,inventoryUser,geheim,aagon.local

 

To set up a cron job on MacOS, see here and for Linux here.

 

The following points must be observed when working with the XML Importer:

If two clients have to store their data in the same XML file, then the second client will overwrite the data of the first.
The XML Importer deletes the XML files after importing
Defective files or files that are not intended for the XML Importer are also deleted; therefore only files for the XML Importer may be deposited in the share
It is not possible to store the XML files in a subdirectory of the share.
Software inventory with the dpkg package manager may take some time to complete (15-20 min). The software inventory can be turned off by using the "noSoftware" parameter.
Linux software is hidden by default in the license management, as is generally assumed that it is open source software. However, it can also be displayed again.

 

The configuration of the XML Importer can be accessed via the configuration manager of the Agentless Scanner. It is possible to specify multiple network shares.

 

AgentlessScanner_XMLImporter_Configuration

Agentless Scanner: XML Importer configuration

 

For each share you have to specify the UNC path to the XML file. In addition, further information on the domain, the user and the password is required for login. The login password may not contain an @-sign. In addition, the intervals at which the XML Importer searches the UNC paths can be defined in seconds.

 

AgentlessScanner_XMLImporter_NetworkShareInformation

Agentless Scanner: XML Importer share information

 

In order to better control the load resulting from a large number of inventoried clients on the server and the database, three additional setting options are available. The maximum number of XML files to be processed simultaneously can be limited with Max queue length. Furthermore, it is to possible to interrupt the process for a certain period of time after a certain number of processed XML files. For this purpose, the number of XML files can be set with Wait every n cycles, and the wait time can be set with Wait time. In this way it is possible to relieve the database.

 

New data fields in software\Linux software:

 

Name

Description

Linux DEB Auto installed

Was the package was automatically installed because it was required by another package or not

Linux DEB maintainer

Associated group or community

Linux DEB Priority

"required", "important", "standard", "optional", "extra"

Linux DEB Section

Package category:

"admin", "base", "comm", "devel", "doc", "editors", "electronics", "games", "graphics", "hamradio", "interpreters", "libs", "mail", "misc", "net", "news", "oldlibs", "otherosfs", "science", "shells", "sound", "tex", "text", "utils", "web", "x11"

Linux DEB State

1 = requested status

2 = Error during installation

3 = is installed

Linux DEB Uncompressed Size

Used disk space

Linux RPM Architecture

For which processor architecture was application compiled

Linux RPM Build Date

Date of package creation

Linux RPM Build Host

Computer on which the package was created

Linux RPM Group

Package category

Linux RPM Install Date

When was the package installed on the system

Linux RPM License

License under which the software was released

Linux RPM Packager

The organization, which has packaged the software

Linux RPM Release

Release version number

Linux RPM Relocations

If the package is also installed in a different directory

Linux RPM Signature

If available, the signature of the package

Linux RPM Size

Size of the package

Linux RPM Source RPM

RPM package containing the source files associated with this software

Linux RPM Summary

Summary description of the package

Linux RPM Vendor

Manufacturer of the software

Linux Software Description

Description of the package

Linux Software Homepage

Homepage of the project associated with the package

Linux Software Name

Name of the software or of the package

Linux Software Package Type

RPM or DEB package

Linux Software Version

Contains the version; often also has a distribution suffix

New data fields in software\Mac OS software:

 

Name

Description

Mac OS Software Is 64 Bit

True or false

Mac OS Software Kind

Intel architecture or universal

Mac OS Software Last Modified

Date of installation or of the last update

Mac OS Software Location

Installation path

Mac OS Software Name

Title of the software

Mac OS Software Version

Software version

 

Last change on 12.04.2017