首页 > 代码库 > Linux系统下实现SVN + Apache + SSL服务器框架的架设

Linux系统下实现SVN + Apache + SSL服务器框架的架设

系统版本:CentOS 6.5

(一)使用yum安装软件

1 # yum install httpd mod_dav_svn subversion mod_ssl

验证SVN是否安装成功:svn --version

技术分享

出现上图类似的版本号信息,证明安装OK。

查看httpd配置文件/etc/httpd/conf/httpd.conf。

技术分享

如果有以上mod_dav.so和mod_dav_fs.so两个文件的配置,则安装成功。

(二)配置文件

  1. 创建版本库

# mkdir -pv /svn/data   --创建主目录
# svnadmin create /svn/data/project  --创建仓库
  2. 更改权限
# chmod -R 700 /svn/data/  --修改库的其他人无权限
# chown -R apache:apache /svn/data/   --修改库的所属
  3. 更改apache配置
# vim /etc/httpd/conf/httpd.conf 
   加入以下内容
<Location /svn> 
DAV svn 
SVNParentPath /svn/data 
AuthType Basic 
AuthName "svn" 
AuthUserFile /svn/passwd 
AuthzSVNAccessFile /svn/auth.conf 
Require valid-user 
</Location> 

  4. 创建apache账户

  通过htpasswd命令创建用户

  htpasswd -c /svn/passwd june

  htpasswd /svn/passwd tom

  通过htpasswd passwd june修改密码

  5. 设定SVN权限

# vim /svn/auth.conf

  加入以下代码:

[groups] 
admin = june,tom 
[/] 
june = rw
[project:/]
tom = rw

june用户拥有/svn/data/根目录读写权限,而tom拥有子目录project库读写权限。

(三) 使用SSL加密

1.生产密钥文件
# cd /etc/httpd/conf
# openssl genrsa -out httpd.key 1024  生成一个私钥文件
# openssl req -new -key httpd.key -out httpd.pem -days 3650 -x509

 技术分享

按提示填写,依次为:国家,省份,城市,公司,部门,网络名,邮箱

2. 修改apache使ssl生效

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

技术分享

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

加入红线那行(表示强制使用ssl连接)

技术分享

最后启动服务:

# service httpd start 
# svnserve -d -r /svn/data/    

通过https://服务器ip/svn/data/project访问。提示下载证书,则证明SSL已经OK。

PS:如果出现405错误,说明访问路径搞错了,用正确的路径访问即可,也可用svn客户端checkout工程。

 

 

  

 

Linux系统下实现SVN + Apache + SSL服务器框架的架设