1. 程式人生 > >centos下svn的ldap認證配置

centos下svn的ldap認證配置

ins attr 讀寫 test emc centos eal swd 完成

前提:完成svn的基本安裝

一、安裝sasl相關組件

#yum install -y cyrus-sasl cyrus-sasl-lib cyrus-sasl-plain

二、查看SASL版本和提供的驗證模塊

#saslauthd -v

技術分享圖片

三、修改sasl的用戶驗證方式為ldap

#cp /etc/sysconfig/saslauthd /etc/sysconfig/saslauthd.save
#sed -i ‘s/MECH=pam/MECH=ldap/‘ /etc/sysconfig/saslauthd

技術分享圖片

四、修改sasl配置文件(不存在則新建)

#vi /etc/saslauthd.conf (以下信息根據ldap服務來配置)
ldap_servers: ldap://192.168.1.2 ldap_bind_dn: cn=chengdu,dc=sichuan,dc=com ldap_bind_pw: xxxxxx ldap_search_base: dc=sichuan,dc=com ldap_filter: uid=%U ldap_deref: never ldap_restart: yes ldap_scope: sub ldap_use_sasl: no ldap_start_tls: no ldap_version: 3 ldap_auth_method: bind ldap_mech: DIGEST-MD5 ldap_password_attr: userPassword ldap_timeout:
10 ldap_cache_ttl: 30 ldap_cache_mem: 32786

五、重啟sasl服務,測試是否通過

# systemctl restart saslauthd
# testsaslauthd -u 用戶 -p 密碼

技術分享圖片

六、修改配置文件svn.conf,不存在則新建,目前不知此文件的作用

#vi /etc/sasl2/svn.conf
pwcheck_method:saslauthd
mech_list:plain login

七、重啟sasl服務,並做好svn的相關配置

#cat svnserve.conf
[general]
anon-access = none
auth
-access = write #password-db = passwd authz-db = authz realm = /opt/svn/migu/SPMS [sasl] use-sasl = true

八、測試

當前已切換到LDAP認證,svn服務不再調用passwd文件,也不再使用authz裏的用戶,但是對LDAP用戶的權限控制需要在authz裏設置。

a) 以LDAP的一個用戶為例(chenhongyuwx),authz不做權限的修改,使用此用戶進行訪問

技術分享圖片

使用登錄SPMS的密碼進行登錄

技術分享圖片

登錄失敗,沒有訪問權限

b) authz對chenhongyuwx做只讀的權限,使用此用戶進行訪問

技術分享圖片

使用登錄SPMS的密碼進行登錄,登錄成功,說明chenhongyuwx具有讀的權限,符合配置要求

技術分享圖片

上傳文件,使用chenhongyuwx用戶commit失敗,因為chenhongyuwx只有讀權限,沒有寫權限,符合配置要求

技術分享圖片

c) authz對chenhongyuwx做讀寫的權限,使用此用戶進行訪問

技術分享圖片

上傳文件,使用chenhongyuwx用戶commit成功,因為authz為其設置了讀寫權限。

技術分享圖片

centos下svn的ldap認證配置