2008-12-02 27 views
20

Tôi muốn biết cách thiết lập kho lưu trữ SVN với xác thực LDAP. Tôi không muốn sử dụng Apache DAV.svnserve với LDAP

Trả lời

12

Có hai lựa chọn:

  1. Run svnserve như một máy chủ, và xác thực bằng SASL. Định cấu hình SASL to authenticate against LDAP.
  2. Truy cập kho lưu trữ qua ssh. Tạo tài khoản ssh cho tất cả người dùng (có thể tự động) và có các tài khoản này xác thực với LDAP bằng cách sử dụng PAM. Đặt tất cả người dùng vào một nhóm duy nhất và tạo các tệp kho lưu trữ thuộc sở hữu của nhóm đó.
+0

Bất kỳ đầu mối nào về cách thực hiện tùy chọn 1 trên hộp Windows? – jpierson

+0

liên kết bị hỏng "SASL để xác thực với LDAP" –

8

Kể từ khi nó đã cho tôi một thời gian để tìm các mảnh để làm điều này, tôi muốn gửi làm thế nào tôi đã làm điều này trên một máy chủ RHEL5:

  1. cài đặt CollabNet RPM (client, server, and extras).

  2. chạy /opt/CollabNet_Subversion/bin/Configure-CollabNet-Subversion để định cấu hình không có Apace và với svnserve.

  3. sửa đổi tập tin repo/conf/svnserve.conf của bạn phải có:

    [sasl] 
    use-sasl=true 
    
  4. tạo /opt/CollabNet_Subversion/etc/saslauthd.conf tập tin với những nội dung:

    ldap_servers: ldaps://... 
    ldap_search_base: ... 
    ldap_bind_dn: ... 
    ldap_bind_pw: ... 
    ldap_auth_method: bind 
    ldap_timeout: 10 
    
  5. tạo /etc/opt/CollabNet_Subversion/sasl2/svn.conf tập tin với những nội dung để sử dụng với MS AD LDAP:

    pwcheck_method: saslauthd 
    auxprop_plugin: ldap 
    mech_list: PLAIN LOGIN 
    ldapdb_mech: PLAIN LOGIN 
    
  6. sao chép /etc/openldap/ldap.conf đến /etc/opt/CollabNet_Subversion/conf/openldap và thêm TLS_REQCERT allow. Điều này là cần cho máy chủ LDAP tự ký của chúng tôi

  7. chạy CollabNet saslauthd

    • mkdir -p /var/state/saslauthd
    • chỉnh sửa /etc/init.d/collabnet_subversion bao gồm /opt/CollabNet_Subversion/sbin/saslauthd -a ldap về phía cuối start() chức năng
    • stop/start /etc/init.d/collabnet_subverison

lưu ý: bạn có thể sử dụng /opt/CollabNet_Subversion/sbin/testsaslauthd -u <userid> -p <password> để kiểm tra kết nối sasl tới ldap

Một chút có liên quan, nhưng đối với tôi, nó cho phép khách hàng của chúng tôi kết nối với svn:// bằng mật khẩu ldap của họ.