如何使用salt状态设置root密码

时间:2013-06-12 13:10:04

标签: salt-stack

我想为mysql root用户设置强密码。但是有一个鸡蛋问题。我有空服务器。盐我。 root密码为空(默认情况下,安装后)。

如果我使用

root: 
  mysql_user.present:
  - name: root
  - password: $ecur3h4x0r
  - host: %

然后我将无法调用任何其他mysql状态,因为他们需要密码。但是下次我做高台时这个调用不起作用,因为状态试图用空密码连接。

3 个答案:

答案 0 :(得分:4)

是的,我们将添加'default_user'和'default_pass'设置,以便您可以处理这种情况。应该是0.17.0

答案 1 :(得分:2)

以防万一有人在开始使用saltstack管理mysql时偶然发现了这个问题。

以下是当前盐版本(盐2015.5.0(Lithium))的工作原理。 请注意,mysql_user.present-state非常智能,可以在没有密码的情况下尝试它。在后续运行中,状态将使用root密码进行连接,并意识到root的密码处于正确的状态。

root:
  mysql_user.present:
    - host: localhost
    - password: s3cure_root_password

another_user:
  mysql_user.present:
    - host: localhost
    - password: anoth3r_user_password
    - connection_user: root
    - connection_pass: s3cure_root_password

答案 2 :(得分:0)

我想在ubuntu 18.04下的master / minion版本'2019.2.0'中为我工作的两件事:

  • 一个人可以通过以下方式首次设置用户“ root”的密码:
   mysql_user.present:
     - name: root
     - host: localhost
     - password: pillar['mysql']['mysqlrootpassword']
     - connection_charset: utf8
     - saltenv:
       - LC_ALL: "en_US.utf8"

此后,无论root密码的值如何,该命令都会始终User root@localhost is already present with the desired password继续。

  • 仅当您使用root或以root用户身份登录时,MySql用户sudo才被允许登录。
相关问题