国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
LDAP 整合—— svn、samba、vsftpd

LDAP 整合—— svn、samba、vsftpd --用戶密碼同步(番茄蛋——Rookie 2009/3/27)  

2009-03-27 10:16:22|  分類: subversion |  標(biāo)簽:ldap  整合  +  samba  vsftpd   |字號 訂閱

 

前 言  

    終于完成了,由于自己菜的原因,這個整合花了我好多時間?。∫婚_始UID同步,但密碼不同步,現(xiàn)在密碼都是用smbpasswd 同步管理的。現(xiàn)在把自己的成果分享給大家,哪里寫錯或解釋錯請糾正,有問題可在BLOG中留言,我看到后第一時間會回復(fù)的。

 

安裝前準(zhǔn)備

       本教程的系統(tǒng)平臺:centOS 5.1 ,所使用到的全部包都用yum 來安裝的,也是目前官方源上最新的版本!

 

       首先來安裝需要的包

# yum install openldap* subversion* vsftpd* samba*

 

       其實可以用光盤做源來安裝,安裝完后再用 yum update 來更新這些包,這是最快的。

       安裝完成后檢查一下

# rpm -qa |grep openldap

openldap-servers-2.3.27-8.el5_2.4

openldap-devel-2.3.27-8.el5_2.4

openldap-servers-sql-2.3.27-8.el5_2.4

openldap-2.3.27-8.el5_2.4

openldap-clients-2.3.27-8.el5_2.4

 

rpm -qa |grep subversion

subversion-1.4.2-2.el5

subversion-perl-1.4.2-2.el5

subversion-ruby-1.4.2-2.el5

subversion-javahl-1.4.2-2.el5

subversion-devel-1.4.2-2.el5

 

# rpm -qa |grep vsftpd

vsftpd-2.0.5-12.el5

 

# rpm -qa |grep samba

samba-common-3.0.28-1.el5_2.1

samba-swat-3.0.28-1.el5_2.1

samba-client-3.0.28-1.el5_2.1

system-config-samba-1.2.39-1.el5

samba-3.0.28-1.el5_2.1

 

OPENLDAP配置

 

復(fù)制samba.schema ldap 的安裝目錄下的schema 目錄,以便ldap 整合samba

# cp /usr/share/doc/samba-3.0.28/LDAP/samba.schema /etc/openldap/schema/samba.schema

 

       復(fù)制DB_CONFIG數(shù)據(jù)文件到ldap指定的數(shù)據(jù)目錄,默認(rèn)在/var/lib/ldap

# cp /etc/openldap/DB_CONFIG.example /var/lib/ldap/DB_CONFIG

 

       開始編輯openldapconfig 文件

# vim /etc/openldap/slapd.conf

       include         /etc/openldap/schema/XXX.schema 下添加以下一行

include         /etc/openldap/schema/samba.schema                    #加載samba模塊

 

suffix、rootdn、rootpw修改為,

suffix          "dc=rookie,dc=com"                      #基本dc 信息

rootdn          "cn=root,dc=iaspec,dc=com"         #管理員信息

rootpw          iaspec123                                          #管理員密碼,默認(rèn)已被注釋,可去掉’#’

 

       OK,保存退出!

 

       導(dǎo)入初始數(shù)據(jù)

請自己創(chuàng)建一個初始數(shù)據(jù)的文件

# vim /data/data.ldif

dn: dc=rookie,dc=com

objectclass: dcObject

objectclass: organization

o: company

dc: rookie

 

dn: cn=root,dc=rookie,dc=com

objectclass: organizationalRole

cn: root

 

