提供cvs only的ssh服务

原创 2004年07月24日 21:31:00

 摘抄自http://www.akeysoft.com

今天配置了通过ssh提供的cvs服务:

安装了sshd后,创建使用cvs的帐户。不过这些帐户的开通使得cvs的用户可以通过ssh登录到cvs服务器上执行命令。为了限制cvs用户只能通过ssh使用cvs功能,我用Google找到了两个方法。

方法一:关闭ssh的密码认证功能,让ssh服务必须通过密钥(证书)认证,并在服务器上的认证证书文件的证书前加上command选项限制ssh登录后的执行命令。这个方法不太好,用户通过ssh连接到服务器后,就进入cvs的服务命令状态,没有任何提示。

方法二:建立一个脚本作为用户登录后的shell,脚本的内容为判定执行的命令,如果是cvs命令则执行,否则显示提示信息后退出。我选择了这个方法,建立了下面的脚本文件(文件名为cvsonly):

#!/bin/sh

if [ "$*" != "-c cvs server" ]; then
    echo "CVS Only!";
    exit;
fi;
cvs server

脚本存放在/usr/local/bin下,通过chmod 755加上执行权限。

然后在/etc/passwd中将只允许使用ssh访问cvs的用户的shell替换成上面的脚本即可。

在cygwin上也可以用类似的方式进行配置。(实际上我就是在cygwin环境下这样配置的,Linux上反而还没有试验。)

另外,为了更加安全可以在上面的脚本的最后一行cvs server后加参数--allow-root,防止cvs访问cvsroot之外的文件系统。

开发通信软件的技术与技巧

开发通信软件的技术与技巧 国防大学图书馆技术室 王渤 【提要】随着计算机应用领域的不断扩展,计算机之间的远程通信用得也越来越广泛,计算机间的远程通信所使用的通信软件,在市面上可以买到,但是通用的通信软...
  • ghj1976
  • ghj1976
  • 2001-02-14 08:22:00
  • 1284

CVS over ssh配置

公司要求把工作的CVS服务器通过SSH协议登录,不能直接用pserver的方式联。CVS服务器端很简单的关掉就行了,而客户端的配置鼓捣了一天才搞定,写下来留个纪念。设置原理就是建立一个SSH隧道,让C...
  • KillAllError
  • KillAllError
  • 2006-06-02 16:52:00
  • 995

CVS 中文手册

 CVS 中文手册简短目录 CVS—协作版本系统 v1.12.13 1 概述 2 仓库 3 使用 CVS 开始一个项目 4 修订版 5 分支与合...
  • seawavecau
  • seawavecau
  • 2006-10-13 11:48:00
  • 902

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

使用cvs本身基于pserver的远程认证很麻烦,需要定义服务器和用户组,用户名,设置密码等,常见的登陆格式如下: cvs -d :pserver:cvs_user_name@cvs.server....
  • sahusoft
  • sahusoft
  • 2011-03-24 23:11:00
  • 1390

CVS添加用户时提示“cvs [server aborted]: Only administrators can add or change another's password”

CVS添加用户时提示“cvs [server aborted]: Only administrators can add or change another's password”...
  • lotusyangjun
  • lotusyangjun
  • 2014-10-31 15:24:57
  • 1029

shell编程更改SSH服务的端口

echo " " echo "backup configure file." BACKUP_CONFIG_DIR=/tmp TMP_FILE=$BACKUP_CONFIG_DIR/ssh_config...
  • lzh4188521
  • lzh4188521
  • 2013-10-19 23:06:50
  • 1256

【Linux异常】Linux下出现Read-only file system的解决办法

正常运行中的网站,忽然间出现session目录不可写,连接服务器一看,任何关于写硬盘的命令都不能用,提示Read-only file system,使用一条命令即可搞定此问题:mount -o rem...
  • Vchen_hao
  • Vchen_hao
  • 2016-12-22 14:53:04
  • 2359

讲解如何将CVS服务器版本库迁移到新的CVS服务器上

  • 2011年07月14日 09:37
  • 1.1MB
  • 下载

让PHP支持SSH/SSH2

1. 安装libssh2库 yum install libssh2 libssh2-devel 2. 下载PECL的SSH2支持代码包(beta版本有bug,需patch) wget h...
  • sondx
  • sondx
  • 2013-02-21 13:14:37
  • 1685

使用ssh开发rest web服务支持http etag header的教程详解

使用ssh开发rest web服务支持http etag header的教程详解,代码下载地址:http://www.zuidaima.com/share/1777391667989504.htm...
  • yaerfeng
  • yaerfeng
  • 2014-05-11 09:12:40
  • 3315
收藏助手
不良信息举报
您举报文章:提供cvs only的ssh服务
举报原因:
原因补充:

(最多只允许输入30个字)