3.HONEYDANBERUUCP
有兩個(gè)主要的UUCP版本,第一個(gè)是與UNIX系統(tǒng)V一起頒布的,在本節(jié)將稱為老UUCP,另一個(gè)版本稱為HONEYDANBERUUCP,由AT&T頒布.
HONEYDANBERUUCP較之老UUCP有若干改進(jìn):
<1>支持更多的撥號(hào)和網(wǎng)絡(luò):
◆智能自動(dòng)撥號(hào)調(diào)制解調(diào)器以及標(biāo)準(zhǔn)AT&T技術(shù)的801自動(dòng)撥號(hào)器.
◆網(wǎng)絡(luò),如DATAKITVCS,UNET/ETHERNET,3COM/ETHERNET,SYTEK,TCP(BSDUNIX系統(tǒng)).
◆連接到LAN的撥號(hào)器.
◆X.25永久性虛擬環(huán)網(wǎng)(用X.25協(xié)議)
<2>重新組織了/usr/spool/uucp目錄,在該目錄下,對(duì)每個(gè)遠(yuǎn)程系統(tǒng)有一個(gè)目錄.
<3>加強(qiáng)了安全.
◆USERFILE和L.cmds文件組合成一個(gè)文件Permissions.
◆可以在一級(jí)級(jí)系統(tǒng)上指定遠(yuǎn)程可執(zhí)行命令.
◆可分別控制文件傳入和文件傳出.
◆缺省的安全設(shè)置很嚴(yán)格.
(1)HONEYDANBERUUCP與老UUCP的差別
HONEYDANBERUUCP中的/usr/lib/uucp/Systems文件是原來UUCP中的/usr/lib/uucp/L.sys.HONEYDANBERUUCP中/usr/spool/uucp/.log下的一個(gè)目錄代替了老UUCP的文件/usr/spool/uucp/logFILE./usr/spool/uucp/.log中的目錄uucico,uucp,uux,uuxqt含有相應(yīng)命令的記錄文件,各目錄對(duì)應(yīng)最近處于活躍狀態(tài)的遠(yuǎn)程系統(tǒng)都有一個(gè)記錄文件(記錄文件在這些目錄中通常保存一個(gè)星期).
如果一個(gè)調(diào)用本系統(tǒng)的遠(yuǎn)程系統(tǒng)未列于Systems文件中,uucico將不允許該遠(yuǎn)程系統(tǒng)執(zhí)行任何操作,而是啟動(dòng)shell程序/usr/lib/uucp/remote.unknown,由UUCP提供的該shell程序的缺省版本將在/usr/spool/uucp/.Admin/Foreign文件中記下遠(yuǎn)程系統(tǒng)的登錄時(shí)間,日期及系統(tǒng)名.只要使remote.unknown不可執(zhí)行,就能禁止這一操作,以達(dá)到與老UUCP兼容.
C.,D.,X.,TM.等文件存放在/usr/spool/uucp下的不同目錄中,目錄名就是文件對(duì)應(yīng)的遠(yuǎn)程系統(tǒng)名.
在HONEYDANBERUUCP中USERFILE與L.cmds文件合并在一起,這個(gè)新文件/usr/lib/uucp/Permissions提供了更靈活的授予外系統(tǒng)存取許可的控制.文件中的規(guī)則表定義了可以發(fā)出請(qǐng)示的各種系統(tǒng).規(guī)則與選項(xiàng)的格式如下.
rule=listoption=yes|nooption=list... |
(2)登錄名規(guī)則
LOGNAME規(guī)則用于控制作為登錄shell啟動(dòng)的uucico.
LOGNAME=nuucp
指定對(duì)所有登錄到nuucp戶頭下的系統(tǒng)加缺省限制:
◆遠(yuǎn)程系統(tǒng)只能發(fā)送文件到/usr/spool/uucppublic目錄中.
◆遠(yuǎn)程系統(tǒng)不能請(qǐng)求接收任何文件.
◆當(dāng)uucico調(diào)用遠(yuǎn)程系統(tǒng)時(shí),才發(fā)送已排入隊(duì)列要發(fā)送到該遠(yuǎn)程系統(tǒng)的文件.這是uucico準(zhǔn)確地識(shí)別遠(yuǎn)程系統(tǒng)的唯一方法(任何系統(tǒng)都可調(diào)用本系統(tǒng)并冒充是xyz系統(tǒng)).
◆由uuxqtux遠(yuǎn)程系統(tǒng)的名義可執(zhí)行的命令是缺省規(guī)定的命令,這些缺省命令在編譯時(shí)定義(通常只有rmail,rnews命令).
◆可用冒號(hào)分隔開若干個(gè)其它系統(tǒng)的uucico的登錄戶頭.
LOGNAME=nuucp:xuucp:yuucp |
一個(gè)LOGNAME規(guī)則就足夠啟動(dòng)HONEYDANBERUUCP系統(tǒng).事實(shí)上,當(dāng)該系統(tǒng)運(yùn)行時(shí),將在Permissions文件中放一個(gè)無選項(xiàng)的LOGNAME規(guī)則,該規(guī)則應(yīng)用于在/etc/passwd文件入口項(xiàng)shell域中有/usr/lib/uucp/uucico的所有登錄戶頭.
可使用若干選擇忽略缺省限制,這些選項(xiàng)可組合,允許或限制各種操作.例如可用WRITE選項(xiàng)指定一個(gè)或多個(gè)送入文件的目錄,而不用被限制送入/usr/spool/uucppublic目錄.
LOGNAME=nuucpWRITE=/ |
遠(yuǎn)程UUCP請(qǐng)求可重寫任何有寫許可的文件,可指定多個(gè)寫入文件的目錄.用冒號(hào)分隔開:
LOGNAME=nnuucpWRITE=/usr:/floppy |
用REQUEST=yes選項(xiàng)可允許遠(yuǎn)程系統(tǒng)的用戶從本系統(tǒng)拷貝文件.
LOGNAME=nuucpREQUEST=yes |
LOGNAME=nuucpREQUEST=yesREAD=/usr |
用SENDFILES=yes選項(xiàng)可允許uucico在遠(yuǎn)程系統(tǒng)調(diào)用本系統(tǒng)時(shí)發(fā)送出已排隊(duì)的文件.
LOGNAME=nuucpSENDFILES=yes |
用CALLBACK=yes選項(xiàng)迫使任何登錄到指定戶頭的系統(tǒng)callback.
注意:CALLBACK=yes不能與其它選項(xiàng)組合作用.如果其它選項(xiàng)與這條選項(xiàng)列在一起,其它選項(xiàng)將被忽略.
NOREAD和NOWRITE選項(xiàng)可分別與READ和WRITE選項(xiàng)一起使用.指定NOREAD選項(xiàng)下的目錄表,可建立對(duì)READ選項(xiàng)的例外處理(即指出READ目錄中不能由遠(yuǎn)程系統(tǒng)請(qǐng)求的目錄),例如:
LOGNAME=nuucp,REQUEST=yesREAD=/NOREAD=/etc
該規(guī)則允許遠(yuǎn)程系統(tǒng)請(qǐng)求系統(tǒng)中任何其他人可讀的文件,但不包括/etc中的文件,NOWRITE,WRITE的聯(lián)合用法與上類似.
一般來說,不要將缺省限制改得太多.若本系統(tǒng)被另一系統(tǒng)調(diào)去存貯電話費(fèi)用或系統(tǒng)管理員沒有辦法撥出,可以用SENDFILE選項(xiàng).若要對(duì)某些機(jī)器取消限制,則應(yīng)當(dāng)建立一個(gè)僅用于那些機(jī)器的uucico登錄戶頭.例如:
LOGNAME=nuucp,REQUEST=yesREAD=/NOREAD=/etc |
如系統(tǒng)有信任和非信任的uucp戶頭,最好用PUBDIR選項(xiàng)為這兩種戶頭建立不同的公共戶頭,PUBDIR允許系統(tǒng)管理員改變uucico對(duì)公共目錄的概念(缺省為/usr/spool/uucppublic).例如:
LOGNAME=nuucpSENDFILES=yesREQUEST=yes\ PUBDIR=/usr/spool/uucppublic/nuucp LOGNAME=trustedSENDFILES=yesREQUEST=yesREAD=/WRITE=/\ PUBDIR=/usr/spool/uucppublic/trusted |
用MYNAME選項(xiàng)可以給登錄進(jìn)某一戶頭的系統(tǒng)賦與一個(gè)系統(tǒng)名:
LOGNAME=XuucpMYNAME=IOnker |
(3)MACHINE規(guī)則
MACHINE規(guī)則用于忽略缺省限制,在MACHINE規(guī)則中指定一個(gè)系統(tǒng)名表,就可使uucico調(diào)用這些系統(tǒng)時(shí)改變?nèi)笔∠拗?READ,WRITE,REQUEST,NOREAD,NOWRITE,PUBDIR選項(xiàng)的功能與LOGNAME相同.忽略CALLBACK,SENDFILES選項(xiàng),MYNAME選項(xiàng)所定義的必須與LOGNAME規(guī)則聯(lián)用,指定將賦給調(diào)用系統(tǒng)的名,該名僅當(dāng)調(diào)用所定義的系統(tǒng)時(shí)才用.
MACHINE規(guī)則的格式如下:
MACHINE=zuul:gozur:enigmaWRITE=/READ=/ |
系統(tǒng)名OTHER用于為指定用戶外的所有其他用戶建立MACHINE規(guī)則.
COMMANDS選項(xiàng)用于改變uuxqt通過遠(yuǎn)程請(qǐng)求執(zhí)行的缺省命令表.
MACHINE=zuulCOMMANDS=rmail:rnews:lp |
COMMANDS選項(xiàng)所指定的命令將用缺省設(shè)置的路徑PATH.PATH在編輯uuxqt時(shí)被建立通常設(shè)置為/bin:/usr/bin.在COMMANDS選項(xiàng)中給出全路徑名可以忽略缺省PATH.
MACHINE=zuulCOMMANDS=umail:/usr/local/bin/rnews:lp |
有兩種方法可以證實(shí)系統(tǒng)的身份.一種方法是拒絕用CALLBACK=yes與調(diào)用系統(tǒng)對(duì)話.只要電話和網(wǎng)絡(luò)線未被破密或改變,局域系統(tǒng)就能肯定地確認(rèn)遠(yuǎn)程系統(tǒng)的身份.另一種方法是在LOGNAME規(guī)則中用VALIDATE選項(xiàng).若必須允許某些系統(tǒng)運(yùn)行"危險(xiǎn)"的命令,可聯(lián)用COMMANDS和VALIDATE選項(xiàng),
VALIDATE選項(xiàng)用于LOGNAME規(guī)則中指定某系統(tǒng)必須登錄到LOGNAME規(guī)定的登錄戶頭下:
LOGNAME=trustedVALIDATE=zuul MACHINE=COMMANDS=rmail:rnews:lp |