saltstack系列1之salt-api配置与使用
salt-api
salt-api是我们通过restful-api调用salt-master的接口,且调用的时候必须通过认证才能调用,认证的用户为系统用户,下面就说说如何配置salt-api。
不带SSL认证
1.创建用户
[root@salt yum.repos.d]# useradd saltapi
[root@salt yum.repos.d]# passwd saltapi # 密码为123456
2.修改salt-master配置文件
[root@salt yum.repos.d]# vim /etc/salt/master
default_include: master.d/*.conf
file_roots:
base:
- /salt/states
dev:
- /salt/dev
prod:
- /salt/prod
3.创建目录与配置文件:
[root@salt yum.repos.d]# cd /etc/salt/
[root@salt yum.repos.d]# mkdir master.d/
[root@salt yum.repos.d]# cd master.d/
[root@salt yum.repos.d]# cat api.conf # 第一个配置文件
rest_cherrypy:
host: 0.0.0.0
port: 8080
debug: true
disable_ssl: true
[root@salt yum.repos.d]# cat eauch.conf
external_auth:
pam:
saltapi:
- .*
- '@wheel'
- '@runner'
4.启动slat-api和salt-master
[root@salt yum.repos.d]# /etc/init.d/salt-api start
5.验证操作:
[root@salt ~]# curl -k http://127.0.0.1:8080/login -H "Accept: application/x-yaml" -d username='saltapi' -d password='123456' -d eauth='pam'
return:
- eauth: pam
expire: 1472481375.33111
perms:
- .*
start: 1472438175.331109
token: f9e354170c3311dc716db56d9217338a206ce006
user: saltapi
带SSL认证的
1.更改salt-master配置文件
[root@salt yum.repos.d]# vim /etc/salt/master
default_include: master.d/*.conf # 添加这一行
[root@salt master.d]# mkdir /etc/salt/master.d/ # 创建目录
2.创建key:
[root@salt private]# cd /etc/pki/tls/private
[root@salt certs]# make testcert
[root@salt certs]# cd ../private/
[root@salt private]# openssl rsa -in localhost.key -out localhost_nopass.key
3.创建目录与配置文件:
[root@salt master.d]# cat api.conf eauth.conf
rest_cherrypy:
port: 8010 监听 的端口
ssl_crt: /etc/pki/tls/certs/localhost.crt crt证书路径不能错误
ssl_key: /etc/pki/tls/private/localhost_nopass.key key路径也不能错误,不然端口死活起不来
external_auth:
pam:
saltapi: 调用系统认证的pam模块做用户认证
- .* 用户
4.启动服务
[root@salt master.d]# /etc/init.d/salt-api start
5.验证操作:
[root@salt master.d]# curl -k https://192.168.1.16:8010/login -H "Accept: application/x-yaml" -d username='saltapi' -d password='123456' -d eauth='pam'
return:
- eauth: pam
expire: 1472007733.0523901
perms:
- .*
start: 1471964533.0523901
token: 9b6a6e82c002b925952e5c930a699286e8096db1
user: saltapi
6.执行命令看看
[root@salt tmp]# curl -k https://172.16.22.129:8010/ -H "Accept: application/x-yaml" -H "X-Auth-Token: 5aa829c1df638221f0b62b25e68f7121a347022e" -d client="local" -d tgt='*' -d fun='test.ping'
return:
- web.minion1.com: true
curl -k http://172.16.22.129:8010/ -H "Accept: application/x-yaml" -H "X-Auth-Token: f9e354170c3311dc716db56d9217338a206ce006" -d client="local" -d tgt='*' -d fun='grains.items'
saltstack系列1之salt-api配置与使用的更多相关文章
- Salt 与Salt API配置
1.安装 [root@localhost yum.repos.d]# cat /etc/yum.repos.d/salt.repo [saltstack-repo] name=SaltStack re ...
- 死磕salt系列-salt API 使用
启用salt-api 服务 这里简单的说明下,SaltStack官方支持三种REST API,分别是rest_cherry; rest_tonado和rest_wsgi, 本文选择使用rest_che ...
- CentOS 安装及配置Salt api
安装 # yum -y install salt-api 更改配置 vim /etc/salt/master 把默认的注释掉 我们这边默认配置文件目录是/srv/salt default_inclu ...
- 17.翻译系列:将Fluent API的配置迁移到单独的类中【EF 6 Code-First系列】
原文链接:https://www.entityframeworktutorial.net/code-first/move-configurations-to-seperate-class-in-cod ...
- 10.翻译系列:EF 6中的Fluent API配置【EF 6 Code-First系列】
原文链接:https://www.entityframeworktutorial.net/code-first/fluent-api-in-code-first.aspx EF 6 Code-Firs ...
- Dataphin数据服务系列之--API 配置、管理和消费
研发小哥哥还在为公司里大量 API 只上不下,不可查不可用, 想找的 API 找不到而苦恼吗?业务方小姐姐还在为 API 开发时间长,业务相应不及时而抱怨吐槽吗? 铛铛铛,Dataphin 数据服务 ...
- (转)Saltstack系列
Saltstack系列1:安装配置 Saltstack系列2:Saltstack远程执行命令 Saltstack系列3:Saltstack常用模块及API Saltstack系列4:Saltstack ...
- Saltstack系列5:Saltstack之pillar组件
pillar组件 pillar也是Saltstack最重要的组件之一,其作用是定义与被控主机相关的任何数据,定义好的数据可以被其他组件使用,如模板.state.API等. 在pillar中定义的数据与 ...
- EF里的默认映射以及如何使用Data Annotations和Fluent API配置数据库的映射
I.EF里的默认映射 上篇文章演示的通过定义实体类就可以自动生成数据库,并且EF自动设置了数据库的主键.外键以及表名和字段的类型等,这就是EF里的默认映射.具体分为: 数据库映射:Code First ...
- Fluent API 配置
EF里实体关系配置的方法,有两种: Data Annotation方式配置 也可以 Fluent API 方式配置 Fluent API 配置的方法 EF里的实体关系 Fluent API 配置分为H ...
随机推荐
- win8中的参数传递
列表页面: xaml: Gridview中的数据源是实体的集合: <i:EventToCommand Command="{Binding GridViewItemClick_Comma ...
- python json 数据操作
python 有专门针对 json 操作的函数 #!/usr/bin/python3 import json mytest_js = { "a" : 1, "b" ...
- 设备接口体应用container_of的思考
结构体应用container_of,可参考 container_of
- go编译
1. Go编译器 两种官方编译器,gc和gccgo,其中gccgo基于gcc后端. go编译器支持8种指令集,不同建构编译质量不同: amd64 (also known ) (x86 or x86-) ...
- springboot读取resource下的文本文件
https://blog.csdn.net/programmeryu/article/details/58002218 文本所在位置: 获取ZH.txt: File file = ResourceUt ...
- Spring Cloud Sleuth 服务跟踪
项目结构: 一跟踪服务中心,用于收集和展示跟踪情况. 一个服务提供者. 一个服务消费者. 服务跟踪中心: pom.xml添加如下依赖: <dependency> <groupId&g ...
- Java嵌入式数据库H2学习总结
H2数据库使用总结 —— 孤傲苍狼
- Linux SWAP 交换分区大小与内存的关系
LinuxSWAP交换分区大小与内存的关系SWAP(交换分区)[Windows虚拟内存]我们机房中一台Linux服务器运行缓慢,系统服务出现间歇性停止响应,让我过去处理一下这一问题,登录到服务器之后, ...
- Android 开发 打开默认浏览器发生崩溃
Android 开发 打开默认浏览器发生崩溃. 代码如下: Intent intent = new Intent(); intent.setAction("Android.intent.ac ...
- R语言大小写字母转换
#R语言大小写字母转换 熊荣川 六盘水师范学院生物信息学实验室 xiongrongchuan@126.com http://blog.sciencenet.cn/u/Bearjazz R语言有很丰富的 ...