資源描述:
《用solaris架設(shè)ftp虛擬服務(wù)器》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在學(xué)術(shù)論文-天天文庫。
1、用Solaris架設(shè)FTP虛擬服務(wù)器 1、何謂虛擬服務(wù)器系統(tǒng) 虛擬系統(tǒng)的意思是假的系統(tǒng),亦即當(dāng)一個使用者使用的是虛擬系統(tǒng)時,他所看到的系統(tǒng)檔案及程式,并不是系統(tǒng)管理者所使用的檔案。 例如管理者鍵入ls-al/usr/bin/ls的命令時,看到的檔案大小為32767bytes,而其他使用者鍵入ls-al/usr/bin/ls的命令時,看到的卻為65535bytes,表示為兩個檔案的路徑雖然相同,但卻為不同的檔案。 2、虛擬系統(tǒng)的功能為何 (1)避免其它使用者使用重要資料 若您不愿意讓使用
2、者觀看或執(zhí)行某些檔案,那你可以使用虛擬系統(tǒng),讓使用者看不到特定的檔案,或是創(chuàng)造另一個與真正檔案內(nèi)容不同的檔案。 (2)增加系統(tǒng)安全性 若您必須開放使用者登入機(jī)器,又害怕使用者利用系統(tǒng)內(nèi)部的漏洞取得額外的權(quán)限,破壞系統(tǒng)設(shè)定與竊取資料,使用虛擬系統(tǒng)將可以保護(hù)系統(tǒng)的資料與系統(tǒng)運作,讓惡意的使用者只能做到有限的破壞?! ?、如何以Solaris架設(shè)虛擬系統(tǒng) 其實所謂的虛擬系統(tǒng),主要是利用chroot(ChangeRoot)來達(dá)成,亦即改變根目錄的位置,而使得系統(tǒng)對應(yīng)到一新的系統(tǒng)設(shè)定中。 要達(dá)到這個
3、目的,大致上可分為兩種方法,一是修改程式碼,另外一個則是用系統(tǒng)本身的命令來達(dá)成?! ≡诖宋覀儾⒉淮蛩阍敿?xì)說明有關(guān)修改程式碼的部份如何做,簡單的說,程式部份主要是利用chroot()這個C函式來改變根目錄的位置,較為麻煩的地方在於你可能要修改id程式或其它網(wǎng)路服務(wù)程式,當(dāng)然你也可以自己寫這些程式,不過不是每個管理者都對攢寫程式有興趣的?! 〉徽撃悴捎媚囊环N方法,有一件事是都需要做的,那就是創(chuàng)造一個虛擬的系統(tǒng)環(huán)境。以下簡單列出如何在/vs這個目錄下,創(chuàng)造一個新的系統(tǒng)環(huán)境,并且不修改程式來啟動虛擬系統(tǒng)
4、的服務(wù): tar-cf/system.tar/var/usr/etc/dev/devices 將系統(tǒng)中的/var,/usr,/etc,/dev,/devices壓入system.tar這個檔?! ar-xf/system.tar/vs 將system.tar這個檔的資料解開放在/vs目錄下?! ∫陨蟽尚兄噶畋隳芟到y(tǒng)的檔案到/vs目錄去,此時當(dāng)你下達(dá)chroot/vs/usr/bin/sh指令時,將會得到和原本系統(tǒng)相似的環(huán)境。而在這樣的環(huán)境中,使用者不結(jié)束目前的shell(chroot後所得
5、的的shell)是無法藉由任何指令返回原來的系統(tǒng)的?! ∪欢聦嵣夏悴恍枰康南到y(tǒng)檔案到虛擬系統(tǒng)去,只要所需的檔案即可。至於什麼是所需的檔案,端看你安裝了哪些服務(wù)。底下所列為在/vs中創(chuàng)造FTP的虛擬系統(tǒng)做法: (1)虛擬系統(tǒng)中的/etc目錄 創(chuàng)造虛擬系統(tǒng)中的/etc目錄,以放置密碼及設(shè)定檔?! kdir/vs/etc 設(shè)定虛擬系統(tǒng)中的/etc/id.conf檔?! choftpstreamtcpnoousFtp:/:/dev/null>>/vs/etc/passkdir/
6、vs/var mkdir/vs/var/adm (3)虛擬系統(tǒng)中的/usr目錄 創(chuàng)造虛擬系統(tǒng)中的/var目錄,以放置系統(tǒng)程式及程式庫?! kdir/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 libd
7、l.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拷12下一頁——感謝閱讀這篇文章,..,貝下列檔案至/vs/usr/sbin *in.ftpd(FTP伺服器程式) *id(InterSuperDaemon) (4)虛擬系統(tǒng)中的/dev與/devices目錄 作/dev、/d
8、evices的tar檔?! ar-cf/dev.tar/dev/devices 將tar檔解至/vs目錄下。 tar-xf/dev.tar/vs 刪除tar檔 rm/dev.tar (5)啟動服務(wù) chroot/vs/usr/sbin/id-s 此步驟須注意是否關(guān)閉原始系統(tǒng)中id.conf的ftp選項,否則無法正常啟動?! ?、結(jié)語 有人或許會問,anonymousftp本身就有做chroot的動作,為何還要自己做一個虛擬系統(tǒng)呢?事實上,F(xiàn)TP服務(wù)若有漏洞,入侵者