nginx-ldap-authGo 實(shí)現(xiàn)的 Nginx 反向代理 LDAP 認(rèn)證
nginx-ldap-auth
基于 ngx_http_auth_request_module 的 Nginx 反向代理 LDAP 認(rèn)證。Golang 實(shí)現(xiàn)
usage
Build from source
# git clone https://github.com/shanghai-edu/nginx-ldap-auth # go get ./... # chmod +x control # ./control build # ./control pack
這里會(huì) pack 出一個(gè) tar 包,拿去部署即可 也可以直接從 release 下載編譯好的版本
Install
# tar -zxvf nginx-ldap-auth-0.1.tar.gz # cp nginx.conf /etc/nginx/nginx.conf # mv cfg.example.json cfg.json // and change it # service nginx reload # ./control start
根據(jù)自己的實(shí)際配置情況修改 cfg.json
{
// ldap config
"ldap": {
"addr": "ldap.example.org:389",
"baseDn": "dc=example,dc=org",
"bindDn": "cn=manager,dc=example,dc=org",
"bindPass": "password",
"authFilter": "(&(uid=%s))",
"attributes": ["uid", "cn", "mail"],
"tls": false,
"startTLS": false
},
// control config
"control":{
"ipAcl":{
"deny":["127.0.0.1","192.168.0.0/24","192.168.1.0-192.168.1.255"], // 這些 IP 會(huì)被直接干掉
"direct":[] // 直通的 IP 不需要認(rèn)證
},
"timeAcl":{
"deny":["00:00-08:00","17:00-23:59"], // 這些時(shí)間范圍的訪問(wèn)會(huì)被 deny
"direct":[] // 這些時(shí)間訪問(wèn)會(huì)直通
},
"allowUser":["user1"] // 允許認(rèn)證通過(guò)的用戶名,如果允許所有的 LDAP 用戶通過(guò)認(rèn)證,那么這里留空。
},
"http": {
"debug":false,
"ips":["127.0.0.1"], // 調(diào)用 API 所信任的 IP 范圍
"listen": "0.0.0.0:8080"
}
}評(píng)論
圖片
表情
