Chat now with support
Chat with Support

Safeguard for Sudo 2.0 - Administrators Guide

One Identity Privileged Access Suite for Unix Introducing Privilege Manager for Unix Introducing Privilege Manager for Sudo Planning Deployment Installation and Configuration
Download Privilege Manager for Unix Software Packages Download Privilege Manager for Sudo Software Packages Quick Start and Evaluation Configure a Primary Policy Server Configure a Secondary Policy Server Install PM Agent or Sudo Plugin on a Remote Host Remove Configurations
Upgrading Privilege Manager System Administration Managing Security Policy The Privilege Manager for Unix Security Policy Advanced Privilege Manager for Unix Configuration Administering Log and Keystroke Files InTrust Plug-in for Privilege Manager Troubleshooting Privilege Manager for Unix Policy File Components Privilege Manager Variables Privilege Manager for Unix Flow Control Statements Privilege Manager for Unix Built-in Functions and Procedures Privilege Manager Programs Installation Packages Unsupported Sudo Options Sudo Plugin Policy Evaluation About us

Security Policy Types

Managing Security Policy > Security Policy Types

The security policy lies at the heart of Privilege Manager for Unix and Privilege Manager for Sudo. Privilege Manager guards access to privileged functions on your systems according to rules specified in the security policy. It stipulates which users may access which commands with escalated privileges.

Privilege Manager supports two security policy types (or modes):

  • sudo policy typePrivilege Manager for Sudo uses a standard sudoers file as its security policy; that is, the sudo policy is defined by the sudoers file which contains a list of rules that control the behavior of sudo. The sudo command allows users to get elevated access to commands even if they do not have root access.

    NOTE: Privilege Manager uses the sudo policy type by default. The sudo policy type is only supported with the One IdentityPrivilege Manager for Sudo product. Joining a Sudo Plugin host to a Privilege Manager Policy Server is not a supported configuration.

  • pmpolicy typePrivilege Manager for Unix uses an advanced security policy which employs a high-level scripting language to specify access to commands based on a wide variety of constraints. Privilege Manager policy is defined in pm.conf, the default policy configuration file which contains statements and declarations in a language specifically designed to express policies concerning the use of root and other controlled accounts.

    NOTE: The pmpolicy type is the "legacy" security policy that was used in Privilege Manager for Unix, prior to version 6.0. The pmpolicy type is only supported with the Privilege Manager for Unix product. Joining a PM Agent host to a sudo policy server is not a supported configuration.

NOTE: Management Console for Unix gives you the ability to centrally manage policy located on the primary policy server. You view and edit both pmpolicy and sudo policy from the Policy tab on the mangement console.

By default, the policy server configuration tool (pmsrvconfig) uses the sudo policy type on new installations; if you want to run Privilege Manager for Unix using the pmpolicy type you must specify that explicitly when using the policy server configuration script.

NOTE: The pmsrvconfigPrivilege Manager program is used by both Privilege Manager for Unix and Privilege Manager for Sudo. Run pmsrvconfig -m sudo or pmsrvconfig -m pmpolicy to specify the policy type. (See pmsrvconfig for more information about the pmsrvconfig command options.)

The default behavior for setting up the initial policy depends on which type of policy you are using. If you configure Privilege Manager for Sudo using the default sudo policy type, pmsrvconfig uses a copy of the /etc/sudoers file as its initial security policy if the file exists, otherwise it creates a generic sudoers file.

NOTE: When you join a Sudo Plugin to a policy server, Privilege Manager for Sudo adds the following lines to the current local sudoers file, generally found in /etc/sudoers.

## 
## WARNING: Sudoers rules are being managed by QPM4Sudo 
## WARNING: Do not edit this file, it is no longer used.
## 
## Run "/opt/quest/sbin/pmpolicy edit" to edit the actual sudoers rules. 
##

When you unjoin the Sudo Plugin, Privilege Manager for Sudo removes those lines from the local sudoers file.

If you configure Privilege Manager for Unix using the pmpolicy type, pmsrvconfig creates a profile-based policy. This security policy simplifies setup and maintenance through use of easy-to-manage profile templates. (See Pmpolicy Type Policy for more information about profile-based policy.)

NOTE: Use the pmsrvconfig -f <path> command to override the default and import the initial security policy from the specified location. When using the sudo policy type, you can only use the -f option to import a file; you can not import a directory.

Privilege Manager uses a version control system to manage and maintain the security policy. This allows auditors and system administrators to track changes that have been made to the policy and also allows a single policy to be shared and distributed among several policy servers. The "master" copy of the security policy and all version information is kept in a repository on the primary policy server.

You manage the security policy using the pmpolicy command and a number of pmpolicy subcommands. It is important that you only make changes to the policy using the pmpolicy command. Using pmpolicy ensures that the policy is updated in the repository and across all policy servers in the policy group. You can run the pmpolicy command from any policy server in the policy group.

NOTE: Do not edit the security policy on a policy server directly. Changes made using vi (when using the pmpolicy type) or visudo (when using the sudo policy type) will eventually be overwritten by the version control system.

The primary policy server uses a local service account, pmpolicy, to own and manage the security policy repository. The pmpolicy service account is set when you configure the primary policy server. At that time you assign the pmpolicy service account a password and set its home directory to /var/opt/quest/qpm4u/pmpolicy. This password is also called the "Join" password because you use it when you add secondary policy servers or join remote hosts to this policy group.

You can manually create the pmpolicy user prior to running the pmsrvconfig script, but if the user account does not exist, the script creates the user and asks you for a password.

When you run the pmsrvconfig command, it attempts to initialize the security policy by reusing an existing policy file on this host. If a security policy does not exist, it generates a default policy.

Specifying Security Policy Type

Managing Security Policy > Specifying Security Policy Type

To specify the security policy type

  1. To specify the sudo policy type, run:
    # pmsrvconfig -m sudo
  2. To specify the pmpolicy type, run:
    # pmsrvconfig -m pmpolicy

See pmsrvconfig for more information about the pmsrvconfig command options.

The Sudo Type Policy

Managing Security Policy > The Sudo Type Policy

A sudo type policy is used with the Privilege Manager for Sudo product. When you configure the primary policy server, if /etc/sudoers exists, it imports this file and uses it as the initial sudoers policy file. Otherwise, it creates a generic sudoers file.

By default, the Privilege Manager for Sudo sudoers file resides in /etc/opt/quest/qpm4u/policy/sudoers, but is not meant to be accessed directly.

Sudo type policy entries look like this:

root ALL = (ALL) ALL 
%wheel ALL = (ALL) ALL

These entries will let root or any user in the wheel group run any command on any host as any user.

See Editing the Policy Interactively for details.

Pmpolicy Type Policy

Managing Security Policy > Pmpolicy Type Policy

The Privilege Manager for Unix product uses a specialized policy (pmpolicy type policy), which allows for a more advanced security policy than is possible with the sudo policy type. The pmpolicy type uses a powerful scripting language to evaluate whether pmmasterd should allow requests based on a wide variety of criteria of what, where, when, and how users should be permitted to perform various privileged account actions.

By default, the main pmpolicy file is located in /etc/opt/quest/qpm4u/policy/pm.conf, but is not meant to be accessed directly.

pmpolicy type policy code looks like this:

if (user == "root" || "wheel" in getgroups(user)) { 
   runuser = requestuser; 
   accept; 
}

The above pmpolicy type code segment accepts requests from root or any user in the wheel group to run any command as any user.

Related Documents