Tested with Travis CI

Table of Contents

  1. Description

  2. Setup - The basics of getting started with rngd

  3. Usage - Configuration options and additional functionality

  4. Reference - An under-the-hood peek at what the module is doing and how

  5. Limitations - OS compatibility, etc.

  6. Development - Guide for contributing to the module


This module manages rngd.

The module basically makes sure the rngd daemon is installed and started, that's pretty much it. The rngd daemon does a good job at working out where the source of hardware entropy is so there's little configuration required.

RHEL/CentOS, Ubuntu and Debian are supported using Puppet 4.4.0 or later.


Beginning with rngd

In the very simplest case, you can just include the following:

include ::rngd


For example to configure rngd to use /dev/urandom for random number input:

class { '::rngd':
  hwrng_device => '/dev/urandom',

If you want to use something else to manage the rngd daemon, you can do:

class { '::rngd':
  service_manage => false,


The reference documentation is generated with puppet-strings and the latest version of the documentation is hosted at bodgit.github.io/puppet-rngd/.


This module has been built on and tested against Puppet 4.4.0 and higher.

The module has been tested on:

  • RedHat Enterprise Linux 5/6/7

  • Ubuntu 12.04/14.04/16.04

  • Debian 6/7/8/9


The module has both rspec-puppet and beaker-rspec tests. Run them with:

$ bundle exec rake test
$ PUPPET_INSTALL_TYPE=agent PUPPET_INSTALL_VERSION=x.y.z bundle exec rake beaker:<nodeset>

Please log issues or pull requests at github.