02.01.2015 Views

Linux/UNIX MAP agent 9.0 SP2 - Community - LANDesk

Linux/UNIX MAP agent 9.0 SP2 - Community - LANDesk

Linux/UNIX MAP agent 9.0 SP2 - Community - LANDesk

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Release notes:<br />

<strong>Linux</strong>/<strong>UNIX</strong> <strong>MAP</strong> <strong>agent</strong> <strong>9.0</strong> <strong>SP2</strong><br />

<strong>Linux</strong>/Unix Support<br />

The <strong>Linux</strong>/<strong>UNIX</strong> <strong>MAP</strong> <strong>agent</strong> supports the following OS's:<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

Red Hat Enterprise Server 5 64-bit<br />

CentOS Server 5 64-bit<br />

Solaris 10 Intel 64-bit<br />

Solaris 10 Sparc 64-bit<br />

HP-UX Itanium 11.23v2 64-bit<br />

HP-UX Itanium 11.31v3 64-bit<br />

HP-UX PA-Risc 11.11v1 64-bit<br />

General Architecture<br />

The <strong>LANDesk</strong> <strong>agent</strong> has been redesigned to use component architecture. This new architecture<br />

improves the portability of the <strong>agent</strong> as well as the testability.<br />

There are four key components to the <strong>agent</strong>, and several smaller "sub-components" that provide, or<br />

add additional functionality and feature support to the <strong>agent</strong>.<br />

The first of the key components is the Common Base Agent (cba). This is a daemon which listens<br />

on a several different network ports for incoming requests from the <strong>LANDesk</strong> core server and responds<br />

to specific requests. Requests would be things like starting a vulnerability scan or starting an<br />

inventory scan.<br />

The second key component is the Scheduler (map-scheduler). As its name implies, this component<br />

is responsible for scheduling jobs. Jobs descriptions can vary from high level job descriptions like<br />

"inventory scan" to launching the individual sub-components responsible for scanning specific data or<br />

services and reporting data back to the core servers.<br />

The third key component is the Scraper (map-scraper). Its main task is to assemble data gathered<br />

from a number of independent scanner modules, and normalize the data in a local "data store" which<br />

can then be consumed by various other tasks and report generators.<br />

The fourth of the key components is the Reporter (map-reporter). The job of this component is to<br />

format data previously stored in the local "data store" and create reports of various formats that can<br />

be consumed by the <strong>LANDesk</strong> core server.<br />

The additional sub-components mentioned above can be broken into 3 categories:<br />

<br />

<br />

<br />

Scanners - responsible for scanning specific types of hardware or software data which is then<br />

consumed by the Scraper. Scanners are scheduled at different intervals depending on the<br />

types of data scanned and the frequency of anticipated change for that data type.<br />

Shims - responsible for converting requests from the core into job descriptions which can be<br />

consumed by the Scheduler. Since current implementations of the <strong>LANDesk</strong> core server only<br />

know about specific programs on the <strong>agent</strong>s, shims were created to handle these specific<br />

requests and schedule the appropriate tasks in the Scheduler.<br />

Helpers - tools and utilities that move or manipulate data in specific ways. Some of the<br />

more important helpers are:<br />

Release notes: <strong>Linux</strong>/<strong>UNIX</strong> <strong>MAP</strong> <strong>agent</strong> <strong>9.0</strong> <strong>SP2</strong> 19 November 2010 page 1<br />

Copyright © 2010 <strong>LANDesk</strong> Software, Inc. and its affiliates. All rights reserved.


Technical notes<br />

• Proxyhost (proxyhost) - a helper that determines how to communicate with the<br />

core server and manages the routes and transmission of data.<br />

• Sender (map-sender) - a tool used to assemble data intended to be sent to the<br />

<strong>LANDesk</strong> core server, formats the data appropriately for the destination and invokes<br />

the proxyhost helper to transmit the data to the core.<br />

• Fetcher (map-fetcher) - a tool used to request <strong>agent</strong> specific configuration data<br />

from the <strong>LANDesk</strong> core server, and cache the data where it can be consumed by the<br />

