cellinfo
/
puppet-root
Archived
2
0
Fork 0
This repository has been archived on 2020-11-04. You can view files and clone it, but cannot push or open issues or pull requests.
puppet-root/README.md

3.1 KiB
Raw Permalink Blame History

root

Table of Contents

  1. Overview
  2. Setup - The basics of getting started with root
  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.

Overview

This "root" module simply define few preferences for the root user.

Setup

What root affects

  • Root's configuration files (/root/.profile, /root/.bashrc,…).
  • Root's mail can be forward to other addresses.

Beginning with root

To begin using root module with default parameter, declare the class with include root.

Usage

Exec ZSH for some clients

To autoload ZSH as "default" shell, you can pass a regex to the IP_ZSH argument. Then for every new connection, the .profile file will compare the $SSH_CLIENT variable environnment with this regex:

class { 'root':
  ip_zsh => "(10.10.10.1|192.168.0.42)",
}

Other default shell

Bash is the default shell use on Debian, if you prefer an advanced shell or didn't have Bash, you can define the DEFAULT_SHELL_PATH argument:

class { 'root':
  default_shell_path => '/bin/zsh',
}

Then, every connection from 10.10.10.1 or 192.168.0.42 will automatically have ZSH as default shell.

Forward mail

Root's mail can be forward to other addresses. You can specify thoses addresses with the ADDRESS_TO_FORWARD argument:

class { 'root':
  address_to_forward => 'username@domain.org,firstname.lastname@other-domain.org',
}

Reference

Classes

  • root: Main class, automatically load all needed privates classes.

Parameters

  • profile_path: Path to the .profile to load personal initialization. Must be a absolut path, defaults to '/root/.profile'.
  • profile_content: Template file used to generate the previous configuration file. Must be a string ending with .erb, defaults to 'root/preferences/profile.erb'.
  • bashrc_path: Path to the Bash's rcfile. Must be a absolut path, defaults to '/root/.bashrc'.
  • bashrc_content: Template file used to generate the previous configuration file. Must be a string ending with .erb, default to 'root/preferences/bashrc.erb'.
  • forward_path: Path to the forward file. Must be a absolut path, defaults to '/root/.forward'.
  • forward_content: Template file used to generate the previous configuration file. Must be a string ending with .erb, default to 'root/preferences/forward.erb'.
  • address_to_forward: List of addresses that must receive root's mails. Must be a string, default to ''.
  • default_shell_path: Path to a bin file to use as default shell for root. Must be a absolut path, defaults to '/bin/bash'.
  • ip_zsh: A regex to determine if a ssh client should have ZSH as default shell. Defaults to '127.0.0.1'.

Limitations

This module was only tested on Debian 7.x and 8.x but should work quite few Debian's fork.