设为首页 收藏本站
查看: 922|回复: 0

[经验分享] 在CentOS上搭建SVN服务器

[复制链接]

尚未签到

发表于 2018-4-25 09:26:34 | 显示全部楼层 |阅读模式
  软件:
  SVN服务器:subversion
  http://subversion.apache.org/packages.html
  SVN客户端:TortoiseSVN
  http://tortoisesvn.net/downloads.html
  一、SVN安装
[root@db ~]# yum -y install subversion

  二、配置SVN
  新建一个目录用于存放svn的所有文件
[root@db ~]# mkdir /svn

  新建一个资源仓库
[root@db ~]# svnadmin create /svn/project

[root@db ~]# ll /svn/project/

  total 24
  drwxr-xr-x. 2 root root 4096 Aug 18 14:23 conf
  drwxr-sr-x. 6 root root 4096 Aug 18 14:23 db
  -r--r--r--. 1 root root    2 Aug 18 14:23 format
  drwxr-xr-x. 2 root root 4096 Aug 18 14:23 hooks
  drwxr-xr-x. 2 root root 4096 Aug 18 14:23 locks
  -rw-r--r--. 1 root root  229 Aug 18 14:23 README.txt
  各目录用途说明:
  hooks目录:放置hook脚本文件的目录
  locks目录: 放置subversion的db锁文件
  format文件:是一个文本文件,里面只放了一个整数,表示当前文件库配置的版本号
  conf目录:这个是仓库的配置文件
  配置svn服务的配置文件
  [root@db ~]# vim /svn/project/conf/svnserve.conf
[general]

  ### These options control access to the repository for unauthenticated
  ### and authenticated users.  Valid values are "write", "read",
  ### and "none".  The sample settings below are the defaults.
  anon-access = none
  auth-access = write
  ### The password-db option controls the location of the password
  ### database file.  Unless you specify a path starting with a /,

  ### the file's location is>  ### this configuration file.
  ### If SASL is enabled (see below), this file will NOT be used.
  ### Uncomment the line below to use the default password file.
  password-db = /svn/project/conf/passwd
  ### The authz-db option controls the location of the authorization
  ### rules for path-based access control.  Unless you specify a path

  ### starting with a /, the file's location is>  ### directory containing this file.  If you don't specify an
  ### authz-db, no path-based access control is done.
  ### Uncomment the line below to use the default authorization file.
  authz-db = /svn/project/conf/authz
  ### This option specifies the authentication realm of the repository.
  ### If two repositories have the same authentication realm, they should
  ### have the same password database, and vice versa.  The default realm
  ### is repository's uuid.
  realm = My Test  Repository
  添加访问用户及密码
vi /svn/project/conf/passwd  
[users]
  
test1 = 123456
  
test2 = 123456
  配置新用户的授权文件
  
[root@db ~]# vim /svn/project/conf/authz

[aliases]

  # joe = /C=XZ/ST=Dessert/L=Snake City/O=Snake Oil, Ltd./OU=Research Institute/CN=Joe Average
[groups]

  # harry_and_sally = harry,sally
  # harry_sally_and_joe = harry,sally,&joe
[groups]

  # harry_and_sally = harry,sally
  # harry_sally_and_joe = harry,sally,&joe
  admin = admin
  user = test1,test2
  # [/foo/bar]
  # harry = rw
  # &joe = r
  # * =
  # [repository:/baz/fuz]
  # @harry_and_sally = rw
  # * = r
  [/]
  @admin = rw
  @user = r
  * =
  
[<版本库>:/项目/目录]

  @<用户组名> = <权限>
  <用户名> = <权限>
  / 表示对根目录(即/svn/project目录)下的所有子目录范围设置权限;
[/abc] 表示对资料库中abc项目设置权限;

  创建一个admin组,组成员包括xiaoran.shen和test1
  创建一个user组,成员只有test2;
  admin组对目录有读写权限;
  单个用户test2有读写权限;
  *=表示除了上面设置的权限用户组以外,其他所有用户都设置空权限,空权限表示禁止访问本目录,这很重要一定要加上。
  
  启用svn服务并且iptables放行3690
  
[root@db ~]# svnserve -d -r /svn/project/

  
[root@db ~]# vim /etc/sysconfig/iptables

  # Firewall configuration written by system-config-firewall
  # Manual customization of this file is not recommended.
  *filter
  :INPUT ACCEPT [0:0]
  :FORWARD ACCEPT [0:0]
  :OUTPUT ACCEPT [0:0]
  -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
  -A INPUT -p icmp -j ACCEPT
  -A INPUT -i lo -j ACCEPT
  -A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
  -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
  -A INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT
  -A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
  -A INPUT -m state --state NEW -m tcp -p tcp --dport 3690 -j ACCEPT
  -A INPUT -j REJECT --reject-with icmp-host-prohibited
  -A FORWARD -j REJECT --reject-with icmp-host-prohibited
  COMMIT
[root@db ~]# service iptables restart

  iptables: Setting chains to policy ACCEPT: filter          [  OK  ]
  iptables: Flushing firewall rules:                         [  OK  ]
  iptables: Unloading modules:                               [  OK  ]
  iptables: Applying firewall rules:                         [  OK  ]

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-451673-1-1.html 上篇帖子: 在CentOS6上搭建LNMP环境(下) 下篇帖子: 用Xbrowser连接CentOS
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表