• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
  • 如何以Solaris架設FTP虛擬系統

    發表于:2007-07-13來源:作者:點擊數: 標簽:
    1.何謂虛擬系統 "虛擬系統"的意思是"假的系統",亦即當一個使用者使用的是"虛擬系統"時, 他所看到的系統檔案及程式,并不是系統管理者所使用的檔案。 例如管理者鍵入"ls -al /usr/bin/ls"的命令時,看到的檔案大小為32767 bytes,而其他使用者鍵入"ls -al /

    1.何謂虛擬系統
        "虛擬系統"的意思是"假的系統",亦即當一個使用者使用的是"虛擬系統"時,
        他所看到的系統檔案及程式,并不是系統管理者所使用的檔案。

        例如管理者鍵入"ls -al  /usr/bin/ls"的命令時,看到的檔案大小為32767 
        bytes,而其他使用者鍵入"ls  -al  /usr/bin/ls"的命令時,看到的卻為65535 
        bytes,表示為兩個檔案的路徑雖然相同,但卻為不同的檔案。

      2.虛擬系統的功能為何
        (1) 避免其它使用者使用重要資料
            若您不愿意讓使用者觀看或執行某些檔案,那你可以使用虛擬系統,讓
            使用者看不到特定的檔案,或是創造另一個與真正檔案內容不同的檔案。

        (2) 增加系統安全
            若您必須開放使用者登入機器,又害怕使用者利用系統內部的漏洞取得額
            外的權限,破壞系統設定與竊取資料,使用虛擬系統將可以保護系統的資
            料與系統運作,讓惡意的使用者只能做到有限的破壞。

      3.如何以Solaris架設虛擬系統
        其實所謂的"虛擬系統",主要是利用chroot(Change Root)來達成,亦即改變根
        目錄的位置,而使得系統對應到一新的系統設定中。

        要達到這個目的,大致上可分為兩種方法,一是修改程式碼,另外一個則是用
        系統本身的命令來達成。

        在此我們并不打算詳細說明有關修改程式碼的部份如何做,簡單的說,程式部
        份主要是利用chroot()這個C函式來改變根目錄的位置,較為麻煩的地方在於你
        可能要修改inetd程式或其它網路服務程式,當然你也可以自己寫這些程式,
        不過不是每個管理者都對攢寫程式有興趣的。

        但不論你采用哪一種方法,有一件事是都需要做的,那就是創造一個虛擬的系
        統環境。以下簡單列出如何在"/vs"這個目錄下,創造一個新的系統環境,并且
        不修改程式來啟動虛擬系統的服務:

            tar -cf /system.tar /var /usr /etc /dev /devices
            將系統中的/var, /usr, /etc, /dev, /devices壓入system.tar這個檔。

            tar -xf /system.tar /vs
            將system.tar這個檔的資料解開放在/vs目錄下。

        以上兩行指令便能系統的檔案到"/vs"目錄去,此時當你下達"chroot /vs 
        /usr/bin/sh"指令時,將會得到和原本系統相似的環境。而在這樣的環境中,使
        用者不結束目前的shell(chroot後所得的的shell)是無法藉由任何指令返回原來
        的系統的。

        然而事實上你不需要全部的系統檔案到"虛擬系統"去,只要所需的檔
        案即可。至於什麼是所需的檔案,端看你安裝了哪些服務。底下所列為在"/vs"
        中創造FTP的"虛擬系統"做法:
      
        (1)"虛擬系統"中的"/etc"目錄
          創造"虛擬系統"中的"/etc"目錄,以放置密碼及設定檔。
            mkdir /vs/etc 

          設定"虛擬系統"中的"/etc/inetd.conf"檔。
            echo "ftp   stream  tcp   nowait  root  /usr/sbin/in.ftpd  
                  in.ftpd" > /vs/etc/inetd.conf

          設定"虛擬系統"中的"/etc/passwd"檔。
            echo "root:x:0:1:Super-User:/:/usr/bin/tcsh" > /vs/etc/passwd
            echo "ftp:x:60:60:Anonymous Ftp:/:/dev/null" >> /vs/etc/passwd

          設定"虛擬系統"中的"/etc/shadow"檔。
            echo "root:NP:6445::::::" > /vs/etc/shadow
            echo "ftp:NP:6445::::::" >> /vs/etc/shadow

        (2) "虛擬系統"中的"/var"目錄
            創造"虛擬系統"中的"/var"目錄,以放置系統記錄檔。
            mkdir /vs/var
            mkdir /vs/var/adm

        (3) "虛擬系統"中的"/usr"目錄
            創造"虛擬系統"中的"/var"目錄,以放置系統程式及程式庫。
            mkdir /vs/usr
            mkdir /vs/usr/bin
            mkdir /vs/usr/sbin
            mkdir /vs/usr/lib

            從"/usr/lib"拷貝下列檔案至"/vs/usr/lib"
            ld.so.1
            libauth.so.1
            libbsm.so.1
            libc.so.1
            libcmd.so.1
            libcrypt_i.so.1
            libdl.so.1
            libgen.so.1
            libmp.so.1
            libmp.so.2
            libnsl.so.1
            libsocket.so.1
            nss_files.so.1

            從"/usr/bin"拷貝下列檔案至"/vs/usr/bin"
            *ls

            從"/usr/sbin"拷貝下列檔案至"/vs/usr/sbin"
            *in.ftpd (FTP伺服器程式)
            *inetd (Internet Super Daemon)

          (4)"虛擬系統"中的"/dev"與"/devices"目錄
            作"/dev"、"/devices"的tar檔。
            tar -cf /dev.tar /dev /devices
          
            將tar檔解至"/vs"目錄下。
            tar -xf /dev.tar /vs

            刪除tar檔
            rm /dev.tar

          (5)啟動服務
            chroot /vs /usr/sbin/inetd -s 
            此步驟須注意是否關閉原始系統中inetd.conf的ftp選項,否則無法正常啟動。

      4.結語
        有人或許會問,anonymous ftp本身就有做chroot的動作,為何還要自己做一個虛擬
        系統呢? 事實上,FTP服務若有漏洞,入侵者可透過漏洞取得root權限,此時anonymous 
        ftp的chroot未必會被執行,若未執行chroot,那整個系統就暴露在入侵者眼前,但若你
        做了虛擬系統,將強制使用者連線時已在虛擬系統中,即使入侵者透過漏洞取得root
        權限,亦會被限制於虛擬系統中,將難以破壞原本的系統,如此可將系統損害降低。
        至於其它的服務如何在虛擬系統中啟動,方法與步驟是相似的,有問題歡迎來信討論
        ,請寄至twcert@cert.org.tw。

    原文轉自:http://www.kjueaiud.com

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>