系統平台:
服務端:RHEL6.3x86 / 192.168.1.125
用戶端:RHEL6.3x86 / 192.168.1.120
請注意:SELinux和防火牆都沒開啟!
一、伺服器配置
1.軟體安裝
安裝LDAP
- yum install openldap openldap-servers openldap-clients
安裝NFS服務
- yum install nfs-utils nfs-utils-lib rpcbind
2.配置LDAP
(1)備份配置檔案
- cd /etc/openldap
- mv slapd.d slapd.d.bak
注:該配置暫時用不到,一定要更名,否則LDAP不會讀取slapd.conf配置檔案而無法啟動。
(2)修改主配檔案slapd.conf
在6.3平台下預設沒有/etc/openladp/slapd.conf,模版檔案在/usr/share/openldap-servers/slapd.conf.obsolete,拷貝過來就行
- cd /etc/openldap
- cp /usr/share/openldap-servers/slapd.conf.obsolete slapd.conf
- chown ldap.ldap slapd.conf
在以前的版本中在/etc/openladpcp slapd.conf.bak slapd.conf
這裡使用的域名為:example.com,修改slapd.conf如下:
注:在rootpw與你的密碼字元之間要隔兩個Tab的位置,否則密碼報錯(valid(49)錯誤)。
這裡附上slapd.conf的所有内容,因為在RHEL6.3平台下測試的時候,安裝完了,找不到slapd.conf.bak的配置檔案,網上很多生成slapd.conf的方法,我這裡直接貼出:
- include /etc/openldap/schema/corba.schema
- include /etc/openldap/schema/core.schema
- include /etc/openldap/schema/cosine.schema
- include /etc/openldap/schema/duaconf.schema
- include /etc/openldap/schema/dyngroup.schema
- include /etc/openldap/schema/inetorgperson.schema
- include /etc/openldap/schema/java.schema
- include /etc/openldap/schema/misc.schema
- include /etc/openldap/schema/nis.schema
- include /etc/openldap/schema/openldap.schema
- include /etc/openldap/schema/ppolicy.schema
- include /etc/openldap/schema/collective.schema
- allow bind_v2
- pidfile /var/run/openldap/slapd.pid
- argsfile /var/run/openldap/slapd.args
- database bdb
- suffix "dc=example.com"
- checkpoint 1024 15
- rootdn "cn=admin,dc=example.com"
- rootpw 123456
- directory /var/lib/ldap
- index objectClass eq,pres
- index ou,cn,mail,surname,givenname eq,pres,sub
- index uidNumber,gidNumber,loginShell eq,pres
- index uid,memberUid eq,pres,sub
- index nisMapName,nisMapEntry eq,pres,sub
- database monitor
- access to *
- by dn.exact="cn=admin,dc=example.com" read
- by * none
這裡已經去掉了所有的注釋行以及空行了,友善浏覽。
(3)建立資料庫檔案
- cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG
- chown ldap.ldap /var/lib/ldap/DB_CONFIG
我們可以看一下/var/lib/ldap目錄下是沒有其他檔案的(如果該伺服器從沒部署過LDAP)
(4)服務測試
可以看到/var/lib/ldap目錄下多了很多檔案。
(5)添加認證使用者
這裡添加兩個系統使用者user1、user2,直接使用useradd添加,并配置密碼,這個過程就省略了,下面直接說把使用者資料導入到LDAP資料庫。
(6)安裝遷移工具migrationtools以及使用者資料導入
安裝
- yum install migrationtools
修改域名,修改配置檔案/usr/share/migrationtools/migrate_common.ph,如圖
在該目錄下面建立基本資料庫模版檔案
- /usr/share/migrationtools/migrate_base.pl > base.ldif
需要說明的是,ldif檔案隻是模版檔案,并不是資料庫檔案,随便放在哪個目錄下。
base.ldif檔案内容如下
- 建立使用者資料庫模版:
- ./migrate_passwd.pl /etc/passwd user.ldif
需要清除不必要的内容,留下user1和user2等使用者,如下所示
建立使用者組檔案
- ./migrate_group.pl /etc/group group.ldif
内容:
資料的導入,利用剛剛建立的三個模版檔案導入資料
- ldapadd -D "cn=admin,dc=example.com" -W -x -f base.ldif
- ldapadd -D "cn=admin,dc=example.com" -W -x -f user.ldif
- ldapadd -D "cn=admin,dc=example.com" -W -x -f group.ldif
執行ldapadd指令時會需要要求輸入密碼,就是開頭在slapd.conf裡配置的使用者密碼。另外要注意執行的順序:base.ldif、user.ldif、group.ldif,否則會報錯,導緻資料導入失敗或者導入不進去。
(7)配置基于NFS的LDAP使用者主目錄
目錄輸出配置:
編輯配置檔案/etc/exports,内容如下
- /home *(rw,sync)
啟動服務
注意先啟動rpcbind,否則NFS出錯起不來。啟動後檢視下端口:
389端口是LDAP,這裡是沒有開啟SSL,2049是NFS。
服務端的配置到此就結束了,下面配置用戶端。
二、用戶端配置
1.開啟LDAP驗證
終端執行指令authconfig-tui,也可以setup
選擇LDAP驗證
下一步選擇伺服器以及域名
OK,然後啟動SSSD服務。
(2)配置autofs
修改/etc/auto.master,添加/home auto.nfs到末行
然後在/etc目錄下建立檔案auto.nfs,添加如下内容
- * -fstype=nfs,rw,sync 192.168.1.125:/home/&
“&”這個符号表示代表的使用者名。
OK,啟動autofs服務
- service autofs start
如果用戶端沒有安裝autofs使用yum install autofs安裝即可
三、用戶端測試
四、相關說明
在整個實驗中,提及一點,比較重要的:
有多個配置檔案需要配置域名,正常有以下兩種寫法
dc=example,dc=com
第二種
dc=example.com
需要說明的是,不管哪一種,有沒有差別不說了,統一使用一種就行,避免錯誤。其餘的錯誤歡迎大家一起讨論。
注:
1.在rootpw與你的密碼字元之間要隔兩個Tab的位置,否則密碼報錯(valid(49)錯誤)。
2.若有開啟SElinux和防火牆,需要做一下配置,将一下三項在伺服器中的sebool設定成on:
配置SElinux
virt_use_nfs --> on
xen_use_nfs --> on
use_nfs_home_dirs –>on
配置防火牆
#iptables -I INPUT -p tcp -m tcp --dport 2049 -j ACCEPT
#service iptables save //儲存防火牆配置項
#service iptables restart //重新啟動防火牆
轉載于:https://blog.51cto.com/luyx30/1220819