various components and scanners.<br />

Much of the data passed between the various components and sub-components is passed as XML<br />

data. This makes it possible to stop one component (scraper for example) and verify that the subcomponents<br />

(scanners) are producing appropriate data. In the installation, various sub-directories are<br />

used as temporary repositories for this data. The XML data is also validated by schema files (XML-<br />

DTD files) which can be found in the schemas directory.<br />

Major Component details<br />

CBA<br />

/opt/landesk/bin/cba<br />

A daemon that receives communications from the <strong>LANDesk</strong> core server. CBA will listen on several<br />

network ports (9593, 9594, 9595). The port used for a specific request depends on the request type,<br />

and the specific authentication required. Authenticated connections use SSL connections based on<br />

X509 certificate-based authentication and require a certificate to be installed that was generated by<br />

the <strong>LANDesk</strong> core sever. When the core server wants to force the <strong>agent</strong> to perform an immediate or<br />

scheduled inventory scan, vulnerability scan, or heartbeat request, it sends the request to this<br />

component.<br />

Shims<br />

/opt/landesk/bin/ldiscan<br />

This file produces a job XML with all the necessary tasks for the Scheduler to perform a complete or<br />

partial inventory scan and forward the results in the form of an inventory report to the core server.<br />

Executing this command will place the XML in the /opt/landesk/jobs directory. Using the ldiscan<br />

command without options will create a job based on core inventory settings and calls to the reporter<br />

and sender to deliver an inventory report to the core. The core calls ldiscan through the CBA daemon<br />

on the client, usually with no command line options. You can see these core inventory settings by<br />

clicking the Configure > Services menu option, then clicking the Inventory tab and the Advanced<br />

settings button. There are only two options the new <strong>Linux</strong>/<strong>UNIX</strong> <strong>agent</strong> pays attention to:<br />

<br />

<br />

Off-Core Inventory Server - if specified, this sends the inventory to an off-core inventory<br />

server other than the core making the request.<br />

Send Software File info - if this parameter set to a value of 1, ldiscan schedules a job with<br />

the file and software package scan.<br />

These core inventory parameters are stored in /opt/landesk/etc/ldconfig.xml. Note that the command<br />

line options will override the core inventory settings if they are used.<br />

In order to achieve backward compatibility, this shim supports most of the command line options that<br />

were available in previous versions of the <strong>LANDesk</strong> <strong>agent</strong> ldiscan tool. The -o option will write out to a<br />

specified file instead of sending the results to the core. The -f- option will create a job with all the<br />

scanners except the file and software package scanner and call the reporter and sender. The -f option<br />

will call all the scanners, the reporter, and sender.<br />

Release notes: <strong>Linux</strong>/<strong>UNIX</strong> <strong>MAP</strong> <strong>agent</strong> <strong>9.0</strong> <strong>SP2</strong> 19 November 2010 page 2<br />

Copyright © 2010 <strong>LANDesk</strong> Software, Inc. and its affiliates. All rights reserved.


In a typical job ldiscan first determines which scanners to run from the /opt/landesk/etc/ldconfig.xml<br />

file, based on the command line options or inventory settings. This ldiconfig.xml maps the components<br />

(scanners, reporters, sender) found in the job.xml to an actual running executable. All the scanners in<br />

the job.xml will be marked with a sync="yes" parameter. This tells the scheduler to wait for the<br />

scraper to process the scanner.xml into the local database before marking this job finished and<br />

moving on to the next task. The scanners may run all at the same time, placing their scan data into<br />

the /opt/landesk/scan_repository directory where the scraper pulls the XML out, puts it into the<br />

database, and then places a job completion XML back into the /opt/landesk/jobs directory. This job<br />

completion XML has a unique job GUID to identify the individual scan job, and a task ID to identify the<br />

task ID of the scanner in the job.xml. The scheduler will then mark the job finished and then move on<br />

once all the scanners are complete. Next in the job.xml file is a task for the reporter which is<br />

dependent on all the scanners completing. If one scanner fails, the reporter will never run and the<br />

