次のページ 前のページ 目次へ

3. 一般的な管理作業

書くことはたくさんありますが、時間は限られています! ここは楽しくやりま しょう。他にもたくさんの作業があなたを待ちかまえていますが、この節は ネットワーク中心で行きます。

ネットワークの分野はとても広く、ここで説明し尽くすことはできません。参 考文献として NET-3 HOWTO を挙げておきます。また、ほとんどのディストリ ビューションにはネットワークサービスの設定についての文書が付属していま す。ここではいくつかの点だけを再確認しましょう。

あなたがインストールすると思われるサービスについてすべきことの簡単なリ ストを示します: cron や timed といったカレンダーや備忘録。http, samba, telnet/ssh のアクセス、anonymous FTP, POP/IMAP サーバ、NFS サービス…。

3.1 ネットワークの設定

お使いのディストリビューションにおいてネットワークサービスを新しく追加 するための実際の手順はもっとずっと複雑ですが、以下のスクリプトは最初の 手がかりとしては十分なはずです:

#!/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 ファイアウォール機能, IP マスカレード機能、 フォワーディング機能がデフォルトで有効になっています。有効になっていな いようであれば、IP-Masquerade mini-HOWTO をご覧になって、これらの機能 を有効にする方法を調べてください。それから ipfwadm (カーネル 2.0.x; http://www.xos.nl/linux/ipfwadm/) または ipchains (カーネル 2.2.x; http://www.adelaide.net.au/~rustcorp/ipfwchains/ipfwchains.html) をインストールしてください。必要なサービスのためのカーネルモジュールを 有効にするのを忘れないでください。例えば、FTP を使うためには以下の行を /etc/rc.d/rc.sysconfig に追加します:

/sbin/modprobe ip_masq_ftp

この他のモジュールは普通、 /lib/modules/KERNEL-VERSION/ipv4 にあります。

あなたの LAN にいる他のマシンに対して IP マスカレード機能を有効にする のはとても簡単です。まず、ネットワーク初期化スクリプト (/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

カーネル 2.2.x 系をお使いであれば、ipfwadm ではなく ipfwadm-wrapper を使うと素早く立ち上がります。

ここまでくると、クライアントマシンから ISP に電話をかけさせる手が欲し くなるでしょう。筆者は Mserver ( http://cpwright.villagenet.com/mserver/) を使っています。etc/mserver.conf を編集してください。 修正する必要がある項目は ``checkhost'', ``shadow'', ``cname'' だけです。 次に接続(複数可)を定義します。もちろん、クライアントマシンには、 利用可能なクライアントのひとつをインストールします。

3.3 ネットワークアクセスの制限

PPP を使ってインターネットに接続できたものとします。いったん接続すると、 あなたのマシンは攻撃にさらされるかもしれません。そこで、以下の行を /etc/hosts.allow に追加してください:

# only allow access to localhost
ALL: 127.

それから以下の行を /etc/hosts.deny に追加します:

# deny access to everyone
ALL: ALL

インターネットに直接繋がっているネットワークに所属しているなら、 finger, telnet, それから他のサービスもセキュリティのために止めておく方 がよいでしょう。telnet の代わりには ssh を使いましょう。編集 すべきファイルは /etc/inetd.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 の UID/GID が server で 500 で あり、client で 512 の場合には、以下の設定が便利です:

# /etc/exports
/tmp            自分の.クライアント.マシン(rw)
/home/guido     自分の.クライアント.マシン(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 ネームサーバ

まだ書けていません。


次のページ 前のページ 目次へ