251使用FreeBSDLinux和Windows建立网路文书服务环境.docx
- 文档编号:3152743
- 上传时间:2023-05-05
- 格式:DOCX
- 页数:32
- 大小:369.02KB
251使用FreeBSDLinux和Windows建立网路文书服务环境.docx
《251使用FreeBSDLinux和Windows建立网路文书服务环境.docx》由会员分享,可在线阅读,更多相关《251使用FreeBSDLinux和Windows建立网路文书服务环境.docx(32页珍藏版)》请在冰点文库上搜索。
251使用FreeBSDLinux和Windows建立网路文书服务环境
附錄E
使用FreeBSD(Linux)和Windows建立網路文書服務環境
摘要
●sniffit網路竊聽
●SNP安全網路協定
●PGPKeyserver安裝及運用
●Steganography蓋子技術
●NTP網路校時
●sendmail管理更新
●Apache更新、索引功能和使用者管理
●Samba資源分享
●log系統記錄
前言
筆者使用兩期的文章簡介了FreeBSD安裝的部份,(雖然FreeBSDRelease2.2.7已經發表,安裝方法是類似的),但當我們安裝完成FreeBSD或Linux系統之後,讀者一定曾好奇的問:
它要做什麼呢?
它對我有何好處呢?
雖然它是免費,可是我MS-Windows98/NT玩得好好的呀!
筆者首先說明如何利用FreeBSD(Linux)當作網路伺服端,MS-Windows當作網路客戶端,來建立一般辦公室中最需要的網路文書服務環境,至於其它的應用筆者日後再介紹。
也因為文章過長,故筆者分為上下兩期來介紹,其重點分為九大部分,如目標所勾勒的,看似完全獨立(其實每一部份均可獨立成章)卻是環環相扣,主要的目的是說明在建立網路文書服務環境中可能遭遇的問題,並使用最少的金錢和管理的人力。
請讀者在閱讀本文的時候順道想一下,為何筆者要安排這些順序呢?
何者又是你所需要的?
另外筆者也或將原始文章和文章中所提及的軟體一併放入http:
//mouse.oit.edu.tw,減少讀者網路下載的時間。
E.1Sniffit網路竊聽
這個程式是由比利時BrechtClaerhout工程師所設計的,據他的描述主要是針對TCP/IP協定的不安全性做一番探討,也就是說此軟體的功能是對正在進行TCP/IP協定的機器進行竊聽。
簡單來說此軟體的功能是竊聽兩機器間的通訊封包,並將它紀錄下來,但是必須封包有經過執行sniffit程式的機器才行,所以sniffit也只能竊聽同一網域上的機器,它通常並不能竊聽不是同一網域的機器封包,除非讓這個封包經過執行sniffit的機器,否則不太可能能竊取到同網域以外的機器封包,更詳細的資料請讀者參考http:
//reptile.rug.ac.be/~coder/。
E.1.1FreeBSD安裝方法
由於FreeBSD預設核心(kernel)並不支援BPF,所以必須先重新編輯核心,日後才可以執行sniffit程式,編輯核心方法如下:
cd/usr/src/sys/i386/conf
eeGENERIC
pseudo-devicebpfilter10←加入此行
(請參考http:
//www.freebsd.org/handbook/handbook48.html)
configGENERIC
cd/usr/src/sys/compile/GENERIC
makedependallinstall
編輯好核心後請從新開機,sniffit目前有兩個版本0.3.5和0.3.7.beta,其中0.3.7.beta據筆者測試的結果可能必須修改sn_resolv.c才可正確編輯,修改的方法是找出程式中的底下五行,並將它註記(remark)起來。
//if((ret=inet_addr(name))!
=INADDR_NONE)
//{/*dotted-decimal*/
//returnret;
//}
//else
安裝過程如下:
tarxvfzsniffit.0.3.7.beta.tar.gz←解壓縮至sniffit.0.3.7.beta目錄中
cdsniffit.0.3.7.beta←切換至sniffit.0.3.7.beta目錄
(建議修改sn_resolv.c)
./configure←建立組態檔
make←編輯程式
只要得到一個執行檔案sniffit,就表示此軟體已經安裝成功了。
E.1.2Linux安裝方法
在安裝之前,請確定LinuxKernel有否支援
SystemVIPC(CONFIG_SYSVIPC)[y/n/?
]y
接下來請執行底下兩行指令,否則sniffit–Ior-i可能無法執行。
cp/usr/include/ncurses/*/usr/include/
mv/usr/include/curses.h/usr/include/ncurses.h
安裝方法和FreeBSD相同,但不須修改sn_resolv.c。
另外,筆者在這裡也一併介紹的是tod.tar.gz(TouchofDeath)這個程式,它跟sniffit一樣是由同一個工程師撰寫出來的,這個程式是使用在視窗環境的(sniffit–Ior-i),它的功能是能將正在連線的機器強迫斷線,只要在視窗環境下有顯示出來的機器,都逃不過tod這個程式的斷線作用。
請將此程式tod.tar.gz拷貝至sniffit所在的目錄下,執行
tarzxvftod.tar.gz
將此程式解壓,請詳細閱讀TOD.README這個說明檔,以了解如何安裝此軟體,不過目前它只支援Linux。
解壓之後會得到tod這個執行檔,請執行
ln-stodsniffit_key5
為tod這個執行建立一個連結檔。
這樣一來,要在視窗上將游標指在你要將其斷線的機器上按下【F5】就可以將其斷線了,如果讀者有安裝上的問題可以參考sniffit-FAQ。
E.1.3Sniffit使用方法
詳細的使用方法請參考README.FIRST,筆者在此僅介紹幾個簡單範例。
範例:
sniffit–p23–a-b–s192.192.73.3>slog&
說明:
對192.192.73.3的port23號進行監聽,也就是TELNET,並記錄於slog中。
範例:
sniffit-Pip-Picmp-Ptcp-p0-b-a-d-x-s192.192.73.3
說明:
對192.192.73.3的所有port號和是IP、ICMP、TCP的協定進行監聽。
另外也常用視窗的方式來監聽,指令如sniffit–i或sniffit–I,如圖一所示,使用q或【F10】離開。
圖一
sniffit可以說僅是網路駭客的基本入門程式而已,而更有興趣的讀者可以連線至sniffit主站,看看有關於網路偽裝spoofing的做法,或許筆者日後班門弄斧一般。
E.2SNP(SecureNetworkProtocol)安全網路協定
由上述之sniffit網路竊聽、spoof網路偽裝,可知網路通訊是多麼的不安全,故FreeBSD預設root僅能由主控台登入,是必免有心人士取得root的密碼進而對系統破壞。
為防患此一危險,由交通大學資訊工程研究所謝續平教授所發展出的安全網路協定,將傳輸中的資料加以編碼,使得竊聽所得的將是一堆沒有意義資料,更詳細的資料請參考ftp:
//ftp.csie.nctu.edu.tw/pub/CSIE/snp/。
E.2.1安裝
FreeBSD&Linux安裝方法相同,首先請將路經更換到根目錄之下,在根目錄之下將此軟體解壓,執行如下:
cd/;tarxvfzsnp-0.91-FreeBSD2.2.6-bin.tar.gz←針對FreeBSD
cd/;tarxvfzsnp-0.91-Linux2.0-bin.tar.gz←針對Linux
接下來建立/etc/snp這個目錄,可以這樣執行:
mkdir/etc/snp
然後執行/usr/local/bin/snptool-mc,系統會問許多問題,依讀者的需要自行修改,筆者是全都按【Enter】。
接下來請在/etc/inetd.conf這個檔案中加入以下幾行:
#SNP
ptelnetstreamtcpnowaitroot/usr/local/etc/ptelnetdptelnetd
prloginstreamtcpnowaitroot/usr/local/etc/prlogindprlogind
pftpstreamtcpnowaitroot/usr/local/etc/pftpdpftpd
ppasswdstreamtcpnowaitroot/usr/local/etc/ppwddppwdd
接下來請在/etc/services這個檔案中加入這幾行:
#SNP
ptelnet970/tcp
prlogin971/tcp
pftp972/tcppftp-data973/tcp
ppasswd976/tcp
snp977/tcp
接下來執行/usr/local/bin/snptool-init,來設定SNPServer的環境,然後執行/usr/local/etc/snperv-m,來是開啟SNPServer,當然也可以在rc.local中增加一行/usr/local/etc/snperv–m,讓系統一啟動便具有SNP功能。
E.2.2設定
SNPServer架設成功後,接下來就要來增加使用者了,執行/usr/local/bin/snptool–auusername來增加使用者,再執行/usr/local/bin/snptool-spusername來設定密碼。
讀者要注意的是,在SNPServer所增加的使用者要跟原來系統的使用者名稱一樣,但是密碼可以不一樣,假設在原系統裡有shie這個使用者名稱,那就要在SNPServer裡用以上的範例來增加shie這個使用者名稱,也就是說要增加跟原來系統一樣名稱的使用者才能透過SNPServer再進入系統。
E.2.3使用
接下來測試SNPServer是否可以動作,在解壓snp-0.91-FreeBSD2.2.6-bin.tar.gz(或snp-0.91-Linux2.0-bin.tar.gz)這個壓縮檔時,可以在/usr/local/bin這個目錄中找到以下各個執行程式:
pftp
plogin
prlogin
ptelnet
讀者可以發現這是ftp、login、rlogin和telnet這幾個執行程式的變相程式,這些SNP軟體所附的程式是進入SNPServer的工具,沒有這些工具就無法進入SNPServer了,須注意的是pftp不要和系統預設pftp混淆了。
至於在MS-Windows下有pftp,pftp_w,ptelnet,使用方法如圖二和圖三所示:
圖二
圖三
E.3PGP安裝及運用
E.3.1Unix安裝和使用
E.3.1.1FreeBSD安裝方法
取得pgp-5.0i.tgz然後執行pkg_addpgp-5.0i.tgz即可安裝完成。
E.3.1.2Linux安裝方法
目前在5.0i的版本,讀者可以依自身的環境取得安裝,由於筆者使用的是SlackwareLinux,故需取得pgp50i-unix-src.tar.gz原始碼來安裝。
安裝步驟如下,使用root身份進入系統中後,執行以下的指令︰
tarxvfzpgp50i-unix-src.tar.gz←解壓縮至pgp50i目錄中
cdpgp50i/src←切換至pgp50i/src目錄
./configure←建立組態檔
make←編譯程式
makeinstall←安裝
cd←切換至家目錄
rm–rpgp50i←刪除不需要的檔案
讀者可以讀取pgp50i/src/README來獲得更詳細的安裝說明,安裝完畢後也可以執行manpgp,pgpe,pgps,pgpv,pgpk,pgp.cfg來獲得PGP的使用說明。
E.3.1.3使用
由於PGP是使用家(home)目錄下.pgp/pgp.cfg做為組態檔,故請在自己的家目錄下.pgp子目錄建立pgp.cfg檔,內容可以參考manpgp.cfg,或作一個空的pgp.cfg檔(cp/dev/nullpgp.cfg),一切使用預設值即可,當然沒有也可以,只是每次執行PGP相關程式時會出現”Cannnotopenconfigurationfile….”此訊息。
接下來我們可以使用pgpk–g來建立自己的鑰匙對,
由於PGP是使用家目錄下.pgp/pgp.cfg做為組態檔,故請在自己的家目錄下.pgp子目錄建立pgp.cfg檔,內容可以參考manpgp.cfg,或作一個空的pgp.cfg檔,一切使用預設值即可,當然沒有也可以,只是每次執行PGP相關程式時會出現”Cannnotopenconfigurationfile….”此訊息。
接下來我們可以使用pgpk–g來建立自己的鑰匙對,範例如下:
mouse:
~#pgpk-g
Cannotopenconfigurationfile/home/shie/.pgp/pgp.cfg
Choosethetypeofyourpublickey:
1)DSS/Diffie-Hellman-Newalgorithmfor5.0(default)
2)RSA
Choose1or2:
1
Pickyourpublic/privatekeypairkeysize:
(SizesareDiffie-Hellman/DSS;Readtheuser'sguideformoreinformation)
1)768/768bits-Commercialgrade,probablynotcurrentlybreakable
2)1024/1024bits-Highcommercialgrade,secureformanyyears
3)2048/1024bits-"Military"grade,secureforforseeablefuture(default)
4)3072/1024bits-Archivalgrade,slow,highestsecurity
Choose1,2,3or4,orenterdesirednumberofDiffie-Hellmanbits
(768-4096):
3
(Producinga1024bitDSSanda2048bitDiffie-Hellmankey)
YouneedauserIDforyourpublickey.Thedesiredformforthis
userIDisyourFULLname,followedbyyourE-mailaddressenclosedin
JoeSmith
Ifyouviolatethisstandard,youwilllosemuchofthebenefitsof
PGP5.0'skeyserverandemailintegration.
EnterauserIDforyourpublickey:
Shih-FarnShie
Enterthevalidityperiodofyourkeyindaysfrom0-999
0isforever(andthedefault):
Youneedapassphrasetoprotectyourprivatekey(s).
Yourpassphrasecanbeanysentenceorphraseandmayhavemany
words,spaces,punctuation,oranyotherprintablecharacters.
Enterpassphrase:
Enteragain,forconfirmation:
Enterpassphrase:
讀者可以自行對照附錄D中Win95下產生鑰匙對的方式,接下來筆者簡單說明其它指令的使用方式,而指令其中的
pgpk–x
pgpk–a[keyfile]←將公開鑰匙[keyfile]加入鑰匙環中
pgpk–ll[userid]←列印出公開鑰匙
pgpe–r
pgps–u[userid]–at[-ooutfile]file←加簽file至outfile中
pgpe–r
pgpv[-ooutfile]file←解密file至outfile中
加密加簽後的檔案可以使用pine中的Attchmnt功能寄出。
E.3.2DOS安裝和使用
相同的,目前在5.0i的DOS版本,讀者可以取得pgp50ibi.zip來安裝,解壓縮後執行InstallF即可安裝完成,至於它的使用方法和Unix使用方法相同,讀者請自行參考。
E.3.3鑰匙伺服器安裝與管理
在安裝鑰匙伺服器之前,筆者想要尋問讀者的是,你有安裝鑰匙伺服器的需要嗎?
如果你所處的環境是中小企業或區域網路中,PGP的使用者應該是有限的,那麼應該是可以不需要架設鑰匙伺服器,筆者說明如下:
一般而言,企業中下屬所產生的公開鑰匙必須經由上司的加簽後交由網路管理人員管理,而網路管理人員可以使用MicrosoftNetwork將需要的公開鑰匙作資源分享,或使用Netware,WWW等分享出來,通知所屬知悉,而取得的公開鑰匙可以檢查上司的加簽和指紋(Fingerprint)驗明真偽,附帶提的是每個人的公開鑰匙環為pubring.pkr,Windows在C:
\ProgramFiles\PGP\PGP55I目錄下,Unix在~/.pgp目錄下。
如果讀者因為要提供公眾服務或研究所需而決定架設鑰匙伺服器,可以連線至http:
//www.mit.edu/people/marc/pks/下取得鑰匙伺服器的說明和安裝程式,目前最新的版本是pks-0.9.2.tar.gz,但由於還在beta的測試階段,如果讀者在安裝時遇到問題的話可以mailto:
marc@mit.edu,作者會十分樂意提供解答的。
E.3.3.1安裝
使用root身份進入系統中,執行以下的指令:
tarxvfzpks-0.9.2.tar.gz←解壓縮至pks-0.9.2目錄中
cdpks-0.9.2←切換至pks-0.9.2目錄
./configure--prefix=/root/pks-0.9.2←建立組態檔
make←編譯程式
(如果FreeBSD編譯失敗時,請將db2/Makefile此行foriin$……前面加#註記,然後cddb2/obj,執行make,接著再回來pks-0.9.2下執行make)
makeinstall←安裝
bin/pksclientvar/dbcreate←建立鑰匙資料庫
bin/pksclientvar/dbaddkeyring.pgp←將公開鑰匙加入鑰匙資料庫中,此步驟可省略
bin/pksdetc/pksd.conf&sleep5←測試伺服器程式,如果沒有出現Exit,恭喜你成功了,執行ps看看
mvman/man5/*/usr/man/man5/←搬移說明檔
mvman/man8/*/usr/man/man8/
rm*;rm–rdb2;rm–rman←刪除不需要的檔案
讀者可以讀取pks-0.9.2/README來獲得更詳細的安裝說明,安裝完畢後也可以執行manpks-intro,pksd,pksclient,pksdctl,pksd.conf來獲得PKS的使用說明,最後將鑰匙伺服器程式加到系統自動執行檔rc.local中,範例如下:
echo“RunningPGPkeyServer…”
/root/pks-0.9.2/bin/pksd/root/pks-0.9.2/etc/pksd.conf&sleep5
E.3.3.2管理和使用
鑰匙伺服器管理指令如下:
~#pks-0.9.2/bin/pksclientpks-0.9.2/var/dbcreate←建立鑰匙資料庫
~#pks-0.9.2/bin/pksclientpks-0.9.2/var/dbaddfilename[flags]←加入鑰匙
~#pks-0.9.2/bin/pksclientpks-0.9.2/var/dbgetuserid[flags]←取得鑰匙
~#pks-0.9.2/bin/pksclientpks-0.9.2/var/dbindexuserid[flags]←鑰匙列表
~#pks-0.9.2/bin/pksclientpks-0.9.2/var/dbdeleteuserid←刪除鑰匙
~#pks-0.9.2/bin/pksclientpks-0.9.2/var/dbdisableuserid[flags]←鑰匙作廢
在MS-WindowsPGPKeys程式下點取【Edit】→【Preferences】→【Servers】→【New】增加新的鑰匙伺服器http:
//mouse.oit.edu.tw:
11371,並設為預設伺服器如圖四所示:
圖四
接下來便可以選取PGPKeys中的鑰匙,然後點取【Keys】中的【SendKeytoServer】將公開鑰匙登入伺服器中,【UpdatefromServer】從伺服器中取回更新,【Search】從伺服器中尋找適當的公開鑰匙,如圖五所示:
圖五
接下來便可點取欲加入自己鑰匙環中的鑰匙,如Shih-FarnShieshie@digital.oit.edu.tw,點取滑鼠右鍵後選擇【ImporttoLocalKeyring】後即可。
讀者或許也希望能夠提供PKS的WWW界面,將/root/pks-0.9.2/pks-commands.html複製到可以提供WWW服務的目錄下,再將pks-commands.html依自己所需的修改,其中有三個http:
//localhost:
11371請務必修改至提供鑰匙伺服器的網址,如筆者鑰匙伺服器的網址是mouse.oit.edu.tw則修改
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 251 使用 FreeBSDLinux Windows 建立 网路 文书 服务 环境