whole job will fail. The reporter creates the scn file from the database, then exits. The next job is the<br />

sender, it is dependent on the reporter completing. It will send the .scn file through proxy host to the<br />

core.<br />

/opt/landesk/bin/vulscan<br />

This creates a job XML with all the necessary commands to execute a vulnerability scan. It places the<br />

job.xml in the /opt/landesk/jobs directory. A typical job will contain a task to call the vulnerability<br />

fetcher (map-fetchvuldefs) binary to download vulnerability definitions for which the vulnerability<br />

scanner will use (this is downloaded to /opt/landesk/var/vuldefs/vuldefs.xml). The vulnerability<br />

scanner (map-vulscan) is tasked next to do the actual vulnerability scan with the definitions and<br />

setting supplied by the fetcher and the scanners. The vulscan scanner is dependent on the<br />

vulnerability fetcher tasks completing successfully. When the vulnerability scanner processes the<br />

vulnerability definitions it places the results in the scan_repository directory for the Scraper to be<br />

process the results in the local database. Once the vulnerability information is placed in the database,<br />

the Reporter (map-vulreporter) and the Sender (map-sender) are then called to create the XML<br />

vulnerability report and send it to the core.<br />

Scanners<br />

The scanners basically just scan various software and hardware resources and place the results into<br />

the /opt/landesk/scan_repository. The scanners are as follows:<br />

/opt/landesk/bin/map-drivescan - Retrieves hard drive information from the client system.<br />

/opt/landesk/bin/map-filescan - Retrieves file information from the client system.<br />

/opt/landesk/bin/map-networkconfigscan - Retrieves network address and hardware information from<br />

the system.<br />

/opt/landesk/bin/map-packagescan - Retrieves software package information from the client system.<br />

/opt/landesk/bin/map-versionscan - Retreives <strong>LANDesk</strong> Management <strong>agent</strong> versioning information<br />

from the client system.<br />

/opt/landesk/bin/map-cpuscan - Retrieves processor information from the client system.<br />

/opt/landesk/bin/map-envarscan - Retrieves environmental variable information from the client<br />

system.<br />

/opt/landesk/bin/map-mountscan - Retrieves mounted file system information from the client system.<br />

/opt/landesk/bin/map-osscan - Retrieves operating specific information from the client system.<br />

/opt/landesk/bin/map-systemscan -Retrieves system specific information like make, model,<br />

motherboard information from the client system.<br />

/opt/landesk/memoryscan - Retrieves memory information from the client system.<br />

/op/landesk/map-vulscan - Scans the database looking for vulnerabilities based on the file and<br />

package scans.<br />

Release notes: <strong>Linux</strong>/<strong>UNIX</strong> <strong>MAP</strong> <strong>agent</strong> <strong>9.0</strong> <strong>SP2</strong> 19 November 2010 page 3<br />

Copyright © 2010 <strong>LANDesk</strong> Software, Inc. and its affiliates. All rights reserved.


Scheduler Daemon<br />

/opt/landesk/bin/map-scheduler<br />

As discussed previously, the scheduler daemon coordinates all the various processes via job.xml to<br />

accomplish vulnerability and inventory scans as defined by the vulscan and ldiscan shims. It can<br />

sequence when executables run, running executables at scheduler times or upon startup of the<br />

scheduler. Jobs can be scheduled to be dependent on the completion of other jobs, and can be<br />

configured to run exclusively. Certain jobs, like certain scanners, are configured on a repeating<br />

schedule.<br />

Scraper Daemon<br />

/opt/landesk/bin/map-scraper<br />

As discussed previously, the scraper daemon manages the validation, normalization and storage of<br />

data into the local database cache. Currently the <strong>agent</strong> uses a sqlite database<br />

(/opt/landesk/ldconfig.db).<br />

Reporter<br />

/opt/landesk/bin/map-reporter<br />

This creates inventory reports to be submitted to the core.<br />

/opt/landesk/bin/map-vulreporter<br />

This creates vulnerability reports in XML format to be posted to the core.<br />

Sender<br />

