概述: 開啟對系統上非root的系統用戶可以在master上執行一些特殊的模塊,或者禁止用戶執行某些模塊,或者某個模塊里面的具體的某個方法等
查看當前saltstack版本有哪些模塊
[admin@master ~]$ sudo salt 'proxy01*' sys.list_modules
查看每個模塊有哪些方法(以pkg為例)
[admin@master ~]$ sudo salt 'proxy01*' sys.list_functions pkg
* 開啟配置:
案例:運行admin用戶執行service和pkg模塊里面的所有方法
~~~
client_acl:
admin:
- service.*
- pkg.*
~~~
[admin@master ~]$ sudo systemctl restart salt-master
測試:
~~~
[admin@master ~]$ salt -I 'apache:httpd' pkg.install httpd
huancun03.51yuki.cn:
----------
httpd:
----------
new:
2.4.6-67.el7.centos.6
old:
httpd-tools:
----------
new:
2.4.6-67.el7.centos.6
old:
mailcap:
----------
new:
2.1.41-2.el7
old:
[admin@master ~]$ salt -I 'apache:httpd' cmd.run 'sudo systemctl restart httpd'
Failed to authenticate! This is most likely because this user is not permitted to execute commands, but there is a small possibility that a disk error occurred (check disk/inode usage).
[admin@master ~]$ salt -I 'apache:httpd' service.enable httpd
huancun03.51yuki.cn:
True
發現:剛剛設置的service和pkg模塊可以使用,cmd模塊不能用
~~~
* 報錯總結
[WARNING ] Failed to open log file, do you have permission to write to /var/log/salt/master?
解決:chmod 777 /var/log/salt/master
chmod 755 /var/cache/salt /var/cache/salt/master /var/cache/salt/master/jobs /var/run/salt /var/run/salt/master
Salt request timed out. The master is not responding. If this error persists after verifying the master is up, worker_threads may need to be increased.
解決:這里是因為master的interface的地址不是0.0.0.0 導致的。改為0.0.0.0 重啟服務就不報錯了,這個好像是個bug
第二種:通過設置黑名單
~~~
#client_acl_blacklist:
# users:
# - root
# - '^(?!sudo_).*$' # all non sudo users
# modules:
# - cmd
client_acl_blacklist:
users:
- admin
modules:
- service.stop
- cmd
~~~
- 第一章:saltstack的基本介紹
- 第二章:saltstack的安裝部署
- 第一節:在centos7系統上安裝saltstack工具
- 第二節:在windows server 2008上安裝salt-minion
- 第三章: saltstack的配置管理
- 第一節:salt-master配置
- 第二節:salt-minion配置
- 第三節:了解YAML
- 第四節:salt-master配置文件詳解
- 第五節:了解Jinja2
- 第六節:配置普通用戶可以運行saltstack的模塊
- 第四章:遠程執行
- 第一節:遠程執行基礎介紹
- 第二節:目標定位
- 一、全局及正則表達式匹配
- 二、列表匹配
- 三、Grains
- 四: Pillar
- 五:subnet and ip
- 六:組合匹配
- 七: node group
- 第三節:常用模塊
- 一、查看幫助
- 二、Network模塊
- 三、Service模塊
- 四:State模塊
- 五、Cron模塊
- 六、File模塊
- 七、iptables模塊
- 八、pkg包管理
- 第四節:Salt其他命令
- 一、salt-cp(拷貝文件)
- 二、salt-ssh
- 三、salt-key
- 第五節:saltstack返回程序
- 第一節:返回保持到數據庫(mysql)
- 第五章:配置管理
- 第一節:簡單入門
- 第二節:狀態間關系
- 第六章:數據系統
- 第一節:grains
- 第二節:pillar
- 第七章:saltstack配置管理
- 第一節:系統初始化操作
- 第二節:功能模塊
- 一、haproxy模塊
- 二、keepalived模塊
- 三、nginx模塊
- 四: pcre模塊
- 五: zlib模塊
- 六:user模塊
- 七:php模塊
- 第三節:業務模塊
- 第一節:haproxy代理
- 第二節:keepalived業務
- 第八章:自動化管理工具saltstack
- 第一節:文件管理
- 第二節:軟件管理
- 第三節:服務管理
- 第四節:sysctl模塊管理