2.5. SIMP Community Edition (CE) 6.2.0-0¶
Contents
This release is known to work with:
- RHEL 6.9 x86_64
- RHEL 7.4 x86_64
- CentOS 6.9 x86_64
- CentOS 7.0 1708 x86_64
Note
SIMP CE is expected to migrate to Puppet 5 on, or before, October 30 2018. We have not noticed any issues with the latest versions of Puppet 5 but it is taking time to get all of our tests updated to work with Puppet 5 for full coverage.
At this point, all vendor support for Puppet 4 will be discontinued as will SIMP CE support for Puppet prior to 4.10.4.
SIMP CE will no longer provide any support for Puppet 4 after June 30 2019.
2.5.1. Breaking Changes¶
Warning
This release of SIMP CE is NOT backwards compatible with the 4.X and 5.X releases. Direct upgrades will not work!
At this point, do not expect any of our code moving forward to work with Puppet 3.
If you find any issues, please file bugs!
2.5.2. Significant Updates¶
Warning
Due to various issues with earlier releases of Puppet, SIMP CE will now be shipping with, and supporting, puppet 4.10.4+.
It is strongly recommended that users upgrade their system as soon as they are able.
Note
SIMP will begin supporting Hiera v5 out of the box as of SIMP 6.3. This is mainly to facilitate compliance enforcement in the infrastructure since various versions of Puppet 4 do not work properly with Hiera v3 and enforcement.
No changes will be made to existing configurations but compliance
enforcement from the compliance_markup module will not work until an
upgrade to Hiera v5 is complete.
- UEFI systems should now be fully supported. Please note that you may need to
adjust your
tftpbootsettings to handle your specific UEFI system since they are not as universal as the legacy BIOS entries. - Many module updates simply added support for Puppet 5 and Oracle Enterprise Linux. These changes will not be listed individually below.
- Likewise, many modules were updated simply to improve tests. These improvements will also not be noted below.
- The
simp_gitlabmodule no longer supports EL6. This is due to integration issues with GitLab that cannot be readily fixed by the module maintenance team, alone. The EL community had shown no interest in fixing minor issues with EL6 in the GitLab platform.
2.5.4. RPM Updates¶
- Added the
tomlrubygem as an RPM for use with theelasticsearchmodules. - Updated to the latest
5.Xrelease of Elasticsearch and Logstash - Updated the ClamAV packages to 0.100.0-2
- Removed clamav-data-empty which is no longer used
2.5.5. Removed Modules¶
2.5.5.1. pupmod-simp-mcollective and pupmod-simp-activemq¶
- Puppetlabs no longer supports MCollective, so SIMP has removed the
pupmod-simp-mcollectiveandpupmod-simp-activemqmodules that support MCollective.
2.5.5.2. pupmod-simp-jenkins¶
- The
jenkinsmodule has not been updated in quite some time and it is unknown if it works with current versions of Jenkins since the team has moved to GitLab CI.
2.5.5.3. pupmod-simp-mcafee¶
- This module has not been updated and probably does not work with the latest McAfee products so it has been removed from the distribution.
2.5.5.4. pupmod-puppetlabs-java_ks¶
- This RPM has been removed, as it is no longer a dependency of any SIMP modules.
2.5.6. Security Updates¶
- The PKI certificates in
/etc/pki/simp_appsare now purged by default so that unmanaged certificates are not available if the system is repurposed.
2.5.7. Fixed Bugs¶
2.5.7.1. pupmod-simp-aide¶
- Added /etc/logrotate.simp.d to default rules.
- Ensure that the
packageinstall comes before dependentexecstatements. - Allow the
croncommand to be customized.
2.5.7.2. pupmod-simp-compliance_markup¶
- Fixed several incorrectly typed parameters
- Consolidated several duplicate entries
- Added missing
IPT:message start tosimp_rsyslog::default_logs - Synchronized CentOS and RHEL STIG settings
2.5.7.3. pupmod-simp-incron¶
- Fixed the permissions on the
incrondservice insystemdto remove logged errors. - Matched RPM permissions based on STIG requirements.
2.5.7.4. pupmod-simp-iptables¶
- Updated to match the
ignoreparameter on input and output interfaces - Fixed
scanblockrule ordering to properly ban all hosts that are blocked by the rules. - Fixed some issues in the chain retention and optimization code that would
cause
iptablesto fail to reload in some cases. - Fixed compilation failures if
protowas specified in thedefaultssection of the options Hash. - Fixed an issue where a
jumptarget went to an empty ruleset and the chain was dropped. - Retained all native IPTables
jumppoints by default. - Added a deep rule comparison on rulesets that are identical based on simple checks.
- Remediated potential memory leaks.
- Fixed ordering issues when used with
firewalld. - Matched RPM permissions based on STIG requirements.
2.5.7.5. pupmod-simp-libvirt¶
- Ensure idempotency by working around the fact that the modprobe changes - to _.
2.5.7.6. pupmod-simp-named¶
- Properly override the
systemdservice file fornamed-chrootinstead of modifying the vendor provided service file.
2.5.7.7. pupmod-simp-ntpd¶
- Fixed a bug where
ntpd::ntpd_optionswas not applied tontpd::serverswhenntpd::serversis anArray
2.5.7.8. pupmod-simp-pam¶
- Change the minimum allowed UID to the one defined in
/etc/login.defsby default, or1000if nothing else is defined. - Replace the removal of
authconfigandauthconfig-tuiwith the use of aauthconfigno-op script, so that tools usingauthconfigdo not break.
2.5.7.9. pupmod-simp-postfix¶
- Added changes to support the settings required by the STIGs.
- Match the RPM supplied file permissions are required by the STIG.
2.5.7.10. pupmod-simp-pupmod¶
- Allow modification of the
allowanddenyrules for supportedkeydistauth rules. - Removed obsolete
mcollectiveauth rules. - Changed
$pki_cacerts_all’s auth rule from*tocertname. - Modified the default
max_active_instancesconfiguration to be safer by default. - Make the Puppet Server service name dynamic to work properly with both PE and FOSS Puppet.
- Properly disable the
puppetservice if running in cron mode. This was not disabled before and could contribute to a “thundering herd” issue. - Fixed the Java
tmpdirpath for thepuppetserverwhich allows runs on systems that have been pre-hardened.
2.5.7.11. pupmod-simp-rsync¶
- Force
concatordering to benumericdue to a bug inpuppetlabs-concatthat reverses the order from the native type provided by the same module.
2.5.7.12. pupmod-simp-rsyslog¶
- Use double quotes to allow evaluation of line returns in strings.
- Added a
systemdservice override that fixes an ordering problem with older versions ofrsyslog. - Fixed bug that did not allow a TLS encrypted server to be configured to forward to a follow-on unencrypted rsyslog server.
- Fixed a bug where removing
rsyslog::rulestatements from the catalog would not cause thersyslogservice to restart. - Clarified documentation around adding files to
/etc/rsyslog.d.
2.5.7.13. pupmod-simp-selinux¶
$selinux::ensurenow defaults toenforcingand it used across the board instead of$simp_options::selinuxwhich never behaved as designed.
2.5.7.14. pupmod-simp-simp¶
- Fixed a bug where if the
puppet_settingsfact did not exist, users in theadministratorsgroup couldrm -rfany path. - Fixed the certificate cleaning
sudorule to point to$facts['puppet_settings']['main']['ssldir']. - Ensure that
prelinkis fully disabled when the system is inFIPSmode since the two are incompatible. - Defined a
portreserveservice so that there would no longer be any service restart flapping. - Fixed the permissions on the
ctrl-alt-del-captureservice file so that warnings would no longer be logged. - Replace the deprecated
runpuppetscript with client Puppet bootstrap scripts which will not be inappropriately killed bysystemd, when executed in highly-loaded environments. These scripts allow thesystemdtimeout to be specified and provide better error handling and logging. - On systems with
systemd, set the host name in client Puppet bootstrap scripts, to prevent issues that can arise when adhcplease expires. Not setting the hostname could cause the generated Puppet configuration for the client to uselocalhostas the client’s hostname. - Ensure that running on unsupported operating systems is completely safe.
- No longer deviate from vendor RPM default permissions per the STIG.
- Changed the permissions of
rc.localto750. - Removed the explicit setting of the
host_liston allsudo::user_specificationresources to let the updated module defaults handle settinghost_listappropriately.
2.5.7.15. pupmod-simp-simp_apache¶
- Fix the ownership of the configuration files to use the
ownervariable instead of thegroupvariable for user ownership.
2.5.7.16. pupmod-simp-simp_elasticsearch¶
- Add a missing
simp/pammodule dependency.
2.5.7.17. pupmod-simp-simp_gitlab¶
- Fixed the git
authorized_keyslock problem. - Dropped all support for CentOS 6 due to issues that kept cropping up during integration and the overall lack of support from EL upstream to fix minor bugs.
- Automatically opt-out of the GitLab data collection service in accordance with NIST 800-53r4 AC-20(1) and SC-38.
2.5.7.18. pupmod-simp-simp_nfs¶
- Ensure that users can fully disable
autofsif they choose to. - Fixed
systemddependencies.
2.5.7.19. pupmod-simp-simplib¶
- Fixed the
puppet_settingsfact so that the different sections are appropriately filled out. If not updated, this has been shown to cause thepuppetserverprocess to be unable to restart on package update. - Fixed
runlevelenforcement so that it activates properly when called. Previously, no action would be taken on the running system. - Added logic to prevent respawn of systemctl isolate if already in progress.
- Added a configurable timeout for changing runlevels based on issues discovered in the field with systemctl.
- Fixed bugs in the EL6 runlevel persistence where, in some cases, the runlevel line might not be added to /etc/inittab.
2.5.7.20. pupmod-simp-stunnel¶
- Fixed the
stunnelstartup scripts to ensure that they will always execute. - Only display errors when errors occur during startup.
- Removed the
init.dscript onsystemdsystems. - Ensure that the
stunnelservice name is set correctly in all instances, so thattcpwrappersfunctions properly.
2.5.7.21. pupmod-simp-svckill¶
- Add simp_client_bootstrap service to the ignore list; otherwise, svckill will kill the bootstrap process of SIMP clients.
2.5.7.22. pupmod-simp-vnc¶
- Fixed issues with the
xinetdspawnedVNCsessions where'IPv4needed to be set as a flag and the banner needed to be eliminated from the connection.
2.5.7.23. simp-cli¶
- Move to the updated OS facts for less fragility.
- Update several messages to be more clear to the user.
- Fix setting GRUB passwords on EL6.
- Fix ownership and permission issues on created files.
- Validate all puppet code present prior to bootstrapping.
- Fixed various logging issues.
- Improved validation and error handling.
- Fix
simp passgenprocessing of all password files and improved password generation. - Properly detect Puppet Enterprise on a system and avoid conflicting operations.
- Fixed some tests that were not safe to run on real operating systems.
2.5.7.24. simp-core¶
- Enabled GPG checking for the ISO-configured local filesystem repository by default
- Fixed errors in the
kickstartscriptlets - Improved detection of SSD devices using the
diskdetect.shscript - Removed obsolete
simp-bigandsimp-big-disk-cryptkickstart options in EL7 - No longer install
prelinkat kickstart time - Fixed EFI support on the ISO releases
- Removed EL7 references to function keys which no longer are honored
- Fixed the boot directory when
fipsis enabled on the ISO
2.5.7.25. simp-doc¶
- Remove OBE MCollective references
- Fixed issues in the sample
tftpbootpuppet code - Fixed several broken links
- Made the installation guide more user friendly by rearranging the content
2.5.7.26. simp-environment¶
- Added the
distmacro to the package name - Pre-populate
/var/simp/environments/simp/site_files/pki_filesand set the permissions appropriately. This fixes the failure ofsimp bootstrapon systems where therootuser’sumaskhas already been set to077. - FakeCA config files were marked as such in the RPM so that they will not be overwritten on RPM upgrade.
- Fixed a bug where the
cacertkeyfile was not being generated in the correct location at install time. - Removed
simp_options::selinuxfrom the scenario hieradata. - Force a run of
fixfilesin the%postsection ofsimp-environment.
2.5.7.27. simp-rsync¶
- Fully support UEFI booting.
2.5.8. New Features¶
2.5.8.1. pupmod-simp-compliance_markup¶
- More closely aligned with the latest SSG STIG content.
2.5.8.2. pupmod-simp-dconf¶
- Added a module for managing
dconfsettings.
2.5.8.3. pupmod-simp-incron¶
- Allow users to define entries for
incronsystem tables from Hiera. - Added a native type
incron_system_tableto allow for client side path glob expansion.
2.5.8.4. pupmod-simp-libvirt¶
- Use
kmod::loadinstead of a Ruby script to load the kernel module - Added a
libvirt_br_netfilter_loadedfact to determine if thebr_netfilterkernel module is loaded
2.5.8.5. pupmod-simp-logrotate¶
- Moved SIMP-specific logrotate rules to a SIMP-managed configuration
directory,
/etc/logrotate.simp.d, and ensuredlogrotateprocesses that directory first. This ensures that SIMP rules take priority, when duplicate rules are specified (e.g., OS and SIMP rules for/var/log/boot.log).
2.5.8.6. pupmod-simp-nfs¶
- Change all
stunnelconnections to usestunnel::instanceto that they are not interrupted due to issues with the globalstunnelconfiguration. - Added the ability to tweak
stunnelparameters for all NFS connections. - Ensure that all
stunnelservices used with NFS are now dependencies of the remote filesystem servers actually being active. - Added the ability to set
nfs::client::mount::autodetect_remoteto override all autodetection of whether or not the remote system is the local NFS server. - Added
nfs::client::mount::stunnelto allow users to dictate thestunnelstate for individual connections.
2.5.8.7. pupmod-simp-ntpd¶
- Added optional management of the
/etc/ntp/step-tickersfile. - Added a
$package_ensureparameter to control thentppackage version. - Added management of
/etc/sysconfig/ntpdate
2.5.8.8. pupmod-simp-openldap¶
- Ensure that
concatresource ordering is set innumericorder.
2.5.8.9. pupmod-simp-openscap¶
- Added an
oscapfact to collect the following: * OpenSCAP Version * OpenSCAP Supported Specifications * OpenSCAP Profiles from/usr/share/xml/scap/*/content/*-ds.xml
2.5.8.10. pupmod-simp-pam¶
- Added the ability to set
unlock_timetoneverforpam_faillock.so. - Set the default
cracklib_maxclassrepeatto3. - Allow users to change the password hashing algorithm.
- Allow users to toggle password enforcement for the
rootuser.
2.5.8.11. pupmod-simp-pki¶
- Purge
/etc/pki/simp_appsby default to clean up old certificates and allow users to move this directory target. - Added a new
$pki::certnameparameter that controls the name of the certificates inkeydistthat will be copied to the client. This is, by default, set to$trusted['certname']but can be changed so that users can pull other certificates by default. - Changed the CA certificate source to be a
Stringso thatNSSdatabases orhttpsendpoints can be specified.
2.5.8.12. pupmod-simp-pupmod¶
- Added
pupmod::master::generate_typeswhich addsincronhooks that will automatically runpuppet generate typeson your server when environments or native types are updated in any environment.
2.5.8.13. pupmod-simp-resolv¶
- Prevent invalid
resolv.conffiles from being written.
2.5.8.14. pupmod-simp-simp¶
- Remove
prelinkif it is not enabled. - Added support for connecting to
IPAservers. - Removed
simp::mcollectiveclass due to global deprecation. - Removed group management for the
rootuser based on feedback. - Set the ownership and permissions of
/etc/puppet/puppetdb.confso that systems that already have therootumaskset to077work properly. - Added a
simp::netconsoleclass to allow users to configure thenetconsolekernel parameter for boot time logging. - Split out the
runpuppetlogic into abootstrap_simp_clientscript to be separate from the startup scripts and work around issues withsystemdtimeouts. - Added an exponential backoff to the
bootstrap_simp_clientscript to handle cases where a lot of servers are being built at the same time. - Added Microsoft Windows support to the module that changes where the
simp.versionfile is placed on that platform.
2.5.8.15. pupmod-simp-simp_docker¶
- Multiple minor updates mostly surrounding the updates to
simp/iptablesto make it better work withdocker.
2.5.8.16. pupmod-simp-simp_gitlab¶
- Added support for the new GitLab 10+ LDAP options, specifically for TLS.
2.5.8.17. pupmod-simp-simp_grafana¶
- Added documentation regarding
rubygem-puppetserver-tomlfor use with thesimp_grafanamodule.
2.5.8.18. pupmod-simp-simp_ipa¶
- Initial release of a module for managing
IPAconnectivity settings. - Does not currently manage
IPAserver installation.
2.5.8.19. pupmod-simp-simp_nfs¶
- Added the ability to force mounts to point to a remote host.
2.5.8.20. pupmod-simp-simp_openldap¶
- Allow users to set the
usersandadministratorsGIDvalues in thedefault.ldiffile. - Use concat numeric ordering to allow placement of new modifications in a predictable and reliable order.
2.5.8.21. pupmod-simp-simp_options¶
- Added
simp_options::uidandsimp_options::gidsince several modules required a consistent parameter set for enforcing these items globally. - Removed
$simp_options::selinuxsince it never worked as designed and was not required by more than one module. This is not considered a breaking change since it effectively never had any effect on the system anyway.
2.5.8.22. pupmod-simp-simplib¶
- Added a
Simplib::Domaindata type that validates DNS domains against theTLDrestrictions from RFC 3968, Section 2. - Added a
login_defscustom fact that returns a structured fact for the entire contents of/etc/login.defs - Added an
ipafact that returns information about connectivity to anIPAserver. - Added a
prelinkfact to determine whether or notprelinkis installed on the system. - Updated the
simplib::ldap::domain_to_dnfunction to allow users to decide whether or not they want to upcase the returned LDAP attribute strings. - Added a
simplib::reboot_notifyclass to allow users to easily toggle globalreboot_notifysettings. - Improved
reboot_notifyerror handling. - Allow users to set the log level on
reboot_notify. - Added a
Simplib::PuppetLogLeveldata type. - Updated
init_ulimitto allow it to work properly withpuppet generate types. - Added a
simplib::hash_to_optsfunction which turns aHashinto aStringthat mirrors a usual shell command. - Added a
simplib::installdefined type that allows package management based on a suppliedHash. - Added a
simplib::module_existfunction to detect the existence of a module. - Ensure that
systemctlis never spawned more than once when attempting to change the systemrunlevel. - Fixed an issue in EL6
runlevelpersistence where the line may not be written to/etc/inittab.
2.5.8.23. pupmod-simp-ssh¶
- Ensure that
GSSAPIAuthenticationis disabled if the host is on anIPAdomain. - Moved all management of the
/etc/ssh/ssh_configfile to use thessh_configaugeasprovider. Management of all SSH configuration files is now done consistently. - Removed the no longer required
sshd.augaugeas lens. - Added parameter management to the
sshd_configto align with the STIG requirements. - Default to not configure RhostsRSAAuthentication in sshd_config for versions of openssh that no longer allow that option.
2.5.8.24. pupmod-simp-sssd¶
- Updated to use the
login_defsfact to determine the defaultuid_minanduid_maxvalues. - Added a defined type for connecting to an
IPAserver. - Added tests for connecting to Active Directory and updated the configuration settings appropriately.
- Allow passing
ldap_tls_cacertto thesssd::provider::ldapdefined type. - Align
sssdpermissions with the RPM defaults.
2.5.8.25. pupmod-simp-stunnel¶
- Isolated the
instancelogic away from the globalconnectionlogic completely. - Added a native type that cleans up all instances that may have been abandoned
by
stunnel::instance. - Added parameters to allow controlling
systemdrequirement chains.
2.5.8.26. pupmod-simp-sudo¶
- Added both the short
hostnameand longfqdnto the user access control by default. - Update user_specification define to not accept an empty hostlist.
2.5.8.27. pupmod-simp-tftpboot¶
- Added support for UEFI PXEboot
- Moved the
tftpbootroot directory from/tftpbootto/var/lib/tftpbootto match the expectations of SELinux and the STIG. - Added a
tftpboot::tftpboot_root_dirparameter to all users to override the root directory location.
2.5.8.28. pupmod-simp-tpm¶
- Moved the policy
systemdunit files to/etc/systemd - Ensure that the
IMAservice only starts on reboot instead of during a puppet run. - Disabled many
IMAchecks by default to make the impact lighter on a standard system.
2.5.8.29. pupmod-simp-useradd¶
- Set the min and max
UIDandGIDbased on what is inlogin.defs, and default to something sensible for the platform.
2.5.8.30. simp-core¶
- Added logic to auto.cfg to use OS-specific GPG keys in simp_filesystem.repo.
- Client kickstart files were updated to use the latest
simp::server::kickstartAPI and to provide support for UEFI PXE boot - EL6 kickstart files were updated to more closely match the EL7 kickstart files
2.5.8.31. simp-doc¶
- Added SIMP 6.1.0 to 6.2.0 upgrade guide
- Added SIMP on AWS documentation
- Added a HOWTO for IPA client enrollment
- Added a HOWTO for customizing settings for SSH
- Added documentation on how to disconnect from
puppetDB - Updated the documentation for UEFI PXE booting.
- Clarified certificate management
- Restructured pages for better navigation
- Updated contributors guide to description more details about the development workflow
2.5.8.32. simp-vendored-r10k¶
- Added a SIMP vendored version of
r10kthat lives at/usr/share/simp/bin/r10kto ensure that a known version ofr10kis present on the system at all times. UserPATHenvironment variables are not updated so that command must be called directly.
2.5.9. Known Bugs¶
- There is a bug in
Facter 3that causes it to segfault when printing large unsigned integers - FACT-1732- This may cause your run to crash if you run
puppet agent -t --debug
- This may cause your run to crash if you run
- The
krb5module may have issues in some cases, validation pending - The graphical
switch userfunctionality appears to work randomly. We are working with the vendor to discover a solution