• 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' 
    
  • 相关阅读:
    Office 2007在安装过程中出错-解决办法
    Sql日期时间格式转换
    大型网站架构演变和知识体系
    作为一个web开发人员,哪些技术细节是在发布站点前你需要考虑到的
    Java 入门基础
    技术类面试、笔试题汇总
    怎样玩转千万级别的数据
    数据库性能优化:SQL索引
    最后一公里极速配送
    编辑-滴滴算法大赛算法解决过程
  • 原文地址:https://www.cnblogs.com/liaojiafa/p/6511190.html
Copyright © 2020-2023  润新知