Next Previous Contents

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 域名服務器

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


Next Previous Contents