Я пишу bash-скрипт, который планирую выполнить через cron. В этом сценарии я хочу выполнить команду для базы данных MySQL, примерно так:
$ mysql -u username -ppassword -e 'show databases;'
Для ясности и для тех, кто не знаком с mysql, ключ "-u" принимает имя пользователя для доступа к базе данных, а "-p" - для пароля (пробел намеренно пропущен).
Я ищу хороший способ сохранить имя пользователя / пароль под рукой для использования в сценарии, но таким образом, чтобы эта информация также была защищена от посторонних глаз. Я видел стратегии, которые требуют следующего:
- Сохранить пароль в файле: pword.txt
- chmod 700 pword.txt (удалить разрешения для всех, кроме владельца файла "
- Cat pword.txt в переменную в скрипте, когда это необходимо для входа в систему.
но я не чувствую, что это тоже очень безопасно (что-то из-за того, что пароли хранятся в открытом виде, вызывает у меня тошноту).
Итак, как мне защитить пароль, который будет использоваться в автоматизированном сценарии в Linux?