2011年10月7日 星期五

CentOS 5.6 LDAP Server + Samba Server

續上篇的安裝方式後。

接下來我們要開始應用LDAP Server。

因為公司環境的關係,讓我們只好拿很多台PC來架設Samba Server。

為了解決每台Server帳號同步的問題,所以我決定使用LDAP。
(雖然帳號同步也可以不靠LDAP就能決解,但我還是比較喜歡玩新東西)

首先我們依上續「CentOS 5.6 Install LDAP + phpldapadmin」安裝完後。

接下來我們可以使用phpldapadmin創使用者,或可以匯入本機使用者群組。

轉換使用者群組

1.先對LDAP Server建立People與Group
#cat << EOT | ldapadd -x -D "cn=admin,dc=ecc,dc=stu" -W
>dn:People,dc=ecc,dc=stu
>ou:People
>objectClass:organizationalUnit
>EOT


#cat << EOT | ldapadd -x -D "cn=admin,dc=ecc,dc=stu" -W
>dn:Group,dc=ecc,dc=stu
>ou:Group
>objectClass:organizationalUnit
>EOT



2.建立完該有的東西後,接下來下載MigrationTools套件來轉換帳號
#tar  -zxvf MigrationTools.tgz 
#mv MigrationTools-47 /usr/src/MigrationTool



3.轉換前置作業,更改 site-specific defaul
#vi /usr/src/MigrationTools/migrate_common.ph 
$DEFAULT_MAIL_DOMAIN="ecc.stu";                                   
$DEFAULT_BASE="dc=ecc,dc=stu";


4.開始轉換所有本機帳號、群組,格式為ldif
帳號轉換
#cd /usr/src/MigrationTools
#./migrate_passwd.pl /etc/passwd local.passwd.ldif

群組轉換
#./migrate_group.pl /etc/group local.group.ldif

開始匯入
#slapadd -v -l local.passwd.ldif

#slapadd -v -l local.group.ldif

5.將LDAP資料庫設定擁有者與群組給 ldap
#chown ldap:ldap /var/lib/ldap/*

6.啟動LDAP
#service ldap start

##可以測試一下剛剛所匯入的資料##
#ldapsearch -x -b "dc=ecc,dc=stu"
大致上都會成功

7.更改/etc下的ldap.conf
#vim /etc/ldap.conf
host 127.0.0.1
base dc=ecc,dc=stu
url ldap://127.0.0.1
bind_policy soft


##設定到這裡,LDAP大致上已經完成了,接下來我們準備安裝Samba Server##


安裝Samba Server整合LDAP Server

1.Install Samba Server
#yum -y install samba samba-client

2.安裝authconfig-tui (主要是設定LDAP Client)
#yum -y install authconfig

3.執行authconfig
#authconfig-tui
選擇緩衝區資訊、使用LDAP、使用MD5密碼、使用Shadow密碼、使用LDAP認證
按下一步
設定伺服器:ldap://(LDAP IP)/
基底 DN:dc=ecc,dc=stu

4.修改smb.conf
#vim /etc/samba/smb.conf
workgroup = WORKGROUP
server string = Samba Server Version %    v
netbios name = LB215-Drives
encrypt passwords = yes
unix charset = utf8
display charset = utf8
dos charset = cp950
.
.
.
log file = /var/log/samba/log.%m
max log size = 50
.
.
.
security = user
passdb backend = ldapsam:ldap://192.168.20.44/
ldap suffix = "ou=People,dc=ecc,dc=stu"
ldap admin dn = "cn=admin,dc=ecc,dc=stu"
ldap group suffix = "ou=Group,dc=ecc,dc=stu"
ldap user suffix = "ou=People,dc=ecc,dc=stu"
ldap delete dn = no
ldap ssl = no
.
.
.
local master = no
os level = 33
.
.
.
load printers = no
cups options = raw
.
.
.
map to guest = Bad User
.
.
.
[Drives]
comment = Drives
path = /home/samba/Drives
read only = yes
write list = @samba
create mask = 0774
directory mask = 0775

