Я використовую Puppet для надання MySQL параметризованого класу:
class mysql::server( $password ) {
package { 'mysql-server': ensure => installed }
package { 'mysql': ensure => installed }
service { 'mysqld':
enable => true,
ensure => running,
require => Package['mysql-server'],
}
exec { 'set-mysql-password':
unless => "mysqladmin -uroot -p$password status",
path => ['/bin', '/usr/bin'],
command => "mysqladmin -uroot password $password",
require => Service['mysqld'],
}
}
Як я можу захистити $password
? В даний час я вилучив з файлу визначення вузла дозвіл для читання у світі за замовчуванням і явно давpuppet
дозвіл на читання через ACL.
Я припускаю, що інші стикалися з подібною ситуацією, тому, можливо, є краща практика.