/opt/landesk/bin/map-sender<br />

Formats and sends reports such as inventory and vulnerability scan files to the <strong>LANDesk</strong> core,<br />

encrypted through proxyhost.<br />

Fetchers<br />

/opt/landesk/bin/map-fetchvuldefs<br />

Pulls down the vulnerabilities from the core based on the command line options or the core,<br />

platformid, and language parameters in /opt/landesk/etc/landesk.conf directory. These must be set<br />

for it to work correctly.<br />

/opt/landesk/bin/map-fetchinvsettings<br />

Brings down core inventory settings which the core uses to tell the client how to scan the client, such<br />

as including the software scan, intermediate file extension, and alternate inventory server. These are<br />

used when ldiscan is called with no options or from the core. The inventory settings fetcher is called<br />

by ldiscan before it creates a scheduled task, to bring down the latest core inventory settings.<br />

Command line options supplied to ldiscan will override the settings fetched by map-fetchinvsettings.<br />

Other files to be aware of<br />

/opt/landesk/etc/landesk.conf<br />

This file should look similar to the /etc/ldiscnux.conf from past <strong>Linux</strong>/<strong>UNIX</strong> <strong>agent</strong>s. This file keeps<br />

track of the Device ID of the client machine, the core it reports to, and various other parameters<br />

necessary for the client to function.<br />

/opt/landesk/etc/ldconfig.xml<br />

This file is used by the ldiscan shim to determine what scanners to include in an inventory scan. It<br />

tells the scheduler where the executables referenced in the job XML are to be found. It also supplies<br />

the version scanner with information on which <strong>LANDesk</strong> Management Agent executables in needs to<br />

query for versioning information for inventory.<br />

Release notes: <strong>Linux</strong>/<strong>UNIX</strong> <strong>MAP</strong> <strong>agent</strong> <strong>9.0</strong> <strong>SP2</strong> 19 November 2010 page 4<br />

Copyright © 2010 <strong>LANDesk</strong> Software, Inc. and its affiliates. All rights reserved.