5.複製samba.schema到LDAP Server
#scp user@Samba.Server.IP:/usr/share/doc/samba-3.5.4/LDAP/samba.schema /etcopenldap/schema/


6.修改slapd.conf
#註解下列幾行                                                       
#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,su

#新增下列幾行                                                       
index  cn,sn,uid,displayName   pres,sub,eq
index  uidNumber,gidNumber   eq
index  sambaSID     eq
index  sambaPrimaryGroupSID   eq
index  sambaDomainName   eq
index  objectClass     pres,eq
index  default      sub

#新增下列幾行
access to attrs=userPassword,shadowLastChange
        by dn="cn=admin,dc=eecc,dc=stu" write
        by anonymous auth
        by self write
        by * none
access to *
        by dn="cn=admin,dc=eecc,dc=stu" write
        by * read

#儲存後離開
#重新啟動LDAP Server

7.將LDAP Server管理者帳號的密碼存入 /etc/samba/secrets.tdb
#smbpasswd -w



大致上只要上面的步驟就可以成功將Samba+LDAP安裝完成
如果沒有成功,不是你漏掉了,不然就是我漏掉了。


備註:
在安裝的過程中所遇上的一些問題記錄在此

1.遇上無法在/home目錄裡分享的資料夾
將目錄設定為777

如果出現tree connect failed: NT_STATUS_BAD_NETWORK_NAME
#setsebool -P samba_enable_home_dirs=1

那如果又出現一樣的訊息tree connect failed: NT_STATUS_BAD_NETWORK_NAME
#chcon -R -t samba_share_t /free (/free為分享的資料夾)



2.當使用者登不進samba所分享的資料裡時,可能原因如下
i.使用者帳號未新增到LDAP Server裡或未設定samba密碼
如果已新增到LDAP Server執行
#smbpasswd -a uid (uid為存在LDAP的帳號)




參考資料:








2011年8月17日 星期三

CentOS 5.6 Install LDAP + phpldapadmin

1.先安裝openldap
#yum install openldap*

2.安裝完畢後修改/etc/openldap/slapd.conf
#nano /etc/openldap/slapd.conf
修改下列三行
suffix "dc=ecc,dc=stu"
rootdn "cn=admin,dc=ecc,dc=stu"
rootpw {SSHA}GSN8+x6U/ALHK+BHpGr8oClc3iGX7Nrc

PS: 1.rootdn cn指的是管理帳號
2.rootpw 加密過的密碼可以透過slappasswd -h {SSHA} -s



3.設定完畢後執行下列指令
#cp /etc/openldap/DB_CONFIG.example /var/lib/ldap/DB_CONFIG


4.開啟LDAP
#service ldap start

5.新增dc根,admin使用者 


cat << EOT | ldapadd -x -D "cn=admin,dc=ecc,dc=stu" -W
# root object
>dn: dc=ecc,dc=stu
>objectclass: dcObject
>objectclass: organization
>o:ecc Company Ltd
>dc:ecc
>EOT


cat << EOT | ldapadd -x -D "cn=admin,dc=ecc,dc=stu" -W

# directory administrator
>dn: cn=admin,dc=ecc,dc=stu
>objectClass: simpleSecurityObject
>objectClass: organizationalRole
>cn: admin
>userPassword: {SSHA}GSN8+x6U/ALHK+BHpGr8oClc3iGX7Nrc
>description: Directory administrator
>EOT

PS:新增時所需密碼指的是rootpw設定的密碼



6.新增完畢可透過ldapsearch查尋
#ldapsearch -x -b 'dc=ecc,dc=stu'



phpldapadmin安裝

1.安裝httpd
#yum install httpd*

2.安裝php
#yum install php53*

3.開啟服務
#service httpd start

PS:可新增一個index.php測試安裝是否成功
--------------------------------------

--------------------------------------

4.下載phpldapadmin
http://phpldapadmin.sourceforge.net/wiki/index.php/Main_Page

PS:可透過wget下載

5.解壓縮到/var/www/html/

