Using cvs via ssh is easy, but there is some initial setup effort. We will discuss setup on the client end separately from the server end, after some general issues.
Authentication using ssh is done use RSA1 public/private key pairs.
ssh -V
ssh-keygen -t rsa1
It will ask you for a passphrase to keep your
private key encrypted. Do not use your system
password, etc. for this passphrase, rather pick a nice long
phrase, but one you can remember. You can change it later
with
ssh-keygen -p
This will create $HOME/.ssh/identity and $HOME/.ssh/identity.pub, which are your private and public keys, respectively. You should copy these key files (or even your whole .ssh directory) to whatever computer accounts you have, so that you can establish your key authentication from that account.
Cygwin/Windows users unfortunately currently must have a key with an empty passphrase (until certain Cygwin bugs are either fixed or worked around). They should use a separate key for their Windows accounts than their others, and use directory/file permissions to keep the key file as safe as possible.
CVS_RSH=ssh
export CVS_RSH
if [ x$SSH_AUTH_SOCK = x ]
then
echo Doing ssh stuff...
eval `ssh-agent`
ssh-add
fi
setenv CVS_RSH ssh
if ( ! $?SSH_AUTH_SOCK ) then
echo Doing ssh stuff...
eval `ssh-agent -c`
ssh-add
endif
Host d0sshcvs.fnal.gov
ForwardAgent true
To make sure your ssh-agent connection is forwarded to d0sshcvs.
CVS_RSH=ssh-cvs
in their $HOME/.bashrc and make sure that their
CVSROOT starts with :ext:.
In any case, after adding these to your .login, .profile or .bashrc as appropriate, users should source the file, or log out and log back in.
Send it as an email attachment, so the very long text
line doesn't get broken up at the wrong places.
AND please indicate what it's for and who you are!
$ upd install cvsh -G -c
$ setup cvsh
$ cp $CVSH_DIR/bin/cvsh /path/to/cvs/account/login/shell
Last modified: Thu Sep 2 11:07:28 CDT 2004