Puppet controls are Puppet defined types that ensure a certain security control is implemented. Puppet changes the system in order to make the system compliant.

Description of the control

The db2rshcmd registry varible specifies the remote shell command to use when starting remote database partitions and with the db2_all script to run utilities and commands on all database partitions. It is recommended that a value be used which encrypts the data sent between partitions, such as ssh.


The traditional rsh command sends all its data, including passwords, in plaintext between partitions. An attacker who can read network traffic may have access to these passwords and other data. Specifying a remote shell command, such as ssh encrypts the data sent over the network.


To deliberately skip this control (e.g. meaning don’t use Puppet to enforce this setting), we provide you with two ways:

1) Add db2_secured::controls::specify_secure_remote_shell_command: skip to your hiera data. This will skip this control for ALL systems.
3) Add an entry with the content specify_secure_remote_shell_command to the array value db2_secured::skip_list in your hiera data.


This control is used in the following benchmarks:


Attribute Name Short Description
title The database identifier to apply the control to.


The database identifier to apply the control to.

All controls need an database identifier to apply the control to. Here is a simple example:

db2_secured::controls::control_name { 'db2inst1/MYDB':}

In this example, the string dbinst1 is the instance, the string MYDB is the database to apply the control to.

Back to overview of controls::specify_secure_remote_shell_command