第二篇:salt-api使用填坑指南
阿新 • • 發佈:2018-09-30
fig ken service accep disable root alt nio con 前言
salt-api在使用時,有些坑欲哭無淚,一路趟雷過後,總結了一趟salt-pai使用填坑指南,保君一路暢通。
salt-api 安裝
#本文的安裝版本 2018.3.2-1.el6
yum install salt-api.noarch
centos 6
checkconfig salt-api on
service salt-api start
centos 7
systemctl enable salt-api.service
systemctl start salt-api
salt-api 配置
cd /etc/salt/master.d/
vi api.conf
內網不安全,需要使用秘鑰加密,請問度娘
rest_tornado: port: 8888 #ssl_crt: /etc/pki/tls/certs/localhost.crt #ssl_key: /etc/pki/tls/private/localhost_nopass.key debug: True disable_ssl: True rest_cherrypy: port: 8889 #ssl_crt: /etc/pki/tls/certs/localhost.crt #ssl_key: /etc/pki/tls/private/localhost_nopass.key debug: True disable_ssl: True
vi eauth.conf
external_auth:
pam:
saltapi:
- .*
- ‘@runner‘
- ‘@wheel‘
pam 表示salt-api的驗證采用Linux系統自帶的pam驗證,就是基於Linux用戶的驗證方式
saltapi 這個是Linux用戶,所以salt-api就可以基於Linux用戶密碼進行驗證
useradd saltapi
passwd saltapi
註意暫時不要設置saltapi用戶為nologin,不然你會後悔的
saltapi用戶密碼用 saltapipw 指代
service salt-api restart
驗證salt-api是否可用
curl -si http://salt-api-ip:8888/login -H "Accept: application/json" -d username=‘saltapi‘ -d password=‘saltapipw‘ -d eauth=‘pam‘
返回 json 包含 tonken 則正常
填坑記錄
請求幾次salt-api就會返回401?
首先su驗證下用戶輸入密碼是否正確
#su - saltapi
Account locked due to 66 failed logins
# less /var/log/secure
python2.7: pam_tally2(login:auth): user saltapi (7006) tally 62, deny 5
發現用戶竟然被鎖
#查看用戶登錄狀態
#pam_tally2 --user=saltapi
Login Failures Latest failure From
saltapi 66 09/30/18 11:02:01 pts/1
重置賬戶登錄失敗計數
#pam_tally2 --user=saltapi --reset
#pam_tally2 --user=saltapi
Login Failures Latest failure From
saltapi 0
重新請求salt-api正常,但是幾次後還是被鎖
臨時解決方法,取消pam_tally2驗證
vi /etc/pam.d/system-auth
#註釋
auth required pam_tally2.so onerr=fail deny=5 unlock_time=1800
salt-api的驗證用戶設置nologin,如何驗證密碼?
#可以在root用戶下執行
salt -T -a pam ‘minion_id‘ test.ping
#註意,如果驗證通過,就會生成~/salt_token 文件,裏面記錄驗證用戶的tonken,如果過期或者重新驗證,需要刪除這個文件
第二篇:salt-api使用填坑指南