歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux綜合 >> Linux資訊 >> Linux文化

無法登陸cvs服務器


我裝的是FC5,設置cvs組及成員cvsroot,並賦權限。 用cvsroot登陸linux系統沒有任何問題。 #chkconfig --list顯示……cvs:off cvspserver:on……

用cvsroot登陸cvs服務器的時候,輸入密碼以後提示……refused(反正是失敗),然後讓你重新登陸。 請問這是為什麼?

>>> 此貼的回復 >> 一、服務器架設

1. 系統介紹

服務器系統:Fedora 2

CVS:系統自帶

2. 設置啟動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服務也開始工作了,理論上是這樣的,但我的機子上總是沒有起來。最後我重新啟動後才起來。

可以使用 netstat –l |grep cvspserver 來看服務有沒有起來了。

3. 在CVS服務器端建立Repository

首先要創建一個名為cvs的組和一個名為cvsroot的用戶,以後要訪問CVS服務的用戶加入cvs這個組:

  [root@terry root]# groupadd cvs

  [root@terry root]# useradd -g cvs -s /sbin/nologin cvsroot

[root@terry root]#passwd cvsroot

  [root@terry root]# chown -R cvsroot /home/cvsroot

  接下來進行初始化:

  [root@terry root]# cvs -d /home/cvsroot init

這樣一個可以用cvsroot用戶登陸的cvs服務器就建好了。不考慮安全,這樣就可以先測試和熟悉cvs操作了。

4. 建立多用戶的安全的cvs服務器

初始化完成後會在/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文件,將除剛才設定的可使用CVS的用戶bogus之外的所有行刪除,然後去掉每行第二個冒號以後的所有內容,並添上字符串cvsroot, 改為如下格式:

  bogus:ND5$J8N9BW5DKV.nPdxfdsh:cvsroot

  然後,刪除掉剛剛在系統中添加的那個用戶bogus:

  [root@terry root]# userdel -f bogus

以上是cvs服務器的假設步驟。

我覺得你可以能是在設置cvs服務驗證的時候有點問題。


Copyright © Linux教程網 All Rights Reserved