天天看點

yum實作svn+apache+ssl整合

    前面有一篇配置獨立伺服器svn方式,這次将svn與apache整合同時為了保證資料傳輸的安全啟用ssl加密。将svn+apache+ssl整合到一起。

    為了使大家快速安裝,這裡使用全部yum安裝(安裝之後的配置與源碼相同)。

    安裝

   我的平台是 redhat 5.4 ,首先大家需要建構一個yum環境

   # mkdir /media/cdrom/        

# mount /dev/cdrom /media/cdrom/    --建立一個檔案夾并把系統CD光牒挂在這個檔案上

修改yum配置檔案

 #vim /etc/yum.repo.d/server.repo  加入以下内容

[base]

name=Server

baseurl=file:///media/cdrom/Server

enable=1

gpgcheck=0  安裝軟體

# yum install httpd mod_dav_svn subversion mod_ssl    檢視是否安裝成功

  #svn --version 如果出現版本号如

yum實作svn+apache+ssl整合

則說明svn安裝成功

 檢視httpd配置檔案/etc/httpd/conf/httpd.conf

如果找到

yum實作svn+apache+ssl整合

這說明apache子產品安裝正确

配置

  1.建立版本庫

    # mkdir -pv /svn/date   --建立主目錄

    # svnadmin create /svn/date/www  --建立倉庫

  2.更改權限

    # chmod -R 700 /svn/date/  --修改庫的其他人無權限

    # chown -R apache:apache /svn/date/   --修改庫的所屬

  3.更改apache配置

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

   加入以下内容

   <Location /svn>

DAV svn

SVNParentPath /svn/date

AuthType Basic

AuthName "svn"

AuthUserFile /svn/passwd

AuthzSVNAccessFile /svn/auth.conf

Require valid-user

</Location>

                                   #  

<Location /svn>   表示你的通路目錄

  #  

DAV svn DAV   子產品名稱(我們這裡也就是svn)

  #  

  我們的庫檔案夾

  # 

AuthType Basic   驗證方式

     AuthName "svn"   驗證名稱

    AuthUserFile /svn/passwd   驗證使用者的檔案 

    AuthzSVNAccessFile   /svn/auth.conf   使用者權限檔案

    Require valid-user  

  這項是說明/svn/passwd檔案内說有使用者都可以通路

  4.建立apache賬戶

   第一次 # htpasswd -c /svn/passwd neo -c 表示建立一個檔案以後就不需要加了

   # htpasswd /svn/passwd tina

    # vim /svn/auth.conf 編輯權限檔案 加入以下内容

   [groups]

admin = neo,tina

[/]

neo=rw

tina=r [groups]使用者組定義 [/]表示對主目錄的權限設定 可以看出neo是讀寫,tina是隻讀。

# chown -R apache:apache /svn/ 再次修改檔案所屬

 這樣我們apache+svn就搭建好了

 啟用服務: 

# service httpd start

# svnserve -d -r /svn/date/    svnserver 的選項 -d  表示以守護程序方式開啟 -r 後面跟庫目錄

測試

yum實作svn+apache+ssl整合

導入檔案

yum實作svn+apache+ssl整合

輸入賬戶密碼

yum實作svn+apache+ssl整合

傳輸完成。

  這樣子apache+svn就可以使用了,但是我們的http在網絡上什麼都是明文傳遞的 這樣我們的資料是非常不安全的,是以我們将這個伺服器與ssl整合到一起

  1.生産密鑰檔案

  #cd /etc/httpd/conf

  # openssl genrsa -out httpd.key 1024  生成一個私鑰檔案

  # openssl req -new -key httpd.key -out httpd.pem -days 3650 -x509

  利用這個私鑰生成一個自簽證書(因為svn使我們公司内部人員使用)

yum實作svn+apache+ssl整合

  再紅線處依次填寫:國家,省份,城市,公司,部門,網絡名,郵箱完成。

 修改apache使ssl生效

 # vim /etc/httpd/conf.d/ssl.conf

yum實作svn+apache+ssl整合

在紅線處 ×××和私鑰位址 

# vim /etc/httpd/conf/httpd.conf 加入紅線那行(表示強制使用ssl連接配接)

yum實作svn+apache+ssl整合

重新開機apache.

yum實作svn+apache+ssl整合

浏覽器通路 https://192.168.127.5/svn/www

yum實作svn+apache+ssl整合

表示已經打開ssl連接配接了

連接配接svn時就需要用https了

加入開機啟動

# chkconfig httpd on

# vim /etc/rc.local 

yum實作svn+apache+ssl整合

加入紅線行

 到此apache+svn+ssl整合完成。

ps:一定要注意權限問題。

繼續閱讀