Forge Home


spiped tunnel creator


5,791 latest version

5.0 quality score

We run a couple of automated
scans to help you access a
module's quality. Each module is
given a score based on how well
the author has formatted their
code and documentation and
modules are also checked for
malware using VirusTotal.

Please note, the information below
is for guidance only and neither of
these methods should be considered
an endorsement by Puppet.

Version information

  • 2.0.0 (latest)
released Jun 17th 2019
This version is compatible with:
  • Puppet Enterprise 2019.8.x, 2019.7.x, 2019.5.x, 2019.4.x, 2019.3.x, 2019.2.x, 2019.1.x, 2019.0.x, 2018.1.x
  • Puppet >= 5.5.8 < 7.0.0
  • , , ,

Start using this module

  • r10k or Code Manager
  • Bolt
  • Manual installation
  • Direct download

Add this module to your Puppetfile:

mod 'puppet-spiped', '2.0.0'
Learn more about managing modules with a Puppetfile

Add this module to your Bolt project:

bolt module add puppet-spiped
Learn more about using this module with an existing project

Manually install this module globally with Puppet module tool:

puppet module install puppet-spiped --version 2.0.0

Direct download is not typically how you would use a Puppet module to manage your infrastructure, but you may want to download the module in order to inspect the code.



puppet/spiped — version 2.0.0 Jun 17th 2019


License Build Status Puppet Forge Puppet Forge - downloads Puppet Forge - scores

Table of Contents

  1. Overview
  2. Setup - The basics of getting started with spiped
  3. Usage - Configuration options and additional functionality
  4. Limitations - OS compatibility, etc.
  5. Development - Guide for contributing to the module


This puppet module is used for configuring spiped tunnels. It supports recent Debian and RedHat family OSes using Puppet 5 or greater.


Debian family systems

Supported Debian and Ubuntu OSes provide suitable spiped packages and no additional setup is required.

RedHat systems

This module can also work with RedHat systems, but you are responsible for providing the spiped package.

Either use the package_source parameter, or make sure your system has a repository setup that includes the spiped package.


class { 'spiped':
  package_source => '/path/to/spiped.rpm',


yumrepo { 'spiped':
  baseurl => '',
  descr   => 'Internal spiped package repo',
  enabled => true,
  before  => Class['spiped'],


For example, let's say we have a host redis-host which hosts a Redis database. Many clients will connect to it.

On redis-host, we would define a server tunnel:

spiped::tunnel::server { 'redis':
  source_host        => '',
  source_port        => 1234,
  target_socket_file => '/var/run/redis.sock',
  secret             => 'hunter2', # You should use a much stronger/longer secret!

On clients, we would define a client tunnel:

spiped::tunnel::client { 'redis':
  source_socket_file => '/var/run/redis.sock',
  target_host        => 'redis-host'
  target_port        => 1234,
  secret             => 'hunter2', # You should use a much stronger/longer secret!

The secret is an arbitrarily-long shared symmetric key. For full strength security, the key should contain 256 or more bits of entropy.

Reference documentation is available in


  • Only systemd based OSes are supported.
  • Not all spiped options are currently configurable with this module.


This module was migrated from ckuehl/spiped to Vox Pupuli

We highly welcome new contributions to this module, especially those that include documentation, and rspec tests ;) but will happily guide you through the process, so, yes, please submit that pull request!

Reference documentation is generated using puppet-strings. To regenerate it, please run the rake task as follows.

bundle exec rake reference