歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Unix知識 >> 關於Unix >> ConfigHOWTO系統設置(1)

ConfigHOWTO系統設置(1)

日期:2017/3/6 15:44:27   编辑:關於Unix
作者:GuidoGonzato,guido``at'ibogeo.df.unibo.it (譯者:趙平望[email protected]) v1.3.7,1999年9月6日翻譯日期:2000年1月1日 -------------------------------------------------------------------------------- 編寫本文的目的是要使您能更快 作者:Guido Gonzato, guido ``at' ibogeo.df.unibo.it
(譯者:趙平望 [email protected]
v1.3.7, 1999年9月6日翻譯日期:2000年1月1日


--------------------------------------------------------------------------------
編寫本文的目的是要使您能更快、更容易地調試剛安裝好的 Linux 系統。文內附有一些最常用的應用軟件的設置辦法。
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------

1. 導言


1.1 為什麽要編寫這份 HOWTO
我在許多 PC 上都安裝過 Linux 系統,發現目前流行的各種 Linux 版本都相當不錯,但感到不便的是缺少一些基本設置文檔。多數應用軟件在安裝後都可立即使用,但有些軟件卻不行。我還注意到同樣的問題在 c.o.l.setup 上一再重復出現。為了彌補這種缺憾,並為了我個人方便,我作了一些筆記,後來加以修改潤色,終於成為這份 HOWTO。文內附有設置最常用的一些應用軟件和程式的訣竅和實例,這應能節省您不少時間和精力。

文中所列的一些實例有時取決於使用何種 Linux 版本。目前我只有安裝 Red Hat 5.2 的 Linux 系統,內核是 2.0.36;因此如果您的 Linux 是其他版本,那就別把我提供的訣竅視為金科玉律。不過,把我提供的辦法略作修改,改用於其他版本,倒也並非難事。這份 HOWTO 不能代替其他 HOWTO,而且它也無意替代其他 HOWTO 。翻閱相關文件和其他 HOWTO 都會使人獲益匪淺,因此如果您想進一步了解這套系統,就必需勤於查找翻閱。此外,也不要想在這裡占便宜:如果您知道對某方面不了解,就請查找相關的 HOWTO 。再次提醒:Usenet 的 news:comp.os.linux.setup是尋求 Linux 配置方面的協助的最好地點。我的工作十分繁忙,務請不要找我解決配置方面的問題。

這份文件以及一些翻譯正式存放在 http://metalab.unc.edu/mdw/HOWTO。在這個網址也可找到我提到的所有其他 HOWTO 。本文的最新版本存放在 http://ibogeo.df.unibo.it/guido/Configuration


1.2 我們將作何種配置
PC的硬件配置種類繁多,但依我的經驗,有一種配置十分普遍,即裝有一個劃分為三個分割區(一個DOS/Windows區、一個 Linux 區和一個交換(swap partition)區)的大容量硬盤、音效卡、數據機、光盤機、打印機和滑鼠的 PC。目前,許多 PC 還安裝了平行埠的 ZIP 磁碟機。這樣設定的 PC 極可能是 Windows-Linux 搭配組成的網絡系統的一部分,一般作為服務器之用。

我假定這些設備是您要設置的硬件,不過將設置這些設備的辦法轉用於不同的硬件也非難事。此外,我還假定您在編輯調試硬件時,具有root的權限。

好吧!現在就讓我們卷起袖子來干吧!




--------------------------------------------------------------------------------
--------------------------------------------------------------------------------

2. 一般系統設定


2.1 安全問題
在開始啟動系統之前,首先應該決定要采用何種級別的安全規□。在作出這項決定之前,不要將電腦與網絡連接。電腦安全是極其重要的問題,但它不屬於這份 HOWTO 的討論□圍。不過,要了解電腦的安全問題可從兩方面著手:“ Linux 安全管理員手冊”( Linux Security Administrator's Guide) http://www.seifried.org/lasg 和“ Linux 安全手冊”( Linux Security Guide) http://nic.com/ (譯注:此處英文原文有漏) 下列步驟:使用Shadow password(Shadow Password HOWTO )限制網路進入機器(Section 限制網路進入Restricting Network Aclearcase/" target="_blank" >ccess)、使用 Secure Shell ( http://www.cs.hut.fi/ssh/) 或使用 Secure Remote Password ( http://srp.stanford.edu/srp/)。祝您好運。


2.2 工作日志
要保證安裝順利,必須確切知道機器裡安裝了什麽,何時作了修改,何時作了清除。因此,在動手之前,首先應該建立一本“工作日志”,紀錄作為 root 的一切舉動;在我的工作日志中,有一節專門紀錄所有改動的系統文檔、增加的 .rpms 和安裝的 .tar.gz。理論上,往回追溯以往的任何改變,應該可以回復到最初原始的安裝狀態。

千萬記住,在改動任何系統文件之前,制作備份。更理想的是用 RCS;這樣就能追蹤以往的所有改變。作為 root,決不可隨意改動系統而不加紀錄。


2.3 鍵盤

如在安裝時遺漏了這一步驟,或改用了他種鍵盤,則需要:


從/usr/lib/kbd/keymaps/中選取適當的鍵盤表;例如,it.map 就代表義大利鍵盤;
編輯/etc/sysconfig/keyboard文檔,使其讀取:KEYTABLE="it";
設定鍵盤的重復率和延遲時間,將以下內容加附到 /etc/rc.d/rc.sysinit (Red Hat) 或 /etc/rc.d/rc.boot (Caldera) 或 /etc/rc.d/boot (S.u.S.E.):
/sbin/kbdrate -s -r 16 -d 500 # or whatever you like --或其他設定的數值

要載入鍵盤表,使用/etc/rc.d/init.d/keytable start指令。其他特殊鍵位將在以下各節再作說明。
要在開機時自動設定 NumLock,則在/etc/rc.d/rc.sysinit中加入以下內容:


for tty in /dev/tty[1-9]*; do
setleds -D +num < $tty
done


2.4 啟動和援救軟片

為剛安裝好的系統,應該制作兩、三張啟動軟片,以備不時之需。您使用的 Linux 版本可能已經包括了制作這種軟片的指令,否則可用下列指令:


#
#
(譯注:作者似乎忘了填入指令)

此外,至少也要制作幾片援救軟片。在 ftp://metalab.unc.edu/pub/Linux/system/recovery可找到各種援救軟片;如果您不知道選用哪一種,我建議您試試 Tomsbtrt。


2.5 內核
IMHO,其次首先要做的工作是編制最適合您的系統的內核。編制工作並不困難,但無論如何都先看一看/usr/src/Linux/內的README檔或內核 HOWTO (Kernel HOWTO )。注意事項:


仔細想清楚需要電腦完成何種工作。一次選定內核,同時作出必要的修補(patch),遠比每月作一次設置或編譯一次內核來得省事;如果把 Linux 作為伺服器使用,尤應如此。不要忘記把未來可能會增加的硬件(例如,SCSI、Zip和網路卡等)都先編制在內核內;通常利用模組是最好的辦法;
如果你的電腦用 Cyrix 芯片,而內核對它的支持不足,則應作出必要修補,以便提高電腦性能。有關資料見: http://www.Linuxhq.com/patch/20-p0591.html;
使用筆記型電腦的用戶應改進屏幕的視覺效果。我曾經建議修補內核,但SVGATextMode (見 SVGATextMode一節)可能是最理想的解決辦法。不論采用何種辦法,在 http://www.Linuxhq.com/patch/20-p0239.html可以找到大型游標的內核修補軟件。
此外,不要將筆記型電腦串行 PCMCIA modem/fax 卡作為模組編譯;將其作為內核的一部分編譯,否則,PCMCIA modem 就無法運作;
如果使用 PCMCIA 卡,記住務必編譯這些模組;此外,如果使用 PCMCIA 網路卡,不要忘記修改/etc/pcmcia/network.opts;
如果屏幕顯示來自modprobe的信息,指出不能確定某些模組的位置,這表示需要修改/etc/conf.modules。例如,如果不使用ipx和appletalk模組,則增加下列兩行:
alias net-pf-4 off
alias net-pf-5 off

為了節省下次配置和編譯內核的時間,不妨將配置設定作為一個文檔妥善保存。注意:如果內核升級,則這個配置設定檔必然無用,因為它沒有包含新內核的各種要素。

2.6 Sendmail停機

有些系統的sendmail會使機器在啟動時停頓兩、三分鐘。原因有二:(1)機器沒有與網際網路直接連接;(2)直接連接網際網路,並有永久的IP地址。

立即解決第一種問題的辦法是確定/etc/hosts內有下列一行:

127.0.0.1 localhost

造成停頓的第二種原因是往往在/etc/hosts內有內容如下的一行:

127.0.0.1 localhost your_host_name

可將其分成以下兩行:


127.0.0.1 localhost
w.x.y.z your_host_name

同時請參考 Hostname一節



2.7 硬盤性能
如果謹慎使用 hdparm(8)就會大大提高 (E)IDE 硬盤的性能。假設使用的 Linux 中沒有包含這個軟件,可從 ftp://metalab.unc.edu/pub/Linux/system/hardware查找;設法在這個網址上找一個稱為hdparm-X.Y.tar.gz的軟件。

由於使用這個軟件的細節取決於硬盤的種類和控制程序,因此在此無法提出通則。使用不當,可能會損及文檔系統,因此使用之前,務必詳細閱讀 man 說明。以最簡單的例子而言,在/etc/rc.d/rc.sysinit內可增加一行,內容如下:


/sbin/hdparm -c1 /dev/hda # -- 假定為第一個 IDE 硬盤

這行提供了 (E)IDE 32-bit I/O 的支持。關於 -m 選項,hdparm的作者 Mark Lord 告訴我:


(...) 如果系統內的組件是前幾年的產品 [< 1997],一般都沒有問題。如果是老舊的設備,可能不行(但也許沒問題)。真正發生問題的是 2 - 3 年前在 486 和 (早期)586 母板上廣泛使用的 CMD0646 和 RZ1000 這兩種晶片。
下列設置應可使用於最近的電腦:


/sbin/hdparm -c1 -A1 -m16 -d1 /dev/hda


2.8 並聯埠 Zip 磁碟機
利用最近內核(2.x.x)所帶的驅動程序就可使用並聯埠的 Zip 磁碟機。在設置內核時,務必加裝使用 SCSI 和 SCSI 磁盤的功能。注意:打印機和 Zip 磁碟機共用並聯埠時可能會發生沖突,因此最好使用內核模組設置。在 http://www.torque.net/ 上還有一個代用的 ppa 驅動程序。

Zip 磁片出售時已經格式化,其分割為 /dev/sda4。在設定 Zip 磁碟機時,在 /etc/rc.d/rc.sysinit 檔中加附下列內容:


# Enable the Zip drive -- 設定 Zip 磁碟機
/sbin/modprobe ppa

Zip 磁片可在/etc/fstab中加列以下內容或通過 Mtools 在/etc/mtools.conf中增加下列內容加載:


drive z: file="/dev/sda4" exclusive

此外,mzip指令也可用於彈出、查詢機況、讀寫和附加密碼於 Zip 磁片;詳情請查閱man mzip。 Mtools 的網址在 http:// Linux .wauug.org/pub/knaff/mtools。


2.9 設備驅動程序
列在/dev中(或連接到實際設備驅動程序)的設備可能並不確切。檢查滑鼠、數據機和光碟驅動程序對應的設備為何,然後作出下列設定:


/dev# ln -s ttyS0 mouse; ln -s ttyS1 modem; ln -s hdb cdrom; ln -s sda4 zip

在多數筆記本電腦上,鼠標的設置是/dev/psaux:在設置 X11 時應將此列入考慮。
不妨將這些設置都通過 chmod 666 改變屬性,使所有使用者均可使用這些設備。



2.10 聲卡

我只有一張舊聲卡 Sound Blaster 16;即使您的聲卡與我的不同,不過下列方法也可引導您如何設置聲卡。

我將聲卡的驅動程序作為模組(sb.o)編入內核。然後將下列內容列入/etc/conf.modules:


options sb io=0x220 irq=5 dma=1 dma16=5 mpu_io=0x330
alias sound sb

要啟動聲卡,首先運行modprobe sound,或者使用 RedHat 的工具sndconfig。


2.11 登錄信息
如要自設登錄信息,首先檢查/etc/rc.d/rc.local是否覆蓋/etc/issue和/etc/motd的內容。(RedHat 覆蓋內容)如屬肯定,請打開文本編輯器。

如要使登錄信息帶有顏色,可在rc.local中列入下列內容:


# put a real escape character instead of ^[. To do this:
# emacs: ^Q ESC vi: ^V ESC joe: ` 0 2 7 jed: ` ESC
ESC="^[" # a real escape character
BLUE="$ESC[44;37m"
NORMAL="$ESC[40;37m"
CLEAR="$ESC[H$ESC[J"

> /etc/issue
echo "$CLEAR" >> /etc/issue
echo "$BLUE Welcome to MyServer (192.168.1.1) " >> /etc/issue
echo "$NORMAL " >> /etc/issue
echo "" >> /etc/issue


2.12 主機名稱
只運行hostname new_host_name指令也許不夠。要解決sendmail死機的問題,可采用下列步驟(只適用於單機):


編輯/etc/sysconfig/network和改變其中的主機名稱(例如new_host_name.localdomain);
相應地編輯/etc/HOSTNAME;
將新機名編入/etc/hosts;
127.0.0.1 localhost new_host_name.locadomain


2.13 滑鼠(Mouse)

gpm 的滑鼠功能對在主控台進行剪貼至為有用,也可在一些應用中使用滑鼠。在 Red Hat 系統中,檢查有否一個稱為/etc/sysconfig/mouse 的文檔,內容如下:


MOUSETYPE="Microsoft"
XEMU3=yes

此外,還得有一個/etc/rc.d/init.d/gpm檔,其中還可設定一些指令。我設定的指令如下:

...
daemon gpm -t $MOUSETYPE -d 2 -a 5 -B 132 # two-button mouse -- 雙按鈕滑鼠
...

顯而易見,其中設置當然得與滑鼠的類型相符。在多數筆記型型電腦中, MOUSETYPE 應設為 “PS/2”。

在Caldera系統中,只要在/etc/rc.d/rc.boot中加入此行即可:

/usr/bin/gpm

在S.u.S.E.中,在/etc/rc.config中加入gpm部分;在Debian系統中,則需修改 /etc/gpm.conf。

如果喜歡用Ctrl按鈕使用主控台的菜單,則需設置gpm-root。修改 /etc/gpm-root.conf中的預設菜單,然後從/etc/rc.d/rc.local啟動 gpm-root。


2.14 加載位置(Mount Points)

為方便使用,應對軟盤、其他設備和NFS的輸出目錄設定加載位置。例如,可采用下列辦法:


/mnt# mkdir floppy; mkdir cdrom; mkdir win; mkdir zip; mkdir server

此行設定了 DOS/Win 軟盤(ext2磁片)、CD-ROM、Windows 分割區、平行口 Zip 驅動器和 NFS 目錄的加載位置。

然後修改 /etc/fstab 檔,並增加下列內容:


/dev/fd0 /mnt/floppy auto user,noauto 0 1
/dev/cdrom /mnt/cdrom iso9660 ro,user,noauto 0 1
/dev/zip /mnt/zip vfat user,noauto,exec 0 1
/dev/hda1 /mnt/win vfat user,noauto 0 1
server:/export /mnt/server nfs defaults

顯而易見,第一欄必須使用正確的設備名稱。最近發表的內核已經支持 fat32;以前的內核需要修補。修補軟件可從 http://bmrc.berkeley.edu/people/chaffee/fat32.html取得。有關這方面的進一步資料,可查詢 man mount。

注意第一行中的“auto”文檔系統格式;這表示可加載 ext2 和 vfat(DOS/Windows)兩種系統格式制作的磁片。mtools也是相當好用的工具。


2.15 lilo(8) 和 LOADLIN.EXE

許多使用者在電腦上同時運行 Linux 和 DOS/Windows 兩套操作系統,並在開機時選用其中之一;這應在安裝時作出設定,如果當時沒有設定,可采取下列辦法解決。首先假定 /dev/hda1中裝有 DOS/Windows, /dev/hda2 中裝有 Linux .


將 /dev/hda 作為默認設備!

Command (m for help):a
Partition number (1-4): 2

Command (m for help):w

經過這項設定, Linux 分割區成為啟動操作系統。然後在/etc/lilo.conf中作出設定:


boot = /dev/hda2
compact # may conflict with "linear" --可能與“linear”沖突
delay = 100 # 10 seconds --等待10秒
linear # gets rid of the "1024 cylinder" problem --解決1024磁圈的問題
# message = /boot/bootmesg.txt # write your own, if you will --自訂開機信息
root = current
image = /boot/vmlinuz # boot Linux by default as this entry comes first --默認的內核
label = Linux
read-only
# append="mem=128M" # to see more memory than 64M --如果記憶內存大於64M
other = /dev/hda1
table = /dev/hda
label = dos

運行/sbin/lilo後就大功告成。由於lilo是安裝中極其重要的部分,無論如何應該詳細閱讀有關這方面的資料。

如果不打算重作設定,而要從 DOS/Windows 內啟動 Linux ,可把 LOADLIN.EXE 放入一個屬於 DOS 路徑的子目錄(DOS 分割區);然後將內核拷貝到該子目錄,例如C:\TEMP\VMLINUZ。利用下面簡單的 .BAT檔就可啟動 Linux:


rem Linux .bat
smartdrv /C
loadlin c:\temp\vmlinuz root=/dev/hda2 ro

如使用 Windows 9X,則設定這個.BAT檔的特性,使其從 MS-DOS 狀態啟動。


安全考量

在安裝 Linux 之前,先制作一張 MBR 區的備份磁片,以防不測。先運行restorrb(包括在FIPS的軟件包內),或以下面的指令制作 Linux 的死機解救磁片:

rescue:

然後至少制作兩片有MBR檔的磁片。如果一旦故障停機,可用下列指令恢復原先的 MBR:

rescue:

當然,這要在/mnt已加載包含MBR的磁片。否則,利用 DOS 的解救磁片運行FDISK /MBR。



2.16 電子郵件

如何閱讀以 HTML 格式或含有其他各種文件格式的電子郵件呢?首先要有兩個文檔:/etc/mime.types 和/etc/mailcap。第一個文檔列出文件的格式及其擴展名:


application/postscript ps eps
image/jpeg jpe jpeg jpg
text/html html

而第二個文檔規定如何顯示這種文檔的格式。

有時有的電子郵件使用 Microsoft Outlook 發送,其內容含有多重 MIME 格式。閱讀這類電子郵件需要在etc/mailcap中加入下列兩行:


text/plain; less %s; needsterminal
text/html; lynx -force_html %s; needsterminal


2.17 打印機的設置

就我所知,各種 Linux 版本均有設置打印機的工具(printtool,yast或magicfilter);否則可用基本的手動設定。

假定要用非 PostScript 打印機(也非“Windows-only”的打印機)來打印原始文件(例如 C 程序的原始碼文本)和利用 GhostScript 來打印 PostScript 文檔(此處假定已安裝了 GhostScript)。

設定打印機的步驟如下:


檢查並行口的打印機:
~# echo "hello, world" > /dev/lp0
~# echo "hello, world" > /dev/lp1

記下聯機的打印機和端口。
設定兩個 spool 子目錄:
/var/spool/lpd/# mkdir raw; mkdir postscript

如果打印機印出的結果有“台階”現象(多數 InkJet 打印機都有這種現象),則需要一個過濾器。試印下面兩列:
~# echo "first line" > /dev/lp1 ; echo "second line" > /dev/lp1

如果印出的結果如下:
first line
second line

將此文檔作為/var/spool/lpd/raw/filter保存:
#!/bin/sh
# 這個過濾器可消除“台階”現象
awk '{print $0, "\r"}'

運行chmod 755 /var/spool/lpd/raw/filter使其成為可執行文檔。
要制作用於PostScript仿真的過濾器,則將過濾器定名為 /var/spool/lpd/postscript/filter:
#!/bin/sh

DEVICE=djet500
RESOLUTION=300x300
PAPERSIZE=a4
SENDEOF=

nenscript -TUS -ZB -p- |
if [ "$DEVICE" = "PostScript" ]; then
cat -
else
gs -q -sDEVICE=$DEVICE \
-r$RESOLUTION \
-sPAPERSIZE=$PAPERSIZE \
-dNOPAUSE \
-dSAFER \
-sOutputFile=- -
fi

if [ "$SENDEOF" != "" ]; then
printf "\004"
fi

(上例使用 HP DeskJet 打印機。如為他種打印機,則作出相應修改。)
最後在/etc/printcap內增加下列內容:
# /etc/printcap
lp|ps|PS|PostScript|djps:\
:sd=/var/spool/lpd/postscript:\
:mx#0:\
:lp=/dev/lp1:\
:if=/var/spool/lpd/postscript/filter:\
:sh:
raw:\
:sd=/var/spool/lpd/raw:\
:mx#0:\
:lp=/dev/lp1:\
:if=/var/spool/lpd/raw/filter:\
:sh:

其他更為復雜或少見的打印設置,請參考 Printing-HOWTO。

注意:如使用printtool,Printtool選取的 GSDEVICE 可以用於打印,但不一定是最好的選擇。不妨對postscript.cfg檔作些修改;例如,把 GSDEVICE 內cdj500 改為 djet500,就可加快打印的速度。


2.18 SVGATextMode

放在 ftp://tsx-11.mit.edu/pub/ Linux /sources/sbin上的工具軟件對改變主控台的屏幕分辨率、字體和游標的形狀非常有用。在主控台上工作時,需要使用重音字體的文字(譯注:如歐洲文字)或需要改變筆記本電腦游標的大小都可使用這套軟件。

從默認的 VGA 參數開始,首先編輯/etc/TextConfig或/etc/TextMode。使用歐洲文字的用戶應該對其中含有“LoadFont”一節感到慶幸。


Option "LoadFont"
FontProg "/usr/bin/setfont"
FontPath "/usr/lib/kbd/consolefonts"
FontSelect "lat1u-16.psf" 8x16 9x16 8x15 9x15
FontSelect "lat1u-14.psf" 8x14 9x14 8x13 9x13
FontSelect "lat1u-12.psf" 8x12 9x12 8x11 9x11
FontSelect "lat1u-08.psf" 8x8 9x8 8x7 9x7

完成這項設定之後,運行SVGATextMode "80x34x9"。如果覺得一切運行順利,從/etc/TextMode中刪除警告,並將下行寫入 etc/rc.d/rc.sysinit:


# SVGATextMode
/usr/sbin/SVGATextMode "80x34x9"

注意:方塊游標只在有些模式下有效;在我的筆記本電腦上,其數值為“80x32x9”。



--------------------------------------------------------------------------------

--------------------------------------------------------------------------------

3. 管理員的一般工作

要做的工作那麽多,時間又那麽少!盡管有許多工作要完成,但我們還是先從這一節開始。這一節主要與網路有關。網路聯網涉及的問題□多,無法在此全部概括。首先應參考NET-3 HOWTO,此外,多數 Linux 版本也提供了如何設定網路功能的資料。此處只預備討論其中幾項要點。


假設在 Linux 上預備安裝calendar或reminder、Http、Samba、telnet/ssh登錄、匿名 ftp(anonymous ftp)、POP/IMAP服務器和NFS等功能。


3.1 網路設置
設定 Linux 各種版本網路功能的方法可能相當復雜,但下述腳本足夠啟動網路:


#!/bin/sh

# net-up.sh: set up network access --設定聯網

DEVICE=eth0 #-- 網卡
IPADDR=192.168.1.100
NETMASK=255.255.255.0
NETWORK=192.168.1.0
GATEWAY=192.168.1.1

ifconfig $DEVICE $IPADDR netmask $NETMASK up
route add -net $NETWORK netmask $NETMASK $DEVICE
route add default gw $GATEWAY

這個腳本在使用解救磁片連接網路時非常有用。當然,它只能使機器通過 ping,ftp 和 telnet 與外界聯絡。


3.2 分享網際網路

Linux 服務器的一項最有用的功能就是分享網際網路。目前,大多數現成可用的內核都已附有 IP firewalling、masquerading 和 forwarding 的功能。如要知道詳細功能,可參看 IP-Masquerade mini-HOWTO。然後安裝 ipfwadm(內核 2.0.x; http://www.xos.nl/ Linux /ipfwadm/)或 ipchains(內核2.2.x; http://www.adelaide.net.au/)。

注意:對需要的功能,啟動相應的內核模組。例如,如需要ftp,則應將下行加入 /etc/rc.d/rc.sysconfig:


/sbin/modprobe ip_masq_ftp

其他模組通常都放在/lib/modules/KERNEL-VERSION/ipv4檔中。

為本地網路的其他機器啟動IP masquerading功能的程序非常簡單。首先檢查網路初始化腳本/etc/sysconfig/network (應在應該放置的位置)是否有內容為FORWARD_IPV4=true的一行。通常在網路啟動時 /proc/sys/net/ipv4/ip_forward均設為 1。

在/etc/rc.d/rc.sysinit中增加以下數行:


# default: packets cannot go reach the outside
# 預設為數據包無法發送到網際網路
/sbin/ipfwadm -F -p deny
# allow all machines on the local network to reach the Internet
# 使本地網路上的所有機器均可連接網際網路
/sbin/ipfwadm -F -a m -S 192.168.1.0/24 -D 0.0.0.0/0
# alternatively, allow only these two machines
# 或只讓下面兩台電腦連到網際網路
# /sbin/ipfwadm -F -a m -S 192.168.1.100/24 -D 0.0.0.0/0
# /sbin/ipfwadm -F -a m -S 192.168.1.101/24 -D 0.0.0.0/0

如 Linux 已使用 2.2.x 系列內核,以ipfwadm-wrapper代替ipfwadm可加快啟動速度。


現在應使用戶端機器撥接ISP;可試用Mserver( http://cpwright.villagenet.com/mserver/)。修改etc/mserver.conf;只需改動“checkhost”、“shadow”和“cname”三項。然後設定聯網參數。



3.3 限制網路連接
假定電腦通過PPP連到網際網路。任何機器連到網際網路就有可能遭到外界的入侵。在 /etc/hosts.allow中列入以下內容:


# only allow access to localhost
# 只允許連到localhost
ALL: 127.

並在/etc/hosts.deny中列入:


# deny access to everyone
# 不讓任何人進入
ALL: ALL

如果電腦所屬的網路直接與網際網路連接,由於安全的理由,最好取消finger、telnet等功能;利用ssh替代telnet。此處只要修改/etc/inet.conf檔即可。同時,也可在/etc/hosts.allow中增加下列內容限制網路連接:


in.telnetd: 192.168.1., .另一個.可信的.網路地址
in.ftpd: 192.168.1., .另一個.可信的.網路地址

並在/etc/hosts.deny中增加下列內容:


in.telnetd: ALL
in.ftpd: ALL


3.4 NFS輸出
這種方式用於服務器用戶目錄的輸出;但如果用戶的 UID 和 GID 在各台機器上各不相同,就會發生問題。如果用戶 guido 在server上的 UID/GID 為 500,在client上的 UID/GID 為 512,則可設置如下:


# /etc/exports
/tmp my.client.machine(rw)
/home/guido my.client.machine(rw,map_static=/etc/nfs/client.map)

在/etc/nfs/client.map檔中填入:


# /etc/nfs/client.map
# NFS mapping for client
# remote local
uid 512 500
gid 512 500



3.5 域名服務器

有待編寫 (譯注:作者顯然忘了編寫這部分內容)



--------------------------------------------------------------------------------

Copyright © Linux教程網 All Rights Reserved