歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Unix知識 >> Unix教程 >> 限制SCO非匿名ftp在自己目錄中的辦法

限制SCO非匿名ftp在自己目錄中的辦法

日期:2017/2/27 17:42:55   编辑:Unix教程

  看到有網友講SCO的ftp采用的是wu-ftp一種由於以前在小型機上曾用過wu-ftp限制過用戶登錄目錄,所以就嘗試了一下SCO下的做法,現總結一下,提供給大家參考:
  
  1、修改/etc/passwd,把需要限制的用戶的根目錄後加上/./
  例如:原來的目錄為/usr/test, 那麼改成/usr/test/./
  看起來改後的/etc/passwd該用戶的內容像這樣子:
  test:x:215:50::/usr/test/./:/bin/sh
  
  2、建立並修改相關文件
  登錄進入root帳戶
  # su - test(你的用戶名)
  $ mkdir bin
  $ cp /bin/ls bin
  $ mkdir lib
  $ cp /lib/libprot.so.1 lib
  $ mkdir -p usr/lib
  $ cp /usr/lib/libc.so.1 usr/lib
  $ cp /usr/lib/libsocket.so.1 usr/lib
  $ mkdir etc
  $ cp /etc/passwd etc
  $ cp /etc/group etc
  $ cd etc
  $ vi passwd 把不用ftp的用戶都刪了
  $ vi group 把不用ftp的組都刪了
  # exit 退回到root用戶
  # cd /etc
  # vi inetd.conf
  找到ftp那行,首先確認行首沒有被#號注釋掉,然後在末尾加上-a
  看起來修改後的inetd.conf中ftp那行內容像這個樣子:
  ftp stream tcp nowait root /etc/ftpd ftpd -a
  存盤退出激活inetd.conf參數:
  # ps -e | grep inetd 記下inetd的進程號
  # kill -HUP inetd進程號
  # vi ftpaccess
  找有無guestgroup的行,
  有則先確認行首無#號後把test用戶的組名(你的用戶所屬的組名)加上,用空格分隔名字
  無則加上一行,看起來像這個樣子:
  guestgroup group(你用戶的組名)
  x!強制存盤退出(該文件默認方式是只讀)
  建議給此類ftp的用戶單獨建立一個組,以便日後的安全設置
  
  3、對於不想用戶修改內容的目錄或文件,把寫權限用chmod -w 去掉即可
  對於不想用戶取走的文件或不想用戶訪問的目錄,chmod -r把讀權限去掉
  
  4、如果想讓test用戶只能ftp不能telnet,
  那麼現在可以開始做相應的修改了:
  首先/etc/shells裡加入一行/bin/false後:
  /etc/shells文件內容實例:
  #
  /bin/csh
  /bin/sh
  /bin/ksh
  /usr/bin/scosh
  /bin/false #加入是為了讓/bin/false成為系統認可的shell, 無則ftp會提示錯誤
  然後再把/etc/passwd該用戶的shell改為/bin/false即可
  看起來修改後的/etc/passwd該用戶的內容像這個樣子:
  test:x:215:50::/usr/test/./:/bin/false
  到這裡就可以進行測試了。
Copyright © Linux教程網 All Rights Reserved