source: projects/Vine-manual/trunk/lan.xml @ 96

Revision 96, 20.6 KB checked in by yasumichi, 15 years ago (diff)

first import

Line 
1<!--DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook V4.2//EN"-->
2<chapter id="lan">
3        <title>LAN(Local Area Network)</title>
4
5<!--chapterinfo>
6  <authorgroup>
7    <author>
8      <firstname></firstname>
9      <surname>Masaki</surname>
10    </author>
11    <author>
12      <firstname>Shoji</firstname>
13      <surname>Matsumoto</surname>
14    </author>
15    <editor>
16      <firstname>Takuya</firstname>
17      <surname>Kobayashi</surname>
18    </editor>
19  </authorgroup>
20  <pubdate>2006/12/7</pubdate>
21</chapterinfo-->
22
23    <sect1 id="netconfig">
24      <title>LANの設定</title>
25      <para>
26イーサを使用したLANの設定は netconfig コマンドで行うことができます。電話回線を使用して、ダイアルアップでプロバイダ等に接続する場合は、オンラインマニュアルの「<ulink url="ppxp-quickstart.html">ダイアルアップ接続(PPxP)の設定</ulink>」を参照してください。
27      </para>
28      <screen># /usr/sbin/netconfig</screen>
29
30      <para>
31まず、IPの取得方法について確認してください。プロバイダ等から動的にIPアド
32レスが割り振られる(DHCPなど)場合は、「Use dynamic IP configuration
33(BOOTP/DHCP)」をチェックするだけで設定は終りです。この場合は、以下の項目
34は空白のままにしておいてください。ここで、「動的」と言うのは、決まった
35IPアドレスをもらうのではなく、接続したときに決められる場合を言います。
36      </para>
37
38      <para>
39固定のIPアドレスが割り振られている場合は、そのIPアドレスとネットマスク、
40デフォルトデートウェイ、ネームサーバを指定します。以下では、IPアドレスが
41192.168.100.32、ネットマスクが 255.255.255.0、デフォルトデートウェイが
42192.168.100.1、ネームサーバが192.168.50.123の場合を示しています。
43      </para>
44<screen>
45IP address:           192.168.100.32
46Netmask:              255.255.255.0
47Default gateway (IP): 192.168.100.1
48Primary nameserver:   192.168.50.123
49</screen>
50
51      <para>
52設定が完了したら、ネットワークの設定を有効にします。
53      </para>
54<screen>
55# /sbin/service network {start|restart}
56</screen>
57      <para>
58OKが出れば成功です。ifconfigコマンドやnetstatコマンドで確認してみましょ
59う。以下の実行例は固定IPの場合です。
60      </para>
61<screen>
62# /sbin/ifconfig [-a]
63eth0      リンク方法:イーサーネット  ハードウェアアドレス 00:11:22:33:44:XX
64          inetアドレス:192.168.100.32 ブロードキャスト:192.168.100.255 マスク:255.255.255.0
65          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
66          RXパケット:24313 エラー:0 損失:0 オーバラン:0 フレーム:0
67          TXパケット:20639 エラー:0 損失:0 オーバラン:0 キャリア:0
68          衝突(Collisions):1901 TXキュー長:100
69          割り込み:18 ベースアドレス:0xb000
70# netstat -nr
71カーネルIP経路テーブル
72受信先サイト    ゲートウェイ    ネットマスク   フラグ   MSS Window  irtt インターフェース
73192.168.100.0   0.0.0.0         255.255.255.0   U         0 0          0 eth0
74127.0.0.0       0.0.0.0         255.0.0.0       U         0 0          0 lo
750.0.0.0         192.168.100.1   0.0.0.0         UG        0 0          0 eth0
76</screen>
77    </sect1>
78
79  <sect1 id="server-1-3">
80    <title>ネットワークの状態を知る</title>
81    <variablelist>
82      <varlistentry>
83        <term>ifconfigコマンド</term>
84        <listitem>
85          <para>
86ネットワークに接続されている場合、しばしば不通になることがあります。そのときにはネットワークの状態を調べる必要があります。<command>ifconfig</command>コマンドはIPアドレスやネットマスクの表示や設定を行えます。
87          </para>
88          <screen>
89# /sbin/ifconfig -a
90eth0      リンク方法:イーサーネット  ハードウェアアドレス 00:02:2D:49:64:4A
91          inetアドレス:192.168.0.1 ブロードキャスト:192.168.0.255 マスク:255.255.255.0
92          UP BROADCAST RUNNING  MTU:1500  Metric:1
93          RX packets:711620 errors:0 dropped:0 overruns:0 frame:0
94          TX packets:317441 errors:0 dropped:0 overruns:0 carrier:0
95          衝突(Collisions):0 TXキュー長:100
96          RX bytes:376843112 (359.3 Mb)  TX bytes:116872928 (111.4 Mb)
97          割り込み:3 ベースアドレス:0x100
98
99lo        リンク方法:ローカルループバック 
100          inetアドレス:127.0.0.1マスク:255.0.0.0
101          UP LOOPBACK RUNNING  MTU:3924  Metric:1
102          RX packets:336146 errors:0 dropped:0 overruns:0 frame:0
103          TX packets:336146 errors:0 dropped:0 overruns:0 carrier:0
104          衝突(Collisions):0 TXキュー長:0
105          RX bytes:128810518 (122.8 Mb)  TX bytes:128810518 (122.8 Mb)
106          </screen>
107          <para>
108eht0がetherのデバイスを示します。また、「inetアドレス」がIPアドレスを示します。
109          </para>
110        </listitem>
111      </varlistentry>
112      <varlistentry>
113        <term>netstatコマンド</term>
114        <listitem>
115          <para>
116設定に問題が無い場合は通信経路を調べる必要があります。<command>netstat</command>コマンドではルーティング(経路)を知ることができます。
117          </para>
118          <screen>
119$ netstat -nr
120カーネルIP経路テーブル
121送信先サイト    ゲートウェイ    ネットマスク   フラグ   MSS Window  irtt インターフェース
122192.168.0.0     *               255.255.255.0   U         0 0          0 eth0
123127.0.0.0       *               255.0.0.0       U         0 0          0 lo
124default         192.168.0.1     0.0.0.0         UG        0 0          0 eth0
125          </screen>
126        </listitem>
127      </varlistentry>
128      <varlistentry>
129        <term>pingコマンドとtracerouteコマンド</term>
130        <listitem>
131          <para>
132<command>ping</command>コマンドは相手のホストまで、きちんと通信が行えるか調べることができます。応答時間が帰ってくれば繋がっています。止めるには <keycombo><keycap>Ctrl</keycap><keycap>c</keycap></keycombo>を押します。
133          </para>
134          <screen>
135$ ping vinelinux.org
136PING vinelinux.org (210.81.181.125) 送信元 192.168.0.1 : 56(84) bytes of data.
13764 バイト応答 送信元 rh.vinelinux.org (210.81.181.125): icmp_seq=0 ttl=245 時間=13.343ミリ秒
13864 バイト応答 送信元 rh.vinelinux.org (210.81.181.125): icmp_seq=1 ttl=245 時間=15.611ミリ秒
139
140--- vinelinux.org ping 統計 ---
141送信パケット数 2, 受信パケット数 2, パケット損失 0%
142Round-Trip 最小/平均/最大/mdev = 13.343/14.477/15.611/1.134ミリ秒
143          </screen>
144          <para>
145<command>traceroute</command>コマンドを用いると途中の経路まで分かります。
146          </para>
147          <screen>
148# traceroute vinelinux.org
149traceroute to vinelinux.org (210.81.181.125), 30 hops max, 38 byte packets
150 1  ....
151 :
15212  rh.vinelinux.org (210.81.181.125)  15.281 ms  49.446 ms  20.517 ms
153          </screen>
154          <para>
155<command>ping</command><command>traceroute</command>を実行したときに、時間がかかる場合は、ネームサーバの設定がおかしい可能性があります。<filename class="directory">/etc/resolv.conf</filename>の nameserver にネームサーバのIPアドレスが設定されているか確認してください。
156          </para>
157        </listitem>
158      </varlistentry>
159    </variablelist>
160  </sect1>
161
162<sect1 id="server-2">
163  <title>LANとセキュリティ</title>
164  <para>
165LANを構成してインターネットに接続している場合や、多くのユーザがいる場合には、LANの構成やセキュリティについて考慮しなければなりません。
166  </para>
167  <sect2 id="server-2-1">
168    <title>LANの構成</title>
169    <para>
170多数のホストを接続してLANを構成する場合のヒントをいくつか示します。LAN一般に関しては、<ulink url="file:///usr/share/doc/JF/LAN-mini-HOWTO.txt.gz">/usr/share/doc/JF/LAN-mini-HOWTO.txt.gz</ulink>を参照してください。
171    </para>
172    <variablelist>
173      <varlistentry>
174        <term>ネットワークユーザの集中管理</term>
175        <listitem>
176          <para>
177単一のホストしかない場合は、<command>useradd</command>コマンドなどによって<filename>/etc/passwd</filename>にユーザを登録すれば良いですが、多数のホストがある場合には、全てのホストのファイルを書き換えることは大変です。LANを構成した場合、NIS(YP)によってユーザを管理する方法があります。<ulink url="file:///usr/share/doc/JF/NIS-HOWTO.txt.gz">/usr/share/doc/JF/NIS-HOWTO.txt.gz</ulink> に設定方法が書かれていますので参照してください。
178          </para>
179        </listitem>
180      </varlistentry>
181      <varlistentry>
182        <term>ファイルシステムの共有</term>
183        <listitem>
184          <para>
185多数のホストのどれにログインしても同じ環境を得るようにするには、ホームディレクトリ(/home)を全てのホストで共有する必要があります。同様に、/usr/localなどを共有させることもできます。この共有には NFSマウントを用います。ホームディレクトリを管理するファイルサーバを設定します。各ホストはファイルサーバのファイルシステム(ディスク)をマウントすることで、ローカルに持っているファイルシステムと同様に利用することができます。設定については <ulink url="file:///usr/share/doc/JF/NFS-HOWTO.txt.gz">/usr/share/doc/JF/NFS-HOWTO.txt.gz</ulink> を参照して下さい。
186          </para>
187        </listitem>
188      </varlistentry>
189      <varlistentry>
190        <term>ホスト名とIPアドレス</term>
191        <listitem>
192          <para>
193ホスト名とIPアドレスを対応付けるにはいくつかの方法があります。単一ホストの場合、必要なホストを /etc/hostsに記述すれば良いですが、多数のホストを管理する場合、全てのホストのファイルを書き換えるのは大変です。そこで、前述の「ユーザ管理」と同様に NISを用いて解決することができます。
194          </para>
195          <para>
196次に、LANにある各ホストをLAN外からアクセスできるようにするには、ネームサーバにホスト名とIPアドレスを登録する必要があります。上流のドメインにネームサーバがある場合は、そこに登録してもらえばアクセスできます。もし独自のネームサーバを設定する場合は、上流のドメインの管理者に相談してから設定してください。設定方法は <ulink url="file:///usr/share/doc/JF/DNS-HOWTO.txt.gz">/usr/share/doc/JF/DNS-HOWTO.txt.gz</ulink> に書かれています。
197          </para>
198        </listitem>
199      </varlistentry>
200      <varlistentry>
201        <term>IPマスカレード</term>
202        <listitem>
203          <para>
204LAN内にあるホストにプライベートネットワークのIPアドレスを付けた場合、そのままではLAN外にアクセスすることはできません。IP マスカレードを利用すると、IPアドレスが登録されていないホストでもルータとして設定されているホストを経由してアクセスすることができます。設定方法は<ulink url="file:///usr/share/doc/JF/IP-Masquerade-HOWTO.txt.gz">/usr/share/doc/JF/IP-Masquerade-HOWTO.txt.gz</ulink> を参照してください。
205          </para>
206          <para>
207プライベートネットワークには以下のアドレスが予約されています。
208          </para>
209          <screen>
210        10.0.0.0        -   10.255.255.255
211        172.16.0.0      -   172.31.255.255
212        192.168.0.0     -   192.168.255.255
213          </screen>
214        </listitem>
215      </varlistentry>
216      <varlistentry>
217        <term>ルーティング(経路制御)</term>
218        <listitem>
219          <para>
220LAN内のホストが外部にアクセスするには、通信ができるように経路(ルート)を決める必要があります。設定方法は <ulink url="file:///usr/share/doc/JF/NET3-4-HOWTO.txt.gz">/usr/share/doc/JF/NET3-4-HOWTO.txt.gz</ulink> を参照してください。
221          </para>
222        </listitem>
223      </varlistentry>
224    </variablelist>
225  </sect2>
226
227  <sect2 id="server-2-2">
228    <title>セキュリティ</title>
229    <para>
230LANがインターネットに接続している場合、外部からの不法な侵入に備えておく必要があります。また、LAN内においても、システム管理者以外のユーザがroot権限を取得できることは好ましくありません。ここではセキュリティについてのヒントを示します。セキュリティ一般については<ulink url="file:///usr/share/doc/JF/Security-HOWTO.txt.gz">/usr/share/doc/JF/Security-HOWTO.txt.gz</ulink> を参照してください。
231    </para>
232    <variablelist>
233      <varlistentry>
234        <term>shadow パスワード</term>
235        <listitem>
236          <para>
237特に、どんな形態であれインターネットに接続する場合、自分の環境を守るだけでなく外のネットワークへ迷惑をかけないためにも、セキュリティーには十分に気をつけておく必要があります。 Vine Linux では、インストール時にMD5パスワードとシャドーパスワードの使用を選択できるようになっています。システムのパスワードシステムを shadow パスワードにするには、root ユーザで次のようにします。詳しくは <command>man 5 shadow</command><command>man pwconv</command>, <ulink url="file:///usr/share/doc/JF/Shadow-Password-HOWTO.txt.gz">/usr/share/doc/JF/Shadow-Password-HOWTO.txt.gz</ulink> などを参照してください。
238          </para>
239          <screen>
240# /usr/sbin/pwconv
241          </screen>
242          <para>
243<command>pwconv</command>を実行すると、<filename>/etc/passwd</filename>のパスワードフィールドが x になり、暗号化されたパスワードが保護されます。また、暗号化されたパスワードは<filename>/etc/shadow</filename>に書き込まれますが、一般ユーザからは読めないようになっているので比較的安全です。
244          </para>
245          <screen>
246# cd /etc
247# ls -l *passwd* *shadow*
248-rw-r--r--   1 root     root          777 Jan 30 13:05 /etc/passwd
249# /usr/sbin/pwconv
250# ls -l *passwd* *shadow*
251-rw-r--r--   1 root     root          738 Jan 30 13:05 /etc/passwd
252-r--------   1 root     root          587 Jan 30 13:05 /etc/shadow
253          </screen>
254          <para>
255shadow パスワードを使うと認証が必要な一部のアプリケーションがうまく動作しない場合があるようです。しかし、標準でインストールされるアプリケーションの多く(telnet, ftpなど)は shadow パスワードに対応しています。shadow化をやめるには <command>/usr/sbin/pwunconv</command>を実行します。
256          </para>
257        </listitem>
258      </varlistentry>
259      <varlistentry>
260        <term>PAMを使ったセキュリティ</term>
261        <listitem>
262          <para>
263Vine LinuxではPAM(Pluggable Authentication Modules)を使ってsuなどの特定のコマンドに対してセキュリティを強化することができます。ここでは、良く使われる方法をいくつか紹介します。PAMの詳細については <filename class="directory">/usr/share/doc/pam-*/</filename> 以下の文書(英語)を参照して下さい。
264          </para>
265          <variablelist>
266            <varlistentry>
267              <term>○ suの制限</term>
268              <listitem>
269                <para>
270システム管理を行うには、suコマンドを用います。一般ユーザに suコマンドを利用させないようにするには、まず、システム管理者を <filename>/etc/group</filename>の wheelに追加します。次に、<filename>/etc/pam.d/su</filename> に以下を追加します。
271                </para>
272                <screen>
273auth       required     /lib/security/pam_wheel.so debug group=wheel
274                </screen>
275                <para>
276こうすると、/etc/groupの wheelに登録されたユーザしか <command>su</command>コマンドを実行することができなくなります。
277                </para>
278                <para>
279リモートからアクセスしているユーザにsuコマンドを利用させないようにするには、以下を追加します。
280                </para>
281                <screen>
282auth       required     /lib/security/pam_securetty.so
283                </screen>
284              </listitem>
285            </varlistentry>
286            <varlistentry>
287              <term>shutdownの制限</term>
288              <listitem>
289                <para>
290サーバなどは shutdownコマンドを一般ユーザに実行されては困ります。そこで、shutdownコマンドを行えるユーザを制限することができます。<filename>/etc/shutdown.allow</filename> というファイルを作ると、そこに記述されたユーザがログインしているときだけ、shutdownコマンドを実行することができます。
291                </para>
292                <screen>
293        $ cat /etc/shutdown.allow
294        user1
295        user2
296        user3
297                </screen>
298              </listitem>
299            </varlistentry>
300          </variablelist>
301        </listitem>
302      </varlistentry>
303      <varlistentry>
304        <term>iptablesによるパケットフィルタリング</term>
305        <listitem>
306          <para>
307インターネットをはじめネットワークを流れるパケットは、決して安全なものばかりではありません。そうした悪意のあるパケットから、あなたのコンピュータを守る一つの手段としてiptablesによるパケットフィルタリングを行う事ができます。設定方法については、<ulink url="file:///usr/share/doc/JF/packet-filtering-HOWTO.txt.gz">Linux 2.4 Packet Filtering HOWTO(/usr/share/doc/JF/packet-filtering-HOWTO.txt.gz)</ulink>を参考にしてください。また、<ulink url="file:///usr/share/doc/JF/netfilter-faq.txt.gz">netfilter/iptables FAQ(/usr/share/doc/JF/netfilter-faq.txt.gz)</ulink>によくある質問がまとめられています。
308          </para>
309          <para>
310Vine Linux 4.x では、標準でインストール時あるいはGUIにより iptables を利用した簡易なファイアウォールの設定が出来るようになっています。デフォルトではインストールの時点でこのファイアウォールが有効になるように設定されており、原則として外部からのパケットを遮断するようになっています。この設定は「セキュリティレベルの設定」ツールによって簡単に変更することができます。
311          </para>
312            <figure id="system-config-securitylevel">
313              <title>セキュリティレベルの設定</title>
314              <graphic fileref="images/system-config-securitylevel.png" />
315            </figure>
316        </listitem>
317      </varlistentry>
318      <varlistentry>
319        <term>tcp_wrapperによるアクセス制限</term>
320        <listitem>
321          <para>
322簡単なアクセス制限の方法として、tcp_wrapper(tcpd)があります。<ulink url="file:///etc/inetd.conf">/etc/inetd.conf</ulink> をみると様々なサービスが、/usr/sbin/tcpdによって実行されていることがわかります。tcpdデーモンは接続要求があるとそのホストをチェックし、アクセスを許可するかしないかを判断します。このアクセス許可と拒否はそれぞれ<ulink url="file:///etc/hosts.allow">/etc/hosts.allow</ulink> と <ulink url="file:///etc/hosts.deny">/etc/hosts.deny</ulink> に設定されます。
323          </para>
324          <para>
325例えば、原則として外部からの接続は拒否し、自分のドメイン(192.168.0.0)からのアクセスのみ許可するには、/etc/hosts.denyと/etc/hosts.allowに以下のように記述します。
326          </para>
327          <screen>
328$ cat /etc/hosts.deny
329ALL: ALL
330
331$ cat /etc/hosts.allow
332ALL: 192.168.0.0/255.255.255.0
333          </screen>
334          <para>
335もし、一部のホスト(例えばvinelinux.orgドメインのホスト)からはアクセスを許可したい場合は、そのホストを/etc/hosts.allowに記述します。
336          </para>
337          <screen>
338ALL: LOCAL
339sshd: .vinelinux.org
340          </screen>
341          <para>
342詳細は<command>man hosts.allow</command>, <command>jman hosts_options</command>を参照して下さい。
343          </para>
344        </listitem>
345      </varlistentry>
346    </variablelist>
347  </sect2>
348</sect1>
349
350</chapter>
Note: See TracBrowser for help on using the repository browser.