Linux使用iF.SVNAdmin 1.6.2实现WEB管理SVN

  • 内容
  • 评论
  • 相关

一、iF.SVNAdmin简介及下载

iF.SVNAdmin应用程序是基于Web的管理Subversion授权文件。 基于PHP 5.3,需要安装一个Web服务器(Apache)。 该应用程序不需要数据库后端或任何类似的东西,它完全基于Subversion授权和用户认证文件。 (包括对用户和组的LDAP支持)

实现的功能有:

1、版本库管理(创建,删除)

2、创建具有预定义项目结构的版本库

3、删除版本库(高级配置)

4、创建更容易浏览的Access-Path

5、在特定的访问路径上定义

6、用户管理

7、允许用户更改自己的密码

8、ACL角色(允许其他用户访问Web-UI,访问受限)

9、用户组管理

10、passwd文件支持

11、LDAP支持(从LDAP / ActiveDirectory服务器获取用户和组)

12、DIGEST认证支持

13、访问路径管理

14、ACL具有Web-UI的预定义角色

15、多语言用户界面(包含中文,但未完全翻译,主要功能不受影响)

官方网址:http://svnadmin.insanefactory.com/

二、下载程序包并解压至网页目录

1、打开官网下载程序包的zip文件并上传至svn服务器

2、解压文件

unzip svnadmin-1.6.2.zip

3、拷贝至网页目录并设置权限

cp -R iF.SVNAdmin-stable-1.6.2/ /data/http/html/svnadmin/
chown -R apache:apaches /data/http/html/svnadmin/
chmod -R 775 /data/http/html/svnadmin/

 

三、配置Apache站点

<VirtualHost _default_:80>
 DocumentRoot "/data/http/html/svnadmin"
 ServerName localhost:80
 ServerAdmin you@example.com
 ErrorLog "/data/http/logs/localhost-error_log"
 TransferLog "/data/http/logs/localhost-access_log"
</VirtualHost>

四、首次访问配置iF.SVNAdmin

注:如你的PHP版本为7以上,访问iF.SVNAdmin时会提示

Wrong PHP version. The minimum required version is: 5.3

请在程序目录下include/config.inc.php文件中找到以下行并删除即可

// Check PHP version.
if (!checkPHPVersion("5.3")) {
 echo "Wrong PHP version. The minimum required version is: 5.3";
 exit(1);
}

1、基于Passwd文件认证配置

Subversion authorization  //Subversion授权设置
Subversion authorization file  //指定Subversion授权文件,如:/etc/svn/authz。选择后可按“TEST”测试

Data providers  //数据提供设置
User view provider type:   //用户视图提供程序类型,如:passwd
User edit provider type:   //用户编辑提供程序类型,如:passwd
Group view provider type:   //组视图提供程序类型,如:svnauthfile
Group edit provider type:   //组编辑提供程序类型,如:svnauthfile
Repository view provider type:   //版本库视图提供程序类型,如:svnclient
Repository edit provider type:  //版本库编辑提供程序类型,如:svnclient

User authentication  //用户认证设置
User authentication file (SVNUserFile)  //指定用户认证文件,如/etc/svn/passwd。选择后可按“TEST”测试

Subversion settings  //Subversion设置
Parent directory of the repositories (SVNParentPath)  //版本库的父目录,如:/data/svn/。选择后可按“TEST”测试
Subversion client executable  //Subversion客户端可执行文件,如:/usr/local/subversion/bin/svn。选择后可按“TEST”测试
Subversion admin executable  //Subversion管理可执行文件,如:/usr/local/subversion/bin/svnadmin。选择后可按“TEST”测试

2、基于LDAP认证配置

Subversion authorization  //Subversion授权设置
Subversion authorization file  //指定Subversion授权文件,如:/etc/svn/authz。选择后可按“TEST”测试

Data providers  //数据提供设置
User view provider type:   //用户视图提供程序类型,如:ldap
User edit provider type:   //用户编辑提供程序类型,如:off
Group view provider type:   //组视图提供程序类型,如:ldap
Group edit provider type:   //组编辑提供程序类型,如:off
Repository view provider type:   //版本库视图提供程序类型,如:svnclient
Repository edit provider type:  //版本库编辑提供程序类型,如:svnclient

Subversion settings  //Subversion设置
Parent directory of the repositories (SVNParentPath)  //版本库的父目录,如:/data/svn/。选择后可按“TEST”测试
Subversion client executable  //Subversion客户端可执行文件,如:/usr/local/subversion/bin/svn。选择后可按“TEST”测试
Subversion admin executable  //Subversion管理可执行文件,如:/usr/local/subversion/bin/svnadmin。选择后可按“TEST”测试

LDAP connection information  //LDAP连接用户信息设置
Host address  //LDAP主机地址,如:ldap://dc.xxxxx.com:389/
Protocol version  //LDAP协议版本,如:3
Bind DN  //绑定DN,即用于读取LDAP架构、组、用户的用户DN(需要有权限),如:CN=SVN_LDAP验证,CN=Users,DC=xxxxx,DC=com(可在域控制器中选择用户的属性编辑器查看distinguishedName参数获得DN)
Bind password  //绑定DN用户的密码,完成以上配置完成后可按“TEST”测试

LDAP user provider information  //LDAP用户提供程序信息设置
Base DN  //基本DN,就是设置程序从域控制器上的哪个组织单位开始搜索用户,如:OU=user,DC=xxxxx,DC=com
Search filter  //搜索过滤器,如:(&(objectClass=person)(objectClass=user))
Attributes  //属性,就是取用户属性编辑器中的哪个参数来显示在svnadmin里面,如:sAMAccountName。完成后可按“TEST”测试

LDAP group provider information  //LDAP连接组信息设置
Base DN  //基本DN,就是设置程序从域控制器上的哪个组织单位开始搜索组,如:OU=group,DC=xxxxx,DC=com
Search filter  //搜索过滤器,如:(objectClass=group)
Attributes  //属性,就是取组属性编辑器中的哪个参数来显示在svnadmin里面,如:description。
Groups to user attribute  //组到用户属性,如:member
Groups to user attribute value  //组到用户属性值,如:distinguishedName。完成后可按“TEST”测试

3、设置以上信息完成后,如果权限文件中已经有数据了,则会要求选择一个用户来做svnadmin的超级管理员,选择保存后即可登录svnadmin。

 

 

 

 

评论

0条评论

发表评论

电子邮件地址不会被公开。 必填项已用*标注