6.COPY設定檔
#cd /var/www/html/phpldapadmin/config/
#cp config.php.example config.php



安裝完成可在網址key上網址就可以開始使用

PS:登入的帳號就是剛剛設定的"cn=admin,dc=ecc,dc=stu"









2011年4月16日 星期六

CCNA Part I 2010/04/16

設定多久沒動作自動離開
exec-timeout 分 秒

1.設定控制 IOS
switch>enable
switch#conf t
switch(config)#enable {password xxx}
                                       {secret xxx}
switch(config)#exit



設定Router Fa 0/0 的IP

Router>enable
Router#conf t
Router(config)#int fa 0/0
Router(config-if)#ip add 192.168.0.254 255.255.255.0
Router(config-if)#no shut
Router(config-if)#show ip int brief
Router(config-if)#copy run start


設定Access

switch>enable
switch#conf t
switch(config)#line {con 0}
                                 {vty 0 4}
switch(config-line)#login
switch(config-line)#password xxx
switch(config-line)#exec-timeout 3 30
Ctrl+Z
switch#copy run start


新增vlan
switch#vlan database
switch(vlan)#vlan 2 name XXXX
switch(vlan)#exit

將port 加入 vlan
switch#conf t
switch(config)#int fa0/2
switch(config-if)#switchport mode access
switch(config-if)#switchport access vlan 2
Ctrl+Z
switch#show vlan

2011年3月29日 星期二

WinXP Apache整合Tomcat

安裝Apache與Tomcat, 網址如下:
Apache:
http://www.apache.org/

Tomcat:
http://tomcat.apache.org/

安裝完成後下載mod_jk模組,網址如下:
mod_jk.so:
http://tomcat.apache.org/connectors-doc/

本文章所用版本如下:
Apache 2.2.10
Apache Tomcat 6.0.20
mod_jk 1.2.28

首先將下載到電腦上的mod_jk.so模組copy到apache目錄下/modules

然後在apache錄目下的/conf下新增一個檔案名為 workers.properties

內容如下:

workers.tomcat_home="C:\Apache\Tomcat 6.0"  #為Tomcat本機路徑
workers.java_home="C:\Program Files\Java\jdk1.6.0_14"           #為JDK本機路徑
ps=\
worker.list=ajp13
worker.ajp13.port=8009
worker.ajp13.host=localhost
worker.ajp13.type=ajp13
worker.ajp13.lbfactor=1
worker.ajp13.cachesize=10
worker.ajp13.cache_timeout=600
worker.ajp13.socket_keepalive=1
worker.ajp13.socket_timeout=300


在到apache目錄下的conf子錄目下開始apache設定檔 httpd.conf

在設定檔最下方添加內容如下:

LoadModule jk_module modules/mod_jk.so
JkWorkersFile conf/workers.properties

# Options JSP Server
ServerAdmin admin@admin.net      #此為JSP管理者mail
DocumentRoot "C:/Apache/htdocs"     #此為JSP網頁本機路徑
ServerName localhost
DirectoryIndex index.html index.php index.jsp
JkRequestLogFormat     "%w %V %T"
JkMount  /*/servlet/* ajp13
JkMount  /*.jsp ajp13
JKMount  /*.action ajp13
# Options End


在httpd.conf檔案內容的上方找到<IfModule dir_module>的tag

內容會看到一行DirectoryIndex index.html index.htm

在將index.jsp添加進去


修改完在到Tomcat本機路徑下的conf子目錄

開啟sever.xml檔

找到<Host>................</Host>的tag

在tag內添內容如下:

<Context path="" reloadable="true" debug="0" docBase="C:\Apache\htdocs" crossContext="true"/>


以上內容修改完後,將Tomcat與Apache重新啟動

順序最好是Tomcat先重開。


在來就是測試是否安裝成功。

先將自已寫好的jsp網頁放到自已所設定的路徑後

打開瀏覽,網址輸入http://localhost:8080/index.jsp 開啟成功後

在輸入http://localhost/index.jsp 

如果兩個網址測試結果都一樣就代表整合成功。