当前位置: 技术问答>linux和unix
跪求高手帮忙,我按如下步骤安装了CVS,2401端口就是启动不了....
来源: 互联网 发布时间:2016-09-13
本文导语: 请高手看看,看看哪个配置文件配的不对 1、下载源码 通过搜索引擎找到CVS的源代码包,也可以从CVS的官方网站cvshome.org上寻找,由于CVS历史上也出现过一些安全漏洞,所以建议要定期去其官方网站上看看有没有...
请高手看看,看看哪个配置文件配的不对
1、下载源码
通过搜索引擎找到CVS的源代码包,也可以从CVS的官方网站cvshome.org上寻找,由于CVS历史上也出现过一些安全漏洞,所以建议要定期去其官方网站上看看有没有最新版本推出。
2、编译安装
[root@terry src]# tar -xjpvf cvs-1.12.5.tar.bz2
[root@terry src]# cd cvs-1.12.5
[root@terry cvs-1.12.5]# ./configure --prefix=/usr/local/terry_yu/cvs
--disable-server-flow-control
[root@terry cvs-1.12.5]# make
[root@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:
[root@terry bin]# /etc/rc.d/init.d/xinetd restart
Stopping xinetd: [ OK ]
Starting xinetd: [ OK ]
重新启动xinetd服务后,CVS服务也开始工作了。
4、在CVS服务器端建立Repository
首先要创建一个名为cvs的组和一个名为cvsroot的用户,以后要访问CVS服务的用户加入cvs这个组:
[root@terry root]# groupadd cvs
[root@terry root]# useradd -g cvs -s /sbin/nologin cvsroot
[root@terry root]# chown -R cvsroot /home/cvsroot
接下来进行初始化:
[root@terry root]# cvs -d /home/cvsroot init
这样在/home/cvsroot目录中就产生了CVSROOT目录,其中存放了一些配置文件,如config等,然后设置权限:
[root@terry root]# chown -R cvsroot.cvs /home/cvsroot
[root@terry root]# chmod -R ug+rwx /home/cvsroot
[root@terry root]# chmod 644 /home/cvsroot/CVSROOT/config
为了CVS系统的安全,我们要修改/home/cvsroot/CVSROOT/config文件,将“#SystemAuth =no”前面的注释号#去掉,即改为“SystemAuth =no”,然后给开发者们逐一建立账号,新建的不要分配用户目录,因为它将作为一个虚拟用户帐号来使用,具体命令如:
[root@terry root]# useradd -g cvs -M bogus
[root@terry root]# passwd bogus
上面的命令就创建了一个并没有Home目录的用户bogus,接着将系统的shadow文件复制到CVSROOT, 并重命名为passwd:
[root@terry root]# cp /etc/shadow /home/cvsroot/CVSROOT/passwd
[root@terry root]# chmod 0644 /home/cvsroot/CVSROOT/passwd
然后修改passwd文件,将除bogus之外的所有行删除,然后去掉每行第二个冒号以后的所有内容,并添上字符串cvsroot, 改为如下格式:
bogus:ND5$J8N9BW5DKV.nPdxfdsh:cvsroot
然后,删除掉刚刚在系统中添加的那个用户bogus:
[root@terry root]# userdel -f bogus
好了,到这里,CVS服务器端就已经安装设置好了,这样你的CVS用户就只能用passwd中规定的用户来登陆你的CVS服务器了,要注意的是:本文介绍的添加用户的方法适用于小数量的用户,如果是有大规模的开发人员,推荐采用连接LDAP或者数据库来进行用户的认证服务。
我在连接的时候,服务器积极拒绝,我netstat看了一下,CVS 2401端口 cvsserver服务没有起来。。。跪求高手指点。小弟非常感谢
1、下载源码
通过搜索引擎找到CVS的源代码包,也可以从CVS的官方网站cvshome.org上寻找,由于CVS历史上也出现过一些安全漏洞,所以建议要定期去其官方网站上看看有没有最新版本推出。
2、编译安装
[root@terry src]# tar -xjpvf cvs-1.12.5.tar.bz2
[root@terry src]# cd cvs-1.12.5
[root@terry cvs-1.12.5]# ./configure --prefix=/usr/local/terry_yu/cvs
--disable-server-flow-control
[root@terry cvs-1.12.5]# make
[root@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:
[root@terry bin]# /etc/rc.d/init.d/xinetd restart
Stopping xinetd: [ OK ]
Starting xinetd: [ OK ]
重新启动xinetd服务后,CVS服务也开始工作了。
4、在CVS服务器端建立Repository
首先要创建一个名为cvs的组和一个名为cvsroot的用户,以后要访问CVS服务的用户加入cvs这个组:
[root@terry root]# groupadd cvs
[root@terry root]# useradd -g cvs -s /sbin/nologin cvsroot
[root@terry root]# chown -R cvsroot /home/cvsroot
接下来进行初始化:
[root@terry root]# cvs -d /home/cvsroot init
这样在/home/cvsroot目录中就产生了CVSROOT目录,其中存放了一些配置文件,如config等,然后设置权限:
[root@terry root]# chown -R cvsroot.cvs /home/cvsroot
[root@terry root]# chmod -R ug+rwx /home/cvsroot
[root@terry root]# chmod 644 /home/cvsroot/CVSROOT/config
为了CVS系统的安全,我们要修改/home/cvsroot/CVSROOT/config文件,将“#SystemAuth =no”前面的注释号#去掉,即改为“SystemAuth =no”,然后给开发者们逐一建立账号,新建的不要分配用户目录,因为它将作为一个虚拟用户帐号来使用,具体命令如:
[root@terry root]# useradd -g cvs -M bogus
[root@terry root]# passwd bogus
上面的命令就创建了一个并没有Home目录的用户bogus,接着将系统的shadow文件复制到CVSROOT, 并重命名为passwd:
[root@terry root]# cp /etc/shadow /home/cvsroot/CVSROOT/passwd
[root@terry root]# chmod 0644 /home/cvsroot/CVSROOT/passwd
然后修改passwd文件,将除bogus之外的所有行删除,然后去掉每行第二个冒号以后的所有内容,并添上字符串cvsroot, 改为如下格式:
bogus:ND5$J8N9BW5DKV.nPdxfdsh:cvsroot
然后,删除掉刚刚在系统中添加的那个用户bogus:
[root@terry root]# userdel -f bogus
好了,到这里,CVS服务器端就已经安装设置好了,这样你的CVS用户就只能用passwd中规定的用户来登陆你的CVS服务器了,要注意的是:本文介绍的添加用户的方法适用于小数量的用户,如果是有大规模的开发人员,推荐采用连接LDAP或者数据库来进行用户的认证服务。
我在连接的时候,服务器积极拒绝,我netstat看了一下,CVS 2401端口 cvsserver服务没有起来。。。跪求高手指点。小弟非常感谢
|
第一
1.首先确认端口是否开启 这样看lsof -i :2401
2.其次因为你是用xinetd来守护cvs服务的 所以确认下/etc/services文件
看看2401是否有别的服务使用 如果有你在行首加#号注释掉 追加如下2句
cvspserver 2401/tcp
cvspserver 2401/udp
(当然如果是自己cvspserver在使用 就没必要修改了)
3.然后重启xinetd /etc/rc.d/init.d/xinetd restart
4.然后再确认端口lsof -i :2401
第二
1.请确认/var/log/messages日志 看看有没有异常信息
2.关闭防火墙 /etc/init.d/iptables stop
3.关闭selinux setenforce 0
1.首先确认端口是否开启 这样看lsof -i :2401
2.其次因为你是用xinetd来守护cvs服务的 所以确认下/etc/services文件
看看2401是否有别的服务使用 如果有你在行首加#号注释掉 追加如下2句
cvspserver 2401/tcp
cvspserver 2401/udp
(当然如果是自己cvspserver在使用 就没必要修改了)
3.然后重启xinetd /etc/rc.d/init.d/xinetd restart
4.然后再确认端口lsof -i :2401
第二
1.请确认/var/log/messages日志 看看有没有异常信息
2.关闭防火墙 /etc/init.d/iptables stop
3.关闭selinux setenforce 0
|
我看你的那个配置文件/etc/xinetd.d/cvspserver下面这个参数似乎有问题哦
env = HOME=
改成
env = HOME=/home/cvsroot
试试
(记住一定把selinux关闭)
env = HOME=
改成
env = HOME=/home/cvsroot
试试
(记住一定把selinux关闭)
|
什么年代了,还自己装软件,apt/yum/yast/emerge哪个不比手动方便百倍.
|
>什么年代了,还自己装软件,apt/yum/yast/emerge哪个不比手动方便百倍.
要最新版的当然自己编译咯。
要最新版的当然自己编译咯。
|
是不是端口被占用了呢?
|
顶楼上的,高手