opt/landesk/schemas/*<br />

Contains DTD files which define the schema for the database, and also allow the scraper if a<br />

scanner.xml is valid or not.<br />

/opt/landesk/var<br />

This is the location to download vulnerability definitions, a place to store certificates, and intermediate<br />

files used by the reporters and senders.<br />

Core Installation<br />

The installation of the new <strong>Linux</strong>/<strong>UNIX</strong> <strong>MAP</strong> <strong>agent</strong> requires the installation of three patches:<br />

1. CRUnix-90 and CR52143-90. Install the CRUnix-90 patch first by executing the setup.exe<br />

contained in the CRUnix-90 folder. This patch contains the <strong>Linux</strong>/<strong>UNIX</strong> tar balls.<br />

2. Install Patch CR52586-90. This patch contains <strong>Linux</strong> uninstall scripts for the 32 Bit and 64 bit<br />

<strong>agent</strong>.<br />

3. Then run the setup from the CR52143-90 folder. This patch allows you to install the 32bit<br />

<strong>Linux</strong> <strong>agent</strong> as well as the 64 bit <strong>agent</strong>. This will require a reboot of the core.<br />

Client Installation<br />

<strong>Linux</strong> Prerequisites<br />

openssl-0.9.8e.12.el5_4.6 64-bit or any version of open ssl 9.8e or greater<br />

systat-7.0.0-3.e15 64-bit version of the rpm<br />

compat-libstdc++-33-3.2.3-61 64-bit version of the rpm<br />

Client Deployment through Client Push<br />

Client installation can be performed from the core as an <strong>agent</strong> push just like you would push the old<br />

32-bit <strong>Linux</strong>/<strong>UNIX</strong> <strong>agent</strong>.<br />

1. Create a new <strong>UNIX</strong>/<strong>Linux</strong> Agent configuration on the core's console from the Agent<br />

configuration tool. When making a <strong>Linux</strong> <strong>agent</strong> configuration, make sure the 64-bit <strong>agent</strong><br />

check box is selected or else you will install the 32-bit <strong>agent</strong>. Also note: do not use the Default<br />

HP-UX or Default <strong>Linux</strong> configuration unless you want to install the 32-bit <strong>agent</strong>.<br />

2. Make sure you have the root passwords defined for the scheduler service. This can be done by<br />

clicking the Configure > Services menu option, then clicking the Scheduler tab and the<br />

Change login button. You can then add the root passwords so the scheduler service has<br />

access to Unix/<strong>Linux</strong> to install the <strong>agent</strong>.<br />

3. Use the Unmanaged device discovery tool to discover the Unix/<strong>Linux</strong> systems, then drag<br />

and drop them on the appropriate <strong>agent</strong> configuration.<br />

4. Right-click on the scheduled task and select Run now. The <strong>agent</strong> will be deployed.<br />

5. If you are deploying the <strong>agent</strong> on Red Hat 5 <strong>Linux</strong> Server and have the 32-bit <strong>agent</strong> installed,<br />

you must remove the 32-bit <strong>agent</strong> first. Just copy the ./linuxuninstall.tar.gz tarball to your<br />

temporary install directory on the client or flash drive. Once on the client machine, untar the<br />

linuxuninstall.tar.gz with the "tar zxvf linuxunistall.tar.gz" command, then run the install with<br />

the "./linuxuninstall.sh" command.<br />

Release notes: <strong>Linux</strong>/<strong>UNIX</strong> <strong>MAP</strong> <strong>agent</strong> <strong>9.0</strong> <strong>SP2</strong> 19 November 2010 page 5<br />

Copyright © 2010 <strong>LANDesk</strong> Software, Inc. and its affiliates. All rights reserved.


Manual Client Installation<br />

1. On the core server console, open the <strong>agent</strong> configuration tool and create a new <strong>agent</strong><br />

configuration for <strong>Linux</strong>/Solaris/HP-UX. On <strong>Linux</strong>, make sure the 64-bit <strong>agent</strong> check box is<br />

selected. Remember the name of the <strong>agent</strong> configuration you created, because it is used in<br />

the name of the master install script in the C:\Program<br />

Files\<strong>LANDesk</strong>\ManagementSuite\ldlogon directory with .sh appended to the end of it. (For<br />

example, if you create an HP <strong>agent</strong> configuration named "HP64bit" the master install script in<br />

the ldlogon directory on the core will be named "HP64bit.sh").<br />

2. Copy the master install script down to the client in a temporary directory like /tmp/install or to<br />

a flash drive.<br />

3. Copy the core certificate from the ldlogon directory on the core to your temp install directory<br />

on your client or to your flash drive. The core certificate is a 9 digit .0 file (such as<br />

932123948.0); it is the only .0 file in the ldlogon directory on the core.<br />

4. From the C:\Program Files\<strong>LANDesk</strong>\ManagementSuite\ldlogon\unix\ folder (where<br />

is either linux, solaris, or hpux), copy baseclient64.tar.gz and vulscan64.tar.gz to<br />

your temporary install directory on your client or to your flash drive. Make sure you copy the<br />

correct tar balls for the appropriate client.<br />

5. If you are deploying the <strong>agent</strong> on Red Hat 5 <strong>Linux</strong> Server and have the 32-bit <strong>agent</strong> installed,<br />

you must remove the 32-bit <strong>agent</strong> first. Just copy the ./linuxuninstall.tar.gz tarball to your<br />

temporary install directory on the client or flash drive. Once on the client machine, untar the<br />

linuxuninstall.tar.gz with the "tar zxvf linuxunistall.tar.gz" command, then run the install with<br />

the "./linuxuninstall.sh" command.<br />

6. Once all these files are copied to the client or the flash drive is plugged into the client, from<br />

the shell, change directory to the your install directory and do the following:<br />

chmod +x master-install-script.sh<br />

master install script)<br />

(where master-install-script.sh is the name of your<br />

./master-install-script.sh<br />

This will install your client for you. A few minutes after installation the core will receive an inventory<br />

and vulnerability scan from the client, if the core is reachable from the client.<br />

Known Issues<br />

<br />

<br />

<br />

Do not use the master install scripts or deploy <strong>agent</strong>s from the Default HP-UX Agent or Default<br />

<strong>Linux</strong> Agent Configuration if you're intending to install the 64-bit <strong>agent</strong>. These will install the<br />

32-bit <strong>agent</strong> only.<br />

CR00052389: PXE holding queue node appears in the Solaris Inventory which is not relevant<br />

to the 64-bit Solaris <strong>agent</strong>.<br />

CR00052382: (HPUX) When pushing a latest build HP-UX <strong>agent</strong> to a HP-UX box with an older<br />

build, some older components are not removed before the installation. Workaround is to<br />

completely remove the HP-UX <strong>agent</strong> before re-installing. This can be accomplished with the<br />

following commands in the following order: swremove vulscan; swremove ldiscan;, swremove<br />

cba8; swremove lddeppkg; rm -rf /opt/landesk; rm -rf /usr/<strong>LANDesk</strong>; rm /var/run/map-*. If<br />

you have to remove the old 32-bit <strong>agent</strong>, use the following commands from a shell: swremove<br />

vulscan; swremove ldiscan;, swremove cba8; swremove pds2; rm -rf /usr/<strong>LANDesk</strong>;<br />

CR00052308: (<strong>Linux</strong>) No failure message is displayed when the user executes "ldiscan -o<br />

non-existent path".<br />

<br />

CR00052460: Agent deployment fails on client but status on core says it succeeds. This<br />

happens only when deploying the <strong>agent</strong> from the core where one or more of the involved files<br />

systems that are used in the <strong>agent</strong> install are full (such as /, /tmp, /opt).<br />

Release notes: <strong>Linux</strong>/<strong>UNIX</strong> <strong>MAP</strong> <strong>agent</strong> <strong>9.0</strong> <strong>SP2</strong> 19 November 2010 page 6<br />

Copyright © 2010 <strong>LANDesk</strong> Software, Inc. and its affiliates. All rights reserved.


CR00052593: Cannot upgrade from a 32-bit <strong>Linux</strong> <strong>agent</strong> to the 64-bit <strong>MAP</strong> <strong>agent</strong> on Red Hat<br />

Enterprise Server 5 x86_64. The workaround is to include a copy of the linuxunistall.sh from<br />

the tar ball which exists on the core c:\Program<br />

Files\<strong>LANDesk</strong>\Managementsuite\linuxunistall.tar.gz to the client and remove the 32-bit <strong>agent</strong>.<br />

CR00052598 Cannot remove vulscan by deploying a new <strong>agent</strong> config over itself. You must<br />

remove the <strong>agent</strong> manually then re-deploy.<br />

Legal notices<br />

Copyright © 2010, <strong>LANDesk</strong> Software, Inc. and its affiliates. All rights reserved. <strong>LANDesk</strong> and its logos<br />

are registered trademarks or trademarks of <strong>LANDesk</strong> Software, Inc. and its affiliates in the United<br />

States and/or other countries. Other brands and names may be claimed as the property of others.<br />

<strong>LANDesk</strong> does not warrant that this document is error free and retains the right to make changes to<br />

this document or related product specifications and descriptions at any time without notice. <strong>LANDesk</strong><br />

does not assume any obligation to update the information contained herein. This document is provided<br />

“AS IS” and without any guaranty, warranty, or license, express or implied, including but not limited<br />

to: fitness for a particular purpose, merchantability, non infringement of intellectual property, or other<br />

rights of any third party. Any <strong>LANDesk</strong> products referenced in this document are not intended for use<br />

in medical, life saving, or life sustaining applications. Third parties may have intellectual property<br />

rights relevant to this document and the technologies discussed herein.<br />

Release notes: <strong>Linux</strong>/<strong>UNIX</strong> <strong>MAP</strong> <strong>agent</strong> <strong>9.0</strong> <strong>SP2</strong> 19 November 2010 page 7<br />

Copyright © 2010 <strong>LANDesk</strong> Software, Inc. and its affiliates. All rights reserved.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!