tag | 03235a7f026fa8560d5a5c3419bf4b41f16f80c7 | |
---|---|---|
tagger | Garrett Honeycutt <code@garretthoneycutt.com> | Sat Aug 09 11:44:42 2014 -0400 |
object | 2210c9c622bfc9e5ebb889864164404c40fea88f |
v3.17.0
commit | 2210c9c622bfc9e5ebb889864164404c40fea88f | [log] [tgz] |
---|---|---|
author | Garrett Honeycutt <code@garretthoneycutt.com> | Sat Aug 09 11:43:50 2014 -0400 |
committer | Garrett Honeycutt <code@garretthoneycutt.com> | Sat Aug 09 11:43:50 2014 -0400 |
tree | 59b93cbdf791739344a6fc481e8ab40fefe49a20 | |
parent | 7dc420ef12aa15fe0bb78bdb59c349d27498332a [diff] |
Release v3.17.0 - deep merge for sshd_config deny/allow users
Manage ssh client and server.
The module uses exported resources to manage ssh keys and removes ssh keys that are not managed by puppet. This behavior is managed by the parameters ssh_key_ensure and purge_keys.
===
This module has been tested to work on the following systems with Puppet v3 and Ruby versions 1.8.7, 1.9.3 and 2.0.0.
===
A value of 'USE_DEFAULTS'
will use the defaults specified by the module.
Boolean to merges all found instances of ssh::keys in Hiera. This is useful for specifying SSH keys at different levels of the hierarchy and having them all included in the catalog.
This will default to ‘true’ in future versions.
HashKnownHosts in ssh_config. Indicates that ssh should hash host names and addresses when they are added to ~/.ssh/known_hosts. These hashed names may be used normally by ssh and sshd, but they do not reveal identifying information should the file's contents be disclosed. The default is ‘no’ on Linux.
Note that existing names and addresses in known hosts files will not be converted automatically, but may be manually hashed using ssh-keygen. Use of this option may break facilities such as tab-completion that rely on being able to read unhashed host names from ~/.ssh/known_hosts.
Path to ssh_config.
ssh_config's owner.
ssh_config's group.
ssh_config's mode.
ForwardX11 option in ssh_config. Not set by default.
ForwardAgent option in ssh_config. Not set by default.
ServerAliveInterval option in ssh_config. Not set by default.
Boolean to set ‘SendEnv XMODIFIERS’ in ssh_config. This option is only valid on Linux.
Array of ciphers to be used with the Ciphers option in ssh_config.
Array of ciphers to be used with the MACs option in ssh_config.
Boolean to enable SendEnv options for specifying environment variables. Default is set to true on Linux.
Path to sshd_config.
sshd_config's owner.
sshd_config's group.
LogLevel option in sshd_config. Acceptable values are QUIET, FATAL, ERROR, INFO, VERBOSE.
DEBUG, DEBUG1, DEBUG2, and DEBUG3 are permitted values for sshd, however setting the logging level to DEBUG or higher violates the privacy of users and should not be done unless manually debugging.
sshd_config's mode. The default is ‘0600’ on Linux and ‘0644’ on Solaris.
String to specify listen port for sshd. Port option in sshd_config.
SyslogFacility option in sshd_config.
LoginGraceTime option in sshd_config.
ChallengeResponseAuthentication option in sshd_config.
PrintMotd option in sshd_config.
UseDNS option in sshd_config. The default is ‘yes’ on Linux.
Specify location of authorized_keys file. Default is to not specify.
Specifies whether sshd should check file modes and ownership of the user's files and home directory before accepting login. Valid values are yes and no.
Defines the number of bits in the ephemeral protocol version 1 server key. The minimum value is 512, and the default is 1024 except for Solaris default value is 768.
Banner option in sshd_config.
content parameter for file specified in sshd_config_banner
owner parameter for file specified in sshd_config_banner
group parameter for file specified in sshd_config_banner
mode parameter for file specified in sshd_config_banner
XAuthLocation option in sshd_config.
Path to sftp file transfer subsystem in sshd_config.
PasswordAuthentication in sshd_config. Specifies whether password authentication is allowed.
AllowTcpForwarding in sshd_config. Specifies whether TCP forwarding is permitted.
X11Forwarding in sshd_config. Specifies whether X11 forwarding is permitted.
UsePam in sshd_config. Enables the Pluggable Authentication Module interface. If set to ‘yes’ this will enable PAM authentication using ChallengeResponseAuthentication and PasswordAuthentication in addition to PAM account and session module processing for all authentication types. This module sets this option to ‘yes’ on Linux and undef on Solaris.
ClientAliveInterval in sshd_config. Sets a timeout interval in seconds after which if no data has been received from the client, sshd(8) will send a message through the encrypted channel to request a response from the client. The default is 0, indicating that these messages will not be sent to the client. This option applies to protocol version 2 only.
ClientAliveCountMax in sshd_config. Sets the number of client alive messages (see below) which may be sent without sshd(8) receiving any messages back from the client. If this threshold is reached while client alive messages are being sent, sshd will disconnect the client, terminating the session. It is important to note that the use of client alive messages is very different from TCPKeepAlive (below). The client alive messages are sent through the encrypted channel and therefore will not be spoofable. The TCP keepalive option enabled by TCPKeepAlive is spoofable. The client alive mechanism is valuable when the client or server depend on knowing when a connection has become inactive. The default value is 3. If ClientAliveInterval (see below) is set to 15, and ClientAliveCountMax is left at the default, unresponsive SSH clients will be disconnected after approximately 45 seconds. This option applies to protocol version 2 only.
Array of ciphers for the Ciphers setting in sshd_config.
Array of macs for the MACs setting in sshd_config.
Array of users for the DenyUsers setting in sshd_config.
Array of groups for the DenyGroups setting in sshd_config.
Array of users for the AllowGroups setting in sshd_config.
Array of users for the AllowUsers setting in sshd_config.
Hash of keys for user's ~/.ssh/authorized_keys
Array of package names used for installation.
Allow root login. Valid values are ‘yes’, ‘without-password’, ‘forced-commands-only’, and ‘no’.
ForwardX11Trusted. Determine remote X11 client access to the original X11 display. The option is set to ‘yes’ on Linux. Valid values are ‘yes’, ‘no’, and undef.
Source to SSH packages.
Path to admin file for SSH packages.
GSSAPIAuthentication: Enables/disables GSS-API user authentication. Valid values are ‘yes’ and ‘no’.
GSSAPIKeyExchange: Enables/disables GSS-API-authenticated key exchanges. Valid values are ‘yes’, ‘no’, and undef.
PAMAuthenticationViaKBDInt: Use PAM via keyboard interactive method for authentication. Valid values are ‘yes’, ‘no’, and undef.
GSSAPICleanupCredentials: Specifies whether to automatically destroy the user's credentials on logout. Default is ‘yes’ on Linux. Valid values are ‘yes’, ‘no’, and undef.
Boolean to enable AcceptEnv options for specifying environment variables. Default is set to true on Linux.
Remove keys not managed by puppet.
Open firewall for SSH service. Not used on Solaris.
Ensure SSH service is running. Valid values are ‘stopped’ and ‘running’.
Name of the SSH service.
Start SSH at boot. Valid values are ‘true’, ‘false’ and ‘manual’.
Specify that the init script has a restart command. Valid values are ‘true’ and ‘false’.
Boolean to declare whether the service's init script has a functional status command.
Export node SSH key. Valid values are ‘present’ and ‘absent’.
Import all exported node SSH keys. Valid values are ‘true’ and ‘false’.
Encryption type for SSH key. Valid values are ‘rsa’, ‘dsa’, ‘ssh-dss’ and ‘ssh-rsa’
Manage SSH config of root. Valid values are ‘true’ and ‘false’.
Content of root's ~/.ssh/config.
===
This works by passing the ssh::keys hash to the ssh_authorized_keys type with create_resources(). Because of this, you may specify any valid parameter for ssh_authorized_key. See the Type Reference for a complete list.
Push authorized key “root_for_userX” and remove key “root_for_userY” through Hiera.