天天看點

LDAP做系統和samba統一認證

Ldap統一認證明驗

1.所需環境

LAMP:mysql沒有用到

域名稱設定:abc.com(這裡先做了NIS域,可以不做)

伺服器名:model

2.下載下傳軟體

Db-6.0.30.tar.gz

Openldap-2.4.39.tgz

Pam_ldap.gz和Nss_ldap.gz(32為系統,64為nss-pam-ldap,實驗中直接emerge了)

Phpldapadmin-1.2.3.tgz

實驗步驟:

上傳上述檔案到model

Tar zxvf db-6.0.30.tar.gz

Cd db.6.0.30/build_unix

../dist/configure##DB有本地編譯的目錄

Make

Make install

Echo “/usr/local/BerkeleyDB.6.0/lib” >>/etc/ld.so.conf

Cp /usr/local/BerkeleyDB.6.0/lib /usr/lib

Cp /usr/local/BerkeleyDB.6.0/inclube /usr/inclube

Tar xvf openldap-2.4.39.tgz

Env CPPFLAGS=”-I /usr/local/BerkeleyDB.4.7/include” 

LDFLAGS=”-l/usr/”local/BerkeleyDB.4.7/lib ./configure –prefix=/usr/local/openldap 

–enable-ldbm

Make depend

Cd /usr/local/openldap/etc/openldap

<a href="http://s3.51cto.com/wyfs02/M02/24/6E/wKioL1NPZ9vBNR5hAAKV4baxeNM610.jpg" target="_blank"></a>

<a href="http://s3.51cto.com/wyfs02/M01/24/6E/wKiom1NPaASzblz7AADE880RYq8440.jpg" target="_blank"></a>

啟動openldap

/usr/local/openldap/libexec/slapd

<a href="http://s3.51cto.com/wyfs02/M00/24/6E/wKioL1NPZ-ywhSiZAAC8ktiL4ug331.jpg" target="_blank"></a>

Vi ldap.conf

<a href="http://s3.51cto.com/wyfs02/M02/24/6E/wKiom1NPaB6icmgAAACeDI1BMr0723.jpg" target="_blank"></a>

Vi /etc/ldap.conf

<a href="http://s3.51cto.com/wyfs02/M01/24/6E/wKioL1NPaADSMPHuAACmD_T0h9s249.jpg" target="_blank"></a>

錄入資訊,這裡我們隻要建立一個基本的域,其他的都可以登入到圖形界面去管理

Vi init.ldif

Dn: dc=abc,dc=com

Objectclass: dcobject

Objectclass:organization

Dc: abc

導入指令

/usr/local/openldap/bin/ldapadd –x –W –D “cn=admin,dc=abc,dc=com” –f init.ldif

Openldapadmin配置

Tar zxvf openldapadmin-1.2.3.tar.gz

Cd openldapadmin-1.2.3

mv phpldapadmin-1.2.3 /var/www/localhost/htdocs/phpldapadmin –r

cd /var/www/localhost/htdocs/phpldapadmin

cp config/config.php.example config/config.php

登入phpldapadmin,用上面設定的登入密碼登入

<a href="http://s3.51cto.com/wyfs02/M02/24/6E/wKioL1NPaArwpo-1AAIHOxybFMY470.jpg" target="_blank"></a>

點選建立一個新條目,如下圖是我們可以建立的内容

<a href="http://s3.51cto.com/wyfs02/M01/24/6E/wKiom1NPaE7xGQInAAInhLkJgWg596.jpg" target="_blank"></a>

Nis配置參考文檔

見附件

用戶端的配置

Emerge pam_ldap nss_ldap

修改驗證,先看下pam.d下面檔案

<a href="http://s3.51cto.com/wyfs02/M00/24/6E/wKioL1NPaDSCTfL0AAEadEEyF38220.jpg" target="_blank"></a>

Vi system-logon

<a href="http://s3.51cto.com/wyfs02/M02/24/6E/wKiom1NPaGjjRe0jAAHGgs2W4k8002.jpg" target="_blank"></a>

Vi system-remote-login

<a href="http://s3.51cto.com/wyfs02/M01/24/6E/wKioL1NPaE6Bh1tEAABgZ7YRT9g132.jpg" target="_blank"></a>

Vi sshd

現在我們可以去phpldapadmin裡去添加一個賬号,然後去用戶端測試

Ldap統一驗證做的不是很好,無論配置還是使用都有一段差距,不過linux下好像沒更好的統一認證軟體了

Samba統一認證

Samba的安裝

Emerge –av samba

修改samba配置檔案

Cp /etc/samba/smb.conf.default /etc/samba/smb.conf

Vi smb.conf

主要就是這些了

<a href="http://s3.51cto.com/wyfs02/M01/24/6E/wKiom1NPaNvCLrYuAAESNvyFCkk770.jpg" target="_blank"></a>

另外加了一個public目錄,測試用,如下

<a href="http://s3.51cto.com/wyfs02/M01/24/6E/wKiom1NPaOiD6kFvAACO29tVqNA975.jpg" target="_blank"></a>

拷貝schema檔案到ldap目錄,這個檔案目錄我沒找到,直接解了一個源碼包做了,在samba源碼包的example/LDAP下,操作如下:

Cp samba.schema /usr/local/openldap/etc/openldap/schema

并修改sladp配置檔案,添加samba子產品支援

<a href="http://s3.51cto.com/wyfs02/M00/24/6E/wKioL1NPaM-ALj_tAALJGxU86Dk235.jpg" target="_blank"></a>

配置samba管理者密碼

Smbpasswd –w $PASSWORD

登入phpldapadmin界面,看到多出了兩個選項

<a href="http://s3.51cto.com/wyfs02/M00/24/6E/wKioL1NPaNzhkPwmAACZBaMD0DE967.jpg" target="_blank"></a>

而且samba domain按鈕也被激活

<a href="http://s3.51cto.com/wyfs02/M02/24/6E/wKiom1NPaRij5SM_AAIk4qrN9HE630.jpg" target="_blank"></a>

添加一個samba使用者

Smbpasswd –a $USERNAME

條件是該使用者必須存在

然後我們就可以用這個賬号去samba伺服器了,并且在phpldapadmin裡可以管理這個賬号

<a href="http://down.51cto.com/data/2364313" target="_blank">附件:http://down.51cto.com/data/2364313</a>

本文轉自 chengchow 51CTO部落格,原文連結:http://blog.51cto.com/chengchow/1397102,如需轉載請自行聯系原作者

繼續閱讀