您的位置:首页 > 运维架构 > Apache

CentOS6 配置svn+apache使用linux本地账户认证

2013-10-21 18:13 471 查看
前提,svn已配好,apache已配好,httpd+svn的配置已正常工作。只是更改svn的认证为linux本地密码认证方式。

1,yum安装httpd-devel

2,安装mod_authnz_external,这个yum源上没有,只有下载安装包手工安装

从http://code.google.com/p/mod-auth-external/ 选择对应的版本

查看本地Apache版本为2.2,则安装3.2.6版本的mod-auth-external

解压后执行

#apxs -c mod_authnz_external.c   (编译)

#apxs -i -a mod_authnz_external.la (安装)

3,安装最关键的pwauth这个也在yum源上没有,

从http://code.google.com/p/pwauth/downloads/list选择一个版本2.3.10

解压后更改config.h配置文件,设置这行、

   #define SERVER_UIDS 48(这个数字是svnrepo目录的访问group id,比如这里是apache)

  也可以是几个group的id 

 #define SERVER_UIDS 12,48,501

然后#make

得到pwauth,可以copy到指定目录比如/usr/local/bin/pwauth,注意这个文件的权限一定是root, chmod 755否则可能不能访问/etc/shadow/

4,配置subversion.conf

    AddExternalAuth pwauth /usr/local/bin/pwauth

    SetExternalAuthMethod pwauth pipe

    <Location /svnroot>

        DAV svn

        SVNPath /var/svn/repo

        AuthType Basic

        AuthNAme "Restricted"

        AuthBasicProvider external

        AuthExternal pwauth

        require valid-user

        require group svnusers

    </Location>

5,重启httpd服务

6,Done
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  centos apache