保存退出后導(dǎo)入剛剛創(chuàng)建的數(shù)據(jù)(導(dǎo)入前先啟動ldap

# ldapadd -x -D "cn=root,dc=rookie,dc=com" -w root123 -f /data/data.ldif

 

看到以下信息就證明導(dǎo)入成功了

adding new entry "dc=rookie,dc=com"

adding new entry "cn=root,dc=rookie,dc=com"

 

 

      

再創(chuàng)建一個ou

# vim ou.ldif

 

dn: ou=user,dc=rookie,dc=com

objectClass: top

objectClass: organizationalUnit

ou: user

 

再導(dǎo)入

# ldapadd -x -D "cn=root,dc=rookie,dc=com" -w root123 -f /data/ou.ldif

 

添加ldap 系統(tǒng)日志

# vim /etc/syslog.conf

 

       在最后添加一行

local4.*                 /var/log/ldap.log

       保存退出后重啟syslog,OK!

 

 

VSFTPD 配置

 

       這個服務(wù)沒什么設(shè)置的,簡單修改一下配置文件

# vim /etc/vsftpd/vsftpd.conf

 

       安全考慮,把匿名關(guān)閉

anonymous_enable=NO

 

       開啟ftp

xferlog_file=/var/log/vsftpd.log            把默認(rèn)注釋“#”去掉

 

       在文件最底添加以下幾行

local_root=/data                   #作用是指定用戶登錄后的目錄

chroot_local_user=YES         #用戶不能離開自家目錄

 

       Ok,保存退出!

 

 

SAMBA 配置

 

       編輯smb 的配置文件

# vim /etc/samba/smb.conf

       修改以下行

workgroup = WORKGROUP                             #設(shè)定工作組

passdb backend = ldapsam:ldap://127.0.0.1         #指定用戶驗證的LDAP服務(wù)器地址

      

       添加以下行

ldap admin dn = "cn=root,dc=rookie,dc=com"     #指定管理員

ldap suffix = dc=rookie,dc=com                        #指定搜索后綴

ldap user suffix = ou=user                                 #指定信息存放的目錄路徑

ldap delete dn = no                                           #不允許刪除DN

log file = /var/log/samba/smbd.log                      #添加samba 日志文件

 

       保存退出,把cn=root,dc=rookie,dc=com 管理員的密碼保存到secrets.tdb中,以便samba ldap 通訊 

格式:smbpasswd –w [密碼]

# smbpasswd -w root123

 

       如果我需要把某個文件夾共享出來,共享名為share,可以在smb.conf 最下面加上

 

[share]

        comment = share files           #目錄的描述

        path = /home/file           #共享的目錄路徑

        browseable = yes          #是否在瀏覽器中顯示目錄

        writable = yes               #是否有寫的權(quán)限

 

 

 

SUBVERSION 配置

 

       svn 不需要改配置文件,只需要建了資料庫和導(dǎo)入數(shù)據(jù)就行了!

 

創(chuàng)建資料庫

# svnadmin create /data/repository

       當(dāng)看到/data/repository 目錄下自動生成了幾個文件就證明資料庫創(chuàng)建成功了!

 

       把數(shù)據(jù)導(dǎo)入到SVN的資料庫

# svn import /data/program/ file:///data/repository -m "program data"

       說明一下,前面的路徑是你要導(dǎo)入數(shù)據(jù)的路徑,后面的路徑是你前面創(chuàng)建的資料庫路徑,-m 后面只是一個描述文字。

 

 

其它 配置

 

authconfig-tui設(shè)置】

 

運行# authconfig-tui

user information 選擇 [Use LDAP]

authentication 選擇 [Use MD5 Passwords] [Use Shadow Passwords] [Use LDAP Authentication] [Use SMB Authentication]

 

下一步之后,LDAP Setting 框中的 Base DN 填入服務(wù)器的DN

dc=rookie,dc=com

 

再下一步,SMB Settings 柜中Servers 填入服務(wù)器IP

127.0.0.1

 

SELINUX關(guān)閉】

 

       因為SELINUX開啟的原因,可能會有不少出錯,現(xiàn)在把SELINUX關(guān)閉

# vim /etc/selinux/config

       SELINUX=enforcing 改成 SELINUX=disabled

保存退出,關(guān)閉了selinux 后要重啟才能生效。

 

       除了關(guān)閉selinux ,使用某些服務(wù)的時候還是有限制,如果出現(xiàn)限制問題,查看自己Firewall 里相應(yīng)的端口有沒有打開,從安全角度上看,做為服務(wù)器Firewall 是不能關(guān)的,如果作為配置學(xué)習(xí),可以暫時把Firewall 關(guān)閉。

 

apache 設(shè)置】

 

       修下一下apache 的配置,到時在LDAP中添加一個UID用戶,方便在瀏覽器中瀏覽svn 的庫文件(這一步可有可無)。

# vim /etc/httpd/conf/httpd.conf

在最后的位置加上

 

<Location /svn>

DAV svn                                     //開啟sbuversion

SVNPath /data/ repository            //庫的目錄

AuthType Basic                           //使用基本的密碼認(rèn)證

AuthBasicProvider ldap               

AuthzLDAPAuthoritative off

AuthLDAPURL "ldap://127.0.0.1:389/ou=user,dc=rookie,dc=com "   //LDAP訪問目錄

AuthName "read only"                  //網(wǎng)站說明文字

Require valid-user                        //允許合法用戶登錄

</Location>

 

 

安裝一個組件,否則啟動httpd 的時候會報以下錯誤

 

Starting httpd: Syntax error on line 993 of /etc/httpd/conf/httpd.conf:

Unknown DAV provider: svn

 

# yum install mod_dav_svn

 

       現(xiàn)在svn整合了apache 了,但不是標(biāo)題說到的那種密碼同步的整合,這一小節(jié)的整合目的只是提供用戶能在瀏覽器上查看一下版本庫的資料,前提是在openldap 的客戶端添加一個uid,才能在瀏覽器中登錄svn資料庫。

 

ssh安裝】

 

       安裝SSH的目的是希望svn 能與ssh 整合成一個訪問模式,通過svn+ssh 訪問才能同步系統(tǒng)用戶的用戶名和密碼。

# yum install ssh*

 

       簡單配置一下ssh

# vim /etc/ssh/sshd_config

 

#PermitEmptyPasswords no  改成       PermitEmptyPasswords no    #不允許空密碼登錄

保存退出

 

【開機自動啟動服務(wù)】

 

       每次開始都要server XXX start 多麻煩啊,不過,可以把他們設(shè)成開機自動運行

# ntsysv

 

       啟動服務(wù)管理窗口后,在以下服務(wù)前的[]加上*號(按空格鍵)

[*]httpd

[*]ldap

[*]smb

[*]vsftpd

[*]sshd

 

       OK后退出

       隨便提一下,有時開啟會在加載IPV6的時候等很久

applying ip6tables firewall rules:     

       我們其實可以把IPV6停了,把ip6tables 前面的* 去掉就行了!

[ ]ip6tables

 

【用戶添加】

 

       由于 SAMBA 的用戶由 smbpasswd 來管理,而在LDAP中新建的svn UID用戶的密碼又不能由smbpasswd 來設(shè)置,所以只能用戶和密碼都由 smbpasswd 來管理了,換句話說,用戶和密碼都在終端里創(chuàng)建的。

 

       SAMBA用到的用戶必須是系統(tǒng)用戶,所以建SAMBA用戶前要先建系統(tǒng)用戶

       也為了方便管理,我們把使用在subversion,samba,vsftpd的用戶放在同一個組里,有需要的話也可以按照部門來分

# groupadd team                         建立一個team 的組

 

# useradd rookie –g team             建立一個屬于 team 組的 rookie 用戶

 

新建一個 rookie 的系統(tǒng)用戶后,就可以新建一個相應(yīng)的samba 用戶

# smbpasswd –a rookie

 

       輸入密碼后,提示 Added user rookie ,證明成功建立了smb用戶

 

       如果需要修改密碼就輸入 smbpasswd [用戶],就能修改相應(yīng)的用戶密碼,而且同時把subversion、vsftpd 的登錄密碼也修改了

 

【用戶修改密碼+安全設(shè)置】

 

       希望用戶能自行修改密碼,但又不希望他能訪問服務(wù)器其它目錄。

 

通過svn+ssh 登錄的用戶同時也可以通過遠程登錄服務(wù)器終端,不能直接限制用戶拒絕登錄終端,否則svn+ssh 登錄也失敗了,但可以修改一下用戶的配置文件,使他們通過終端登錄服務(wù)器后只能修改用戶密碼,修改完成后就馬上退出。

 

       轉(zhuǎn)到home 目錄下的某一用戶目錄里,ls –a 可以發(fā)現(xiàn)幾個隱藏的文件,執(zhí)行以下命令可以實現(xiàn)一登錄服務(wù)器就修改當(dāng)前用戶密碼(注意,bash 前有個小點)

# echo "smbpasswd">>.bash_profile

 

exit 放到.bash_profile文件里的最后一行,實現(xiàn)修改完密碼后就退出

# echo "exit">>.bash_profile

 

       現(xiàn)在,被加入exit 的用戶通過終端登錄服務(wù)器,一登錄就退出了。但為了不被該用戶刪除和修改這個配置文件,把home 目錄下所有的.bash_profile 改成只讀

# find /home -name .bash_profile |xargs chmod 400

 

【解決samba、vsftpd 中文亂碼】

 

       如果在samba 中傳了中文名的文件,在ftp 中會顯示亂碼。因為ftp 使用的是gbk 編碼,samba 使用的是utf-8 編碼,windows 可以識別gbk ,所以現(xiàn)在需要把samba 轉(zhuǎn)成gbk 編碼。

 

# vim /etc/samba/smb.conf

       [global]里加上以下三行

display charset = gbk

dos charset = gbk

unix charset = gbk

 

       如果原來的samba 已經(jīng)存在一些文件的話,可以用convmv 轉(zhuǎn)換一下,前提是要先安裝convmv

# yum install convmv

 

       進入到samba 存放文件的目錄,運行

# convmv -f utf8 -t gbk --notest -r ./

 

       重啟smb 后就不會存在亂碼的問題了。

【磁盤配額】

 

       quota 前提是所做的分區(qū)是單獨的一個partition,現(xiàn)在我希望samba 一個分區(qū),ftp 一個分區(qū),而且samba 的用戶限定他們1G的空間,ftp 限定他們500M的空間

 

       添加file system quota 支持

# vim /etc/fstab

 

       在希望做配額的分區(qū)一行中,defaults 后加上” ,usrquota,grpquota” (不包括兩個雙引號),切記不要寫錯,寫錯的話有可能會重啟加載分區(qū)的時候失敗而無法開機的。

/dev/md1         /                ext3    defaults        1 1

/dev/md4         /var             ext3    defaults        1 2

/dev/md3         /home            ext3    defaults,usrquota,grpquota        1 2

/dev/md2         /srv              ext3    defaults        1 2

/dev/md0         /boot             ext3    defaults        1 2

/dev/md5         /ftp               ext3    defaults,usrquota,grpquota      1 2

 

       添加完后,確定無誤,可以選擇重啟電腦reboot umount 卸載quota 分區(qū),再mount quota 分區(qū) mount –o remount [分區(qū)],這三種方法使quota 生效。

 

       使用quotacheck 掃描一下quota 分區(qū)

# quotacheck -avug

 

       成功的話,在相應(yīng)的quota 分區(qū)下會多了aquota.group  aquota.user 兩個文件

       現(xiàn)在可以啟動quota

# quotaon -avug

/dev/md5 [/ftp]: group quotas turned on

/dev/md5 [/ftp]: user quotas turned on

 

       看到turned on 就證明啟動成功了!

       需要開機自動運行quota的,輸入以下命令,不運行就沒有配額功能,即使設(shè)置了用戶配額,用戶在沒有開啟quota 的情況下所存的數(shù)據(jù)不會記錄在quota blocks

# echo "quotaon -avug">>/etc/rc.d/rc.local

 

       現(xiàn)在開始用戶磁盤空間限制了

edquota –u [用戶]                              #修改用戶配額

edquota –p [用戶] [用戶2]                 #[用戶]配額復(fù)制至[用戶2]

edquota –t                                         #設(shè)置寬限時間

edquota –g []                                  #設(shè)置組配額

 

       如現(xiàn)在需要配置rookie 用戶的配額,samba 分區(qū)1G,ftp 分區(qū)500M,在hard 下改相應(yīng)的數(shù)字(KB為單位)

# edquota –u rookie

Disk quotas for user zhang.hao (uid 10026):

  Filesystem             blocks    soft    hard  inodes   soft   hard

  /dev/md3               16       0       0       4      0     0

  /dev/md5               20       0       0       1      0     0

 

改為

Disk quotas for user zhang.hao (uid 10026):

  Filesystem             blocks    soft    hard  inodes   soft   hard

  /dev/md3               16       0  1000000      4      0     0

  /dev/md5               20       0   500000      1      0     0

 

       如果需要軟配額可以設(shè)置soft 項,因為我不需要,所以沒設(shè)。

       之后的用戶如果限額一樣,可以通過edquota –p [用戶] [用戶2] 命令來復(fù)制限額。

開始測試

 

       要安裝的都安裝了,想知道整合是否成功,reboot后測試一下就可以知道了!

       萬事俱備,只欠測試了!

 

SAMBA

測試】

 

       在本機或其它已安裝

samba-client linux 的客戶端上輸入

# smbclient -U rookie -L 10.44.100.160

       再輸入相應(yīng)的密碼,當(dāng)你看到一些共享的文件時候,證明登錄成功了!

 

Domain=[LOCALHOST] OS=[Unix] Server=[Samba 3.0.28-1.el5_2.1]

 

        Sharename       Type      Comment

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

        share           Disk      share files

        IPC$            IPC       IPC Service (welcome)

        rookie          Disk      Home Directories

Domain=[LOCALHOST] OS=[Unix] Server=[Samba 3.0.28-1.el5_2.1]

 

        Server               Comment

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

 

        Workgroup            Master

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

        WORKGROUP           

 

 

       WINDOWS平臺上更容易,在開始->運行中輸入要訪問的samba 服務(wù)器IP

//10.44.100.160

       提示輸入用戶名和密碼的時候,正常輸入剛剛設(shè)置的用戶名和密碼,能正常登錄就成功了!

      

 

 

VSFTPD 測試】

 

       在本機或其它linux 終端和windows DOS 提示符下輸入

# ftp 10.44.100.160

       正常填寫用戶名和密碼,提示Login successful. 就登錄成功了!

 

SUBVERSION 測試】

 

       在本機或其它安裝了SVNlinux 機器上輸入

# svn list svn+ssh://rookie@10.44.100.160/data/repository

 

       其中rookie 是登錄的用戶名,10.44.100.160是登錄的服務(wù)器IP,后面的是庫文件的路徑

       密碼輸入正常后就能顯示庫中的文件

 

       為了便于使用,介紹一款常用的svn 客戶端軟件 TortoiseSVN,目前最新版本是

 

       安裝完成后,隨便在一個文件夾點擊右鍵,你會發(fā)現(xiàn)多了“SVN檢出”和 TortoiseSVN”兩個選項,選擇“TortoiseSVN”,再選擇“版本庫瀏覽器”

 

       彈出一個要求你輸入URL的新窗口,輸入svn服務(wù)器的URL,注意,前面要加上svn+ssh

svn+ssh://rookie@10.44.100.160/data/repository

 

       有點麻煩的是,要輸入幾正確的密碼才能登錄的!但檢收,更新,提交等操作就只需要輸入一次密碼就OK了!

       密碼輸入后,如果能顯示相關(guān)的庫文件就證明認(rèn)證成功了!

      

 

       LDAP 整合教程到此完成,隨著實際使用的需要和技術(shù)的提高,我會不斷更新教程!

^_^

 

 

注:

部分論壇可能沒上傳圖片,如需查看圖片可瀏覽我的BLOG

http://blog.163.com/buypc_hao/blog/static/1079207752009227101622780/edit/

 

E-mail聯(lián)系我,有PDF教程

 

更新于:2010年11月18日
后來發(fā)現(xiàn)[用戶修改密碼+安全設(shè)置]章節(jié)中,即使把.bash_profile 改權(quán)限也可以被用戶刪除的.因為linux的權(quán)限是看上一級目錄的,home目錄的用戶有700的權(quán)限,所以既然home目錄下的文件只有400,也可以被用戶刪除,因為上級目錄已經(jīng)賦予700的權(quán)限給下下級的目錄和文件了.
為避免用戶修改.bash_profile 登錄服務(wù)器,可使用chattr +i 這個命令為文件附加一個不能修改和刪除的權(quán)限,chattr +i 后管理員也無權(quán)刪除,只有chattr -i 把i 屬性去掉才可以.
所以,我們應(yīng)該把
# find /home -name .bash_profile |xargs chmod 400
改為
# find /home -name .bash_profile |xargs chattr +i

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
ldap samba_大哥
CentOS下用openldap管理samba和賬號登錄
OpenLdap的安裝及基本管理 | IT人生錄
windows下搭建并配置OpenLDAP服務(wù)器
openldap
openLDAP操作命令
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服