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

[经验分享] linux环境下轻松搭建CVS服务器

[复制链接]

尚未签到

发表于 2016-3-17 09:13:02 | 显示全部楼层 |阅读模式
CVS是一种广泛应用的、开源的、透明于网络的版本控制系统。用户使用CVS时,首先要架设一台CVS服务器,在CVS服务器上导入项目实例、设置CVS项目访问控制等。而客户则通过客户端来访问CVS服务器,客户可以取得项目最新代码副本,提交自己修改的代码等,而客户可以从Internet、LAN甚至本机来访问CVS服务器。下面,我就带领大家在Linux环境下架设一台CVS服务器,希望能够对想要学习CVS服务器架设的朋友带来一些帮助。
  1、下载源码

  通过搜索引擎找到CVS的源代码包,也可以从CVS的官方网站cvshome.org上寻找,由于CVS历史上也出现过一些安全漏洞,所以建议要定期去其官方网站上看看有没有最新版本推出。

  2、编译安装

  [iyunv@terry src]# tar -xjpvf cvs-1.12.5.tar.bz2

  [iyunv@terry src]# cd cvs-1.12.5

  [iyunv@terry cvs-1.12.5]# ./configure --prefix=/usr/local/terry_yu/cvs

  --disable-server-flow-control

  [iyunv@terry cvs-1.12.5]# make

  [iyunv@terry cvs-1.12.5]# make install

  以上指令将CVS安装到/usr/local/terry_yu/cvs这个目录上。

  注:除了使用源码包进行安装之外,还可以使用RPM包来安装。

  3、设置启动CVS服务

  在Linux上CVS服务可以通过inetd、xinetd或tcpwrapper等来启动,其中inetd由于安全理由在许多场合已经被xinetd所取代了,这里我们使用xinetd来启动CVS服务。

  在/etc/xinetd.d目录下为CVS服务创建一个配置文件,比如:/etc/xinetd.d/cvspserver,编辑/etc/xinetd.d/cvspserver,输入以下内容:

  service cvspserver

  {

  disable = no

  socket_type = stream

  wait = no

  user = root

  env = HOME=

  server = /usr/bin/cvs

  server_args = -f --allow-root=/home/cvsroot pserver

  }

  注:

  1)pserver表示是口令认证的访问方式,这是最常用的方式,其他还有gserver,kserver,ext,如果想要更高的安全性可以使用ssh来加密口令和数据流,不过这里为了用户使用的方便,仍然选的是pserver。

  2)--allow-root是指定Repository的目录,可以建立多个Repository

  然后重新启动xinetd:

  [iyunv@terry bin]# /etc/rc.d/init.d/xinetd restart

  Stopping xinetd: [ OK ]

  Starting xinetd: [ OK ]

  重新启动xinetd服务后,CVS服务也开始工作了。共2页。

  4、在CVS服务器端建立Repository

  首先要创建一个名为cvs的组和一个名为cvsroot的用户,以后要访问CVS服务的用户加入cvs这个组:

  [iyunv@terry root]# groupadd cvs

  [iyunv@terry root]# useradd -g cvs -s /sbin/nologin cvsroot

  [iyunv@terry root]# chown -R cvsroot /home/cvsroot

  接下来进行初始化:

  [iyunv@terry root]# cvs -d /home/cvsroot init

  这样在/home/cvsroot目录中就产生了CVSROOT目录,其中存放了一些配置文件,如config等,然后设置权限:

  [iyunv@terry root]# chown -R cvsroot.cvs /home/cvsroot

  [iyunv@terry root]# chmod -R ug+rwx /home/cvsroot

  [iyunv@terry root]# chmod 644 /home/cvsroot/CVSROOT/config

  为了CVS系统的安全,我们要修改/home/cvsroot/CVSROOT/config文件,将“#SystemAuth =no”前面的注释号#去掉,即改为“SystemAuth =no”,然后给开发者们逐一建立账号,新建的不要分配用户目录,因为它将作为一个虚拟用户帐号来使用,具体命令如:

  [iyunv@terry root]# useradd -g cvs -M bogus

  [iyunv@terry root]# passwd bogus

  上面的命令就创建了一个并没有Home目录的用户bogus,接着将系统的shadow文件复制到CVSROOT, 并重命名为passwd:

  [iyunv@terry root]# cp /etc/shadow /home/cvsroot/CVSROOT/passwd

  [iyunv@terry root]# chmod 0644 /home/cvsroot/CVSROOT/passwd

  然后修改passwd文件,将除bogus之外的所有行删除,然后去掉每行第二个冒号以后的所有内容,并添上字符串cvsroot, 改为如下格式:

  bogus:ND5$J8N9BW5DKV.nPdxfdsh:cvsroot

  然后,删除掉刚刚在系统中添加的那个用户bogus:

  [iyunv@terry root]# userdel -f bogus

  好了,到这里,CVS服务器端就已经安装设置好了,这样你的CVS用户就只能用passwd中规定的用户来登陆你的CVS服务器了,要注意的是:本文介绍的添加用户的方法适用于小数量的用户,如果是有大规模的开发人员,推荐采用连接LDAP或者数据库来进行用户的认证服务。共2页。

原文:http://edu.itbulo.com/200709/119899.htm

运维网声明 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-191884-1-1.html 上篇帖子: RHEL6.x升级glibc 下篇帖子: Linux Postfix邮件服务器的配置与应用<四>
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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