`
JAVA天地
  • 浏览: 673534 次
  • 性别: Icon_minigender_1
  • 来自: 太原
文章分类
社区版块
存档分类
最新评论

CVS的远程认证通过SSH远程访问CVS

阅读更多
使用cvs本身基于pserver的远程认证很麻烦,需要定义服务器和用户组,用户名,设置密码等,

常见的登陆格式如下:
cvs -d :pserver:cvs_user_name@cvs.server.address:/path/to/cvsroot login
例子:
cvs -d :pserver:cvs@samba.org:/cvsroot login

不是很安全,因此一般是作为匿名只读CVS访问的方式。从安全考虑,通过系统本地帐号认证并通过SSH传输是比较好的办法,通过在客户机的 /etc/profile里设置一下内容:
CVSROOT=:ext:$USER@cvs.server.address#port:/path/to/cvsroot CVS_RSH=ssh; export CVSROOT CVS_RSH
所有客户机所有本地用户都可以映射到CVS服务器相应同名帐号了。

比如:

CVS服务器是192.168.0.3,上面CVSROOT路径是/home/cvsroot,另外一台开发客户机是192.168.0.4,如果 tom在2台机器上都有同名的帐号,那么从192.168.0.4上设置了:
export CVSROOT=:ext:tom@192.168.0.3:/home/cvsroot
export CVS_RSH=ssh
tom就可以直接在192.168.0.4上对192.168.0.3的cvsroot进行访问了(如果有权限的话)
cvs checkout project_name
cd project_name
cvs update
...
cvs commit

如果CVS所在服务器的SSH端口不在缺省的22,或者和客户端与CVS服务器端SSH缺省端口不一致,有时候设置了:
:ext:$USER@test.server.address#port:/path/to/cvsroot

仍然不行,比如有以下错误信息:
ssh: test.server.address#port: Name or service not known
cvs [checkout aborted]: end of file from server (consult above messages if any)

解决的方法是做一个脚本指定端口转向(不能使用alias,会出找不到文件错误):
创建一个/usr/bin/ssh_cvs文件,假设远程服务器的SSH端口是非缺省端口:34567
#!/bin/sh
/usr/bin/ssh -p 34567 "$@"
然后:chmod +x /usr/bin/ssh_cvs
并CVS_RSH=ssh_cvs; export CVS_RSH

注意:port是指相应服务器SSH的端口,不是指cvs专用的pserver的端口

分享到:
评论

相关推荐

    CVS命令大全,网上搜集

    - **远程CVS服务器设置**:使用`:ext:`协议,指定用户名和服务器地址,以及库路径,通过`CVS_RSH`设置为`ssh`来使用SSH认证。 - **版本库初始化**:使用`cvs init`命令创建一个新的CVS仓库。 - **项目导入**:...

    cvs+ssh

    结合CVS与SSH,可以实现更为安全的远程代码管理。 #### 二、配置SSH服务器与Linux SSH/CVS客户端 ##### 配置SSH服务器 1. **检查SSH服务状态**:首先,需确认SSH服务(sshd)是否已开启。可使用`service sshd ...

    在Eclipse中配置和使用CVS

    4. CVS 的用户认证:管理员可以使用 SSH 的远程用户认证,安全简单。 5. CVSWEB :管理员可以使用 CVSWEB Interface,以 WEB 形式访问 CVS。 6. CVS TAG :开发人员可以使用 CVS TAG,将 $Id$ 加入代码注释中,...

    CVS服务器搭建指南

    **Windows 平台上CVS/SSH 客户端配置** 主要是指导如何在Windows环境下配置CVS客户端以及通过SSH安全地访问CVS服务器。CVS服务器通常安装在Linux服务器上,但客户端可以在Windows平台上运行。本文档主要讲解如何使用...

    tutorial-cvs

    - **远程访问**:通过SSH实现,需设定`CVSROOT`为远程服务器的地址及CVS目录路径,并指定`CVSRSH`为SSH。 ``` export CVSROOT=:ext:username@enterprise.cs.utk.edu:/cvs/homes export CVSRSH=ssh ``` 其中,`...

    cvs的使用,给予一定的帮助

    - 对于远程访问: ```bash export CVSROOT=:ext:$USER@server.address#port:/path/to/cvsroot export CVS_RSH=ssh ``` **初始化CVS仓库**:首次使用CVS时,需要创建一个新的仓库并初始化。 - `cvs init`:初始...

    CVS文档

    4. **用户认证**:通过SSH进行远程用户认证,增强安全性。管理员需配置正确的SSH密钥,确保只有授权用户可以访问。 5. **CVSWeb**:提供WEB界面访问,便于查看代码版本差异,提升代码审查效率。 6. **CVSTag**:在...

    cvs命令初学教材及速查手册

    如果需要通过远程服务器访问CVS仓库,则需要设置远程访问参数: ```shell CVSROOT=:ext:$USER@test.server.address#port:/path/to/cvsroot CVS_RSH=ssh; export CVSROOT CVS_RSH ``` - **初始化项目** 使用...

    cvs客户端使用手册

    3. **远程rsh/ssh CVSROOT**:如`CVSROOT=developer@example.com:/path/to/cvs`,使用rsh或更安全的ssh协议,需要在远程主机上有账户权限。 要与CVS交互,首先要设置CVSROOT环境变量,然后执行相应的cvs命令。例如...

    cvs1.10.10

    1. **图形化界面**:TortoiseCVS的核心优势在于其直观的GUI,用户可以通过右键菜单访问所有CVS操作,如创建新仓库、检出代码、查看文件历史、解决冲突等。 2. **版本历史**:用户可以轻松查看任何文件或目录的历史...

    CVS基础教程

    CVS 的远程用户认证: * 通过 SSH 远程登陆 CVS 服务器 * 设置 CVSROOT 变量,指向远程 CVS 服务器 * 使用 CVS_RSH 变量,指定远程登陆的 SSH 客户端 CVS 的 Web 界面访问: * 使用 cvsweb 工具,提供了一个 Web ...

    CVS 服务器安装及使用简介

    3.1 **ext: 和 :server: 方法**:这两种方法是CVS客户端连接服务器的方式,`ext:`方法通常用于通过SSH等加密协议进行安全连接,而`:server:`则是在同一台机器上运行服务器和客户端,不适用于远程访问。 3.2 **:p...

    CVS\CVS-WinCvs基礎.doc

    1. **分布式协作**:CVS通过TCP/IP连接提供服务,适合互联网上的分布式开发,而VSS依赖于服务器上的共享目录,限制了在TCP/IP环境下的远程访问。CVS可以通过SSH提供更高的安全性。 2. **无文件锁定机制**:与VSS...

    CVS使用手册

    为了保障安全性,CVS支持多种认证方式,其中SSH远程用户认证较为常见。这种方式不仅安全,而且配置简单,适合于跨网络的开发团队。 **四、CVS与开发环境的集成** 1. **CVS与Eclipse集成**:Eclipse IDE提供了CVS...

    cvs使用详细

    CVS 支持通过 SSH 进行远程用户认证,提供了一种安全且简便的身份验证方式。 **5. CVSWEB** CVSWEB 是一个 Web 访问界面,允许开发人员通过浏览器查看代码版本,对比不同版本之间的差异,提高代码管理效率。 **6....

    CVS2.5.0版本的安装与配置及基本使用方法

    通过CVS,开发者能够追踪每个文件的修改历史,合并来自不同开发者的更改,并确保所有团队成员使用的是最新的代码版本。CVS2.5.03作为其一个特定版本,提供了稳定性和功能性的平衡,特别适用于企业级项目管理和版本...

    CVS服务器端配置1.CVS服务器端安装:[文].pdf

    此外,CVS还可以通过设置CVSROOT模块中的`CVS_RSH`环境变量来使用SSH进行安全的远程连接。 总之,配置CVS服务器端是一个涉及安装、初始化、服务配置和测试的过程,理解并掌握这些步骤对于有效管理和协作软件项目至...

Global site tag (gtag.js) - Google Analytics