Linux为CVS添加用户

在使用基于Linux的CVS服务器的时候,需要为cvs添加用户。如果使用linux系统的用户,那么对系统的安全会有很大的影响。

cvs提供了另外的一个解决方法。

在cvs仓库中,有CVSROOT目录,在这个目录中,包括passwd,readers,writers文件,如果没有,用户可以自己创建。其中

passwd文件中数据格式如下:
cvs用户:密码:linux系统用户
cvs用户:密码:linux系统用户
cvs用户:密码:linux系统用户

该文件实现了cvs用户和linux用户的映射关系

readers和writers文件的格式:
CVS用户1
CVS用户2
CVS用户3

分别定义了读和写cvs的用户

passwd文件中包含CVS用户的密码,该位置属于加密生成。因此需要通过工具生成,下面的代码是一个生成加密密码的代码

如下: /*---------------------------------

   Filename    :  cvsuser.cpp

   Desc        :  生成一个加密的密码

   Version     :  1.0.0

   Right       :  

*/

#include <iostream>

using namespace std;

#ifndef _XOPEN_SOURCE

#define _XOPEN_SOURCE

#endif

#include <unistd.h>

int

main(int argc,char *argv[])

{

       char password[100];

       char confirm[100];

       char *salt[] = {

               "ab", "cd", "ef", "gh"

       };

       cout << "please input password:>";

       cin >> password;

       cout << "password:" << password << endl;

       cout << "press "y" to confirm:>";

       cin >> confirm;

       if(confirm[0]=='y')

       {

               cout << "confirmed." << endl;

               for(int i=0;i<4;i++)

               {

                       char *ret = crypt(password,salt);

                       cout << "password:" << i << " result=" << ret << endl;

               }

       }

       else

       {

               cout << "cancelled." << endl;

       }

       return 0;

}

编译方法: g++ -o cvsuser cvsuser.cpp -lcrypt