Centos7 安裝配置svn https訪問
1、安裝 svn 及 依賴
Java代碼

成都創(chuàng)新互聯(lián)專注于企業(yè)網(wǎng)絡(luò)營銷推廣、網(wǎng)站重做改版、峨邊彝族網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、H5高端網(wǎng)站建設(shè)、商城系統(tǒng)網(wǎng)站開發(fā)、集團(tuán)公司官網(wǎng)建設(shè)、成都外貿(mào)網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性價(jià)比高,為峨邊彝族等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。
- yum install mod_dav_svn subversion
2、創(chuàng)建版本庫
Java代碼
- svnadmin create /data/svndata/rd
不出意外,此時(shí),可以用 svn://協(xié)議訪問了
3、安裝apache
Java代碼
- yum -y install httpd
4、修改第二步創(chuàng)建的版本庫配置文件
Java代碼
- [general]
- anon-access = none
- auth-access = write
- password-db = /data/svndata/passwd.conf #httpd鑒權(quán)使用
- authz-db = /data/svndata/authz.conf #svn版本庫權(quán)限文件
- realm = rd #版本庫
-
force-username-case = none
- [sasl]
-
use-sasl = true
-
min-encryption = 0
-
max-encryption = 256
5、創(chuàng)建第四步提到的鑒權(quán)文件并添加一個(gè)用戶
Java代碼
- touch /data/svndata/passwd.conf
- htpasswd -c /data/svndata/passwd.conf unclecode #添加第二個(gè)用戶的時(shí)候,不要-c,否則會(huì)被覆蓋
/usr/local/apache/bin/htpasswd /usr/local/svn/conf/svn_passwdfile username
sh腳本實(shí)現(xiàn)添加用戶
#!/bin/sh
if [ ! -n "$1" ];then
read -p "Enter create user' name:" name
/usr/local/apache/bin/htpasswd /usr/local/svn/conf/svn_passwdfile $name
else
/usr/local/apache/bin/htpasswd /usr/local/svn/conf/svn_passwdfile $1
fi
6、創(chuàng)建第四步提到的svn版本庫權(quán)限文件
Java代碼
- vi /data/svndata/authz.conf
- [groups]
- rd= unclecode
- [rd:/]
- @rd=rw
7、http 方式
Java代碼
- vi /etc/httpd/conf/httpd.conf
- Listen 8088
- vi /etc/httpd/conf.d/subversion.conf 或者直接將內(nèi)容寫在httpd.conf中,不新建本文件。
- <Location /svn>
- DAV svn
- SVNListParentPath on
- SVNParentPath /data/svndata
- AuthType Basic
- AuthName "Authorization"
- AuthUserFile /data/svndata/passwd.conf
- AuthzSVNAccessFile /data/svndata/authz.conf
- Require valid-user
- </Location>
- 啟動(dòng) apache: systemctl restart httpd.service
cat /etc/selinux/config SELINUX=enforcing to disabled - 啟動(dòng)svn :e -d -r /data/svndata/
8、http方式看效果
Java代碼
- http://127.0.0.1:8088/svn
- 輸入第五步創(chuàng)建的用戶名和密碼即可
9、https 方式
9.1、安裝openssl
Java代碼
- yum install mod_ssl openssl
9.2、生成證書
Java代碼
- cd /etc/pki/tls/private
- openssl genrsa -out svn_server.key 1024
- openssl req -new -key svn_server.key -out svn_server.csr
- 在建證書的時(shí)候 commonName必須輸入,而且在apache的配置文件里要一致,否則同步時(shí)報(bào)錯(cuò)。
- Httpd.conf 里ServerName svn.ht.com:9091
- cd /etc/pki/tls/certs
- openssl x509 -req -days 365 -in /etc/pki/tls/private/svn_server.csr -signkey /etc/pki/tls/private/svn_server.key -out svn_server.crt
9.3、配置apache ssl
Java代碼
- vi /etc/httpd/conf.d/ssl.conf
- SSLCertificateFile /etc/pki/tls/certs/svn_server.crt
- SSLCertificateKeyFile /etc/pki/tls/private/svn_server.key
如果改443端口呈,記得兩處。 - vi /etc/httpd/conf.d/subversion.conf //沒有就新建 或者直接將內(nèi)容寫在httpd.conf中
- <Location /svn>
- SSLRequireSSL
- DAV svn
- SVNListParentPath on
- SVNParentPath /data/svndata
- AuthType Basic
- AuthName "Authorization"
- AuthUserFile /data/svndata/passwd.conf
- AuthzSVNAccessFile /data/svndata/authz.conf
- Require valid-user
- </Location>
- 在</Location> 前添加一行 SSLRequireSSL
Java代碼
- vi /etc/httpd/conf/httpd.conf
- 最下面加2行
- LoadModule dav_svn_module modules/mod_dav_svn.so
- LoadModule authz_svn_module modules/mod_authz_svn.so
- LoadModule ssl_module modules/mod_ssl.so //安裝mod_ssl后自動(dòng)導(dǎo)入的。
10、重啟apache
Java代碼
- systemctl restart httpd.service
11、https方式看效果
Java代碼
- https://127.0.0.1:8088/svn
- 輸入第五步創(chuàng)建的用戶名和密碼即可
https 訪問:將如下三行取消注釋即可。
#Include conf/extra/httpd-ssl.conf
#SSLRequireSSL
#LoadModule ssl_module modules/mod_ssl.so
安裝apache時(shí)沒有安裝mod_ssl的解決辦法
為了使Apache支持https訪問,系統(tǒng)需要安有apache、openssl、mod_ssl.so
1、安裝openssl:
基本上系統(tǒng)都已經(jīng)安裝了,在/usr/bin/openssl下,直接使用openssl命令即可;如果系統(tǒng)未安裝,則下載openssl進(jìn)行安裝。
2、安裝mod_ssl.so:
現(xiàn)在Apache都自帶了這個(gè)模塊,默認(rèn)是不安裝的。安裝方式有兩種:靜態(tài)編譯和動(dòng)態(tài)加載。
使用 whereis openssl 命令獲取lib和include的路徑,
cd apache源碼路徑/modules/ssl
使用命令(apache_home/bin)apxs -i -a -D HAVE_OPENSSL=1 -I/usr/include/openssl/ -L/usr/lib64/openssl/ -c *.c -lcrypto -lssl –ldl
如果更改過svn端口,在訪問時(shí)要使用默認(rèn)的443端口。
即使指定端口Listen 9091 https訪問也不能帶端口。沒有搞明白為什么。
其它常用腳本
vim pre-commit
#!/bin/sh
REPOS="$1"
TXN="$2"
Make sure that the log message contains some text.
SVNLOOK=/usr/local/svn/bin/svnlook
#$SVNLOOK log -t "$TXN" "$REPOS" | \
grep "[a-zA-Z0-9]" > /dev/null || exit 1
#
Check that the author of this commit has the rights to perform
the commit on the files and directories being modified.
commit-access-control.pl "$REPOS" "$TXN" commit-access-control.cfg || exit 1
LOGMSG=$SVNLOOK log -t "$TXN" "$REPOS" | grep "[a-zA-Z0-9]" | wc -c
if [ "$LOGMSG" -lt 5 ];#........5.........
then
echo -e "Svn Log Message can 't be empty! you must input at least 5 chars for your commit!." 1>&2
exit 1
fi
All checks passed, so allow the commit.
exit 0
vim post-commit
#!/bin/sh
export LC_CTYPE=en_US.UTF-8
export PATH=$PATH:/usr/local/svn/bin:/home/svn/Net-DAP/hooks:
REPOS="$1"
REV="$2"
#SENDTO="wangyanfu@huatusoft.com"
Send it to these people, calling the script we created above
#/usr/local/svn/script/svnemail_commit.sh "$REPOS" "$REV" "$SENDTO"
vim pre-revprop-change
#!/bin/sh
exit 0
svn 客戶端
配置環(huán)境變量 /etc/profile
unset i
unset -f pathmunge
export SVN_HOME=/opt/CollabNet_Subversion/
export PATH=$PATH:$SVN_HOME/bin
標(biāo)題名稱:Centos7安裝配置svnhttps訪問mark
轉(zhuǎn)載源于:http://jinyejixie.com/article26/pspgcg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站排名、面包屑導(dǎo)航、域名注冊(cè)、網(wǎng)站改版、軟件開發(fā)、搜索引擎優(yōu)化
廣告
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源:
創(chuàng)新互聯(lián)