Saltstack教程

SaltStack 访问控制系统

访问控制系统为用户组提供选项以执行具有权限的任务。 Salt 访问控制系统用于配置对非管理控制界面的访问。您可以将此过程应用于所有系统。此控件可帮助非管理员用户执行 Salt 命令。
Salt 接口有以下三种类型-
Publisher ACL system External Auth system Peer system
让我们详细了解每个接口。

发布者 ACL 系统

发布者 ACL 系统允许访问除 root 之外的用户,以从 master 对 minion 执行 Salt 命令。发布者 ACL 系统通过 publisher_acl 配置选项在主配置文件中进行配置。它的定义如下-
publisher_acl:
   user1:
     -.*
   user2:
     -web*:
        -test.*
        -pkg.*
这里,
user1 我允许执行任何操作。 user2 可以使用 testpkg,但只能在"web*"minions 上使用。

外部认证系统

external auth system 用于通过外部授权系统(如 PAM、LDAP 等)提供在特定 Minion 上执行 salt 命令的访问权限。此配置文件定义在如下所述的主文件。
external_auth:
   pam:
      user1:
        -'web*':
           -test.*
           -network.*
      user2:
        -.*
这里,
user1 被允许在与 web*test 和 network 模块 中的函数> 目标。 user2 被允许执行所有功能。

在命令中启用外部身份验证系统

Salt 服务器提供了一个选项"-a"来启用外部身份验证。
salt-a pam web\* test.ping
此处, -a pam 选项用于启用 PAM 外部身份验证。每当我们执行命令时,Salt Server 都会询问身份验证详细信息。为了限制 Salt Server 仅在第一次询问身份验证详细信息,我们可以使用 T 选项。此 -T 选项 会缓存接下来 12 小时(默认设置)的身份验证详细信息,并使用它来对用户进行身份验证。
salt-T-a pam web\* test.ping

对等系统

Salt Minion 可以使用对等接口传递命令。 peer 接口是通过 master 配置文件配置的,要么允许 minions 使用 peer 配置部分从 master 发送命令,要么允许 minions 使用 peer_run 配置。
让我们详细了解这两种配置。

对等配置

要在主文件中定义的简单配置如下-
peer:
   .*:
     -.*
在这里,它为所有 Minion 启用通信,但仅推荐用于非常安全的环境。
要将 minion 分配给特定的 ID,需要定义如下配置:peer-
.*domain.com:
  -test.*

peer_run 配置

这个配置允许minions使用master文件上的peer_run选项从master执行runner。下面的例子是允许访问所有minion和所有runners。
peer_run:
   .*:
     -.*
要将 Minion 分配给特定的 ID,需要定义如下配置-
peer_run:
   .*domain.com:
     -test.*

如何执行命令

要在所有 Minion 上执行 test.ping,使用 salt-call 命令和 publish.publish 模块。
salt-call publish.publish \* test.ping
要执行 runner,请使用 salt-call 命令和 publish.runner 模块。
salt-call publish.runner manage.up
昵称: 邮箱:
Copyright © 2022 立地货 All Rights Reserved.
备案号:京ICP备14037608号-4