ISP-Hookup-HOWTO <author>Egil Kvaleberg, egil@kvaleberg.no <date>v1.24, 14 February 1997 <trans>佐藤亮一 (rsato@ipf.de) <tdate>1997.11.26 この文書は Linux を使ってインターネットサービスプロバイダ(以下、訳文中では プロバイダと略記)とダイアルアップ接続するにはどうすれば良いかを取り扱うも のです。ダイアルアップの基本的方法、IP の確立法、電子メール・ニュースの取 り扱いについても解説しています。 <sect>はじめに <p> この文書はプロバイダとダイアルアップ接続をする際の設定、Linux の使い方に関 する質問に答えるためのものです。 Linux を搭載したコンピュータで初めてプロバイダと接続してみようという方々の お役に立つために、極力広範な問題を取り上げるように努めました。他の HOWTO 文書や LDP 書籍類とかなり重複する部分があるのは、この文書の性格上やむを得 ません。理解を深めたりより詳細なことを知るためには、これら関連文書に目を通 すことが必要です。 既存の文書にはある程度の経験がある人を読者として想定したものが多いようです。 初心者にとって情報の整理に困難を覚えることがしばしばであるのも、ここに原因 があるのです。 説明を分かりやすくするために、以下のような例を設定することにしましょう。 <quote> User name: dirk <p> Password: PrettySecret <p> Internet service provider: acme.net <p> Email server: mail.acme.net <p> News server: news.acme.net <p> Name server: 193.212.1.0 <p> Phone number: 12345678 </quote> ここに登場する dirk 氏は自分のコンピュータを roderick と呼んでいるものとし ましょう。 申すまでもないことですが、この設定例は読者各位が御利用になっているプ ロバイザに対応するものに変更しなければなりません。御利用のプロバイダによっ ては、若干の修正が必要となることもあります。何らかの問題がございました際に は、是非とも著者まで御一報下さい。 <sect1>本文書の最新版の所在 <p> この文書の改訂版を定期的に comp.os.linux.answers に送付しています。またそ この情報を集めている匿名 FTP にも改訂版があるはずです。このような匿名 FTP の例を以下に掲げます。 <quote> ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO </quote> さらに、以下のLinux Documentation project ホームページでもこの文書は見つかるは ずです。 <quote> http://sunsite.unc.edu/LDP/ </quote> それから、この文書のできたてのホヤホヤの最新版は各種の形式で以下の場所に置 いておきます。 <quote> ftp://ftp.sn.no/user/egilk/ISP-Hookup-HOWTO.txt ftp://ftp.sn.no/user/egilk/ISP-Hookup-HOWTO.ps.gz ftp://ftp.sn.no/user/egilk/ISP-Hookup-HOWTO.tar.gz http://home.sn.no/home/egilk/ISP-Hookup-HOWTO.html </quote> <sect1>御意見、御感想は <p> 御意見、間違いの指摘、追加情報その他の御批判は直接下記にまで御送付下さい。 <quote> egil@kvaleberg.no http://home.sn.no/home/egilk/ </quote> <sect1>免責条項 <p> 本文書の内容についての責任は、これを否認します。御自身の責任で本文書のコンセ プト、例、内容を御利用下さい。また、これは初期の版ですので不正確な点や錯誤が 随所にある可能性があることを御承知おき下さい。 ここで御紹介するのは、あまたの設定法の内のひとつに過ぎません。あることを成し 遂げるための道は幾つもあるというのが Linux の世界の常なのです。別の方法を紹 介している段落には、「代替案」という表題を掲げました。プログラムの新版につい ては FTP アドレスが多少変更になっていることが少なくないので御注意下さい。 ここで紹介したプログラムは著者の知る限り、個人向けに特定の条件のもとで使用・ 試用が許諾されているものばかりです。大部分のプログラムは GNU に準拠した条件 でソースを含むすべてが公開されているものです。 <sect1>著作権情報 <p> この文書は Egil Kvalberg の著作物 (c) 1996 であり、以下の条件で配布されてい ます。(この部分は原文のままとします) <quote> Linux HOWTO documents may be reproduced and distributed in whole or in part, in any medium physical or electronic, as long as this copyright notice is retained on all copies. Commercial redistribution is allowed and encouraged; however, the author would like to be notified of any such distributions. <p> All translations, derivative works, or aggregate works incorporating any Linux HOWTO documents must be covered under this copyright notice. That is, you may not produce a derivative work from a HOWTO and impose additional restrictions on its distribution. Exceptions to these rules may be granted under certain conditions; please contact the Linux HOWTO coordinator at the address given below. <p> If you have questions, please contact Greg Hankins, the Linux HOWTO coordinator, at <p> gregh@sunsite.unc.edu Finger for phone number and snail mail address. </quote> <sect>外の世界と繋がるにはどうすれば良いか。 <p> 基本的なネットワークソフトはすでに組み込み済みであることを前提としています (たとえば、 Slackware の N シリーズの主要部分)。さらに、/dev/modem 用のシ リアルポートの設定も終わっているものとします。 初期設定では「/dev/modem に直接アクセスできるのはルートユーザーだけ」となっ ているのがふつうです。 プロバイダのシェルアカウントと直接接続して、接続時に必要な手続きを試してみ るには、minicom というプログラムが利用できます。これはなかなか使えるプログ ラムです。 <sect1>基本設定 <p> ネットワーク上で利用できるようにコンピューターを設定するにはルートユーザー として作業することが必要です。作業をするめる前に、/etc/hosts.deny というファ イルに以下の行があることを確認してください。 <code> ALL: ALL </code> ふつうは自分自身に許可を与えたいでしょうから、以下の行を付け加えます。 <code> ALL: LOCAL </code> あるいはこだわって、以下のようにすることも可能です。 <code> ALL: 127.0.0.1 </code> これ以降の説明は、PPP 経由で動的 IP アドレスを取得して接続することを仮定し たものです。専用線接続を利用できる恵まれた方の場合は、若干設定が異なります。 幸いにもコンピュータに接続する際に用いている名前を動的 IP アドレスの指定を うける時にも自由に使えるようになっているときには、/etc/HOSTNAME にその名前 を付け加えます。 <code> roderick </code> 次は、<tt>/etc/resolv.conf</tt> にネームサーバーを以下のように指定します。 <code> search . nameserver 193.212.1.0 </code> ネームサーバーの指定にはは必ず数字表記の IP アドレスを使用しなければなりま せん。この数字はプロバイダ毎に異なります。必要であれば、最大三個までのネー ムサーバーを指定することも可能です。その際にはそれぞれのネームサーバーをそ れぞれ別の行に記載してください。ネームサーバーは上に記載されたものから順に 利用されます。 somemaschine.acme.net を somemachine と略記したいようなときは、一行目を以 下の要領で書き直してください。 <quote> search acme.net </quote> /etc/hosts の最小限の設定を以下に掲げます。たいていの人はこれで間に合うで しょう。 <code> 127.0.0.1 localhost 0.0.0.0 roderick </code> 決まった IP アドレスをもらっている人は、0.0.0.0 という部分をその指定された アドレスに書き直してください。 同様に、最小限の <tt>/etc/nwtworks</tt> は以下のようになります。 <code> loopback 127.0.0.0 localnet 0.0.0.0 </code> さらに、外部のメイルドメインを<tt>/etc/mailname</tt> に以下のように記載しま す。 <code> acme.net </code> プロバイダに接続する際に利用するユーザー名とパスワードを /etc/ppp/chap-secrets に以下のように書き込みます。 <code> dirk * PrettySecret </code> PAP 認証のプロバイダの場合は<tt>/etc/ppp/pap-secrets</tt> になります。 接続するために重要な手続き自体を<tt>/etc/ppp/chatscript</tt> に以下のように指 定 し ます。これは PPP に先駆けて起動されるものです。 <code> TIMEOUT 5 "" ATZ OK ATDT12345678 ABORT "NO CARRIER" ABORT BUSY ABORT "NO DIALTONE" ABORT WAITING TIMEOUT 45 CONNECT "" TIMEOUT 5 "name:" ppp </code> 細かな部分は訂正の要があります。三行目の電話番号を書き直さなければならない のはいわずもがなのことでしょう。御使用中のモデムによってはの初期化命令であ る ATZ を変更する必要があるかもしれません。最終行はプロンプト行と、このプ ロンプトに対して ppp と入力することを想定したものです。ログイン手続きはシ ステムによって異なることでしょう、 電話が本当に繋がると、以下の命令で PPP プロトコルを起動します。 <code> exec pppd connect \ 'chat -v -f /etc/ppp/chatscript' \ -detach crtscts modem defaultroute \ user dirk \ /dev/modem 38400 </code> これで完全に接続は出来上がっています。Ctrl-C を入力してプログラムを kill するまでは接続が維持されることになります。接続に関わる一切のメッセージはシ ステムログに記録されます。以下の命令で、これを閲覧してみましょう。 <code> tail /var/adm/messages </code> PPP 接続が成立している限り、インターネットに直接アクセスしたり、 ftp, ncftp, rlogin, telnet, finger 等々のプログラムを利用することが可能です。上 記のプログラムはいずれも(各配布の)ネットワークパッケージに含まれています。 PPP 接続の詳細については、以下を参照してください。 <quote> /usr/lib/ppp/README.linux /usr/lib/ppp/README.linux-chat </quote> 最後に、「安全」の問題について申し添えておきましょう。 /etc/inetd.conf と いうファイルには、御使いのコンピュータが外部に提供しているサービスの一覧が 記載されています。先に作成した /etc/hosts.deny というファイルは、外部から のアクセスをすべて拒絶する内容となっています。必要な方は /etc/hosts.allow に許可するアクセスを明示的に記載してください。ローカルトラフィックを許可す る場合には以下のように記載します。 <code> ALL: LOCAL </code> hosts_access(5) のマニュアル頁をも併せ御読み下さい。 最後に一言: POP プロトコルの呼称については混乱があるようです。<tt> /etc/service </tt>に記載されている定義は、以下のようにまさに何にでも当てはま るようなものになっています。 <code> pop2 109/tcp pop-2 # PostOffice V.2 pop3 110/tcp pop-3 pop # PostOffice V.3 </code> 代替案: chatscript の代わりに、ずっと柔軟な dip を利用することも可能です。た だし、 diald とはいっしょに使えません。 代替案: イーサネット等を経由して TCP/IP を繋ぎっ放しにできる恵まれた境遇にあ る方は、PPP のことをいっさい忘れてくださっても結構です。このような方は、む しろネットワークカードの設定に専心なさった方がいいでしょう。 代替案: PPP は使えないけれど SLIP なら利用できるという方のためには、PPP とほ ぼ同じようなサービスがあります。今一つの方法は UUCP です。ニュースや電子メー ルを交換する別の手段である SOUP を使わざるを得ない方もいらっしゃるでしょう。 このような方向けの情報は以下のところにあります。 <quote> ftp://ftp.sn.no/user/bjorn/Linux-offline.tgz </quote> TERM というのも一つの選択でしょう。これについては Term-HOWTO を参照してく ださい。 <sect>ネットワークサーフィンを楽しむには。 <p> 「大切なのは文章だ」と御考えの方には、Lynx という Web 閲覧ソフトがいいでしょ う。入手先は以下の通りです。 <quote> ftp://sunsite.unc.edu/pub/Linux/system/Network/info- systems/lynx-2.3.bin2.tar.gz </quote> X-windows を使っていらっしゃるなら、以下に掲げるグラフィック閲覧ソフトが使 えます。 Chimera の入手先は以下の通り。 <quote> ftp://sunsite.unc.edu/pub/Linux/system/Network/info- systems/chimera-1.65.bin.ELF.tar.gz http://www.unlv.edu/chimera/ </quote> Mosaic は、 <quote> ftp://sunsite.unc.edu/pub/Linux/system/Network/info- systems/Mosaic-2.7b1-aout.tgz ftp://ftp.NCSA.uiuc.edu/Web/Mosaic/Unix/binaries/2.6 </quote> Mozilla (Netscape) なら、 <quote> ftp://sunsite.unc.edu/pub/Linux/system/Network/info-systems/netscape- v11b3.tar.gz ftp://ftp.cs.uit.no/pub/www/netscape </quote> 上記のプログラムは常時、最新の様々な意味でワクワクするようなバージョ ンが入手可能となっています。 評価のために試用できる期間には制限があります。これを尊重するようにしましょ う。 <sect>電子メイルのやり取りをするには <p> とにかくまず最初に、 sendmail がインストールしてあることを確認しましょう。 sendmail は内部宛てのメールと外部行きのメールを振り分けて、送付が可能に なるまで外部行きメールをバッファにため込みます。 sendmail の設定ファイルは <tt>/etc/sendmail.cf</tt> です。御利用のプロバイダ に適した設定例は以下の場所に納められています。 <quote> ftp://ftp.sn.no/user/egilk/sendmail.cf </quote> この例は procmail を配送エージェントに用いたものです。しかし deliver を 使うように変更するのは簡単です。 外部行きメール用に公式のドメイン名が必要な場合には、<tt>/etc/sendmail.cf </tt> に経路を指定してください。 <code> # who I masquerade as (null for no masquerading) DMacme.net </code> これは、ローカルのユーザー名とプロバイダで使っているユーザー名が一致して いることを前提としたものです。sendmail がメールを直接受取人に送達するよ うな設定になっています。接続時間が長くなったり、最終受取者との接続が遅い とか不規則だという理由から接続が繰り返されたりするのを避けるためにプロバ イザをバッファとして利用するのは、だれにとっても良い方法です。このために は、DS を以下のように設定します。 <quote> # "Smart" relay host (may be null) DSmail.acme.net </quote> sendmail は sendmail.cf 中のタブ文字の取り扱いに敏感であることに留意して ください。タブ文字が元のままになっているかどうかを確かめるには、vi のよ うなエディタを使う方が良いかもしれません。 電子メールの受信には POP3 というプロトコルを利用することが多いようです。 これをプロバイダと接続する度に起動します。試してみるための書式を以下に掲 げます。 <code> sendmail -q popclient -3 -v mail.acme.net -u dirk -p "PrettySecret" \ -k -o /usr/spool/mail/dirk </code> この書式は PPP 接続が確立してから後に用いるものです。この書式はあくまで 試験用だということを忘れないでください。ローカルのメイルボックスはこの書 式を実行しても手付かずのままなのです。 -k オプションは「メイルはプロバイ ザのメイルボックスに留まったままにする。受け取るのはメイルの複写だけだ」 という意味です。ちゃんと設定できていることが確認できたら、このオプション を外してください。 この方法では、パスワードがコマンドラインに表示されてしまうことに注意して ください。 安全かつより優れた書式は、以下のところに納められています。 <quote> ftp://ftp.sn.no/user/egilk/pop-script.tar.gz </quote> この書式を利用するには、procmail をインストールしておく必要があります。 しかしこれをインストールして後悔することはないでしょう。 <quote> ftp://sunsite.unc.edu/pub/Linux/system/Mail/mailhandlers/procmail-3.10-2.tar .gz </quote> procmail は様々な基準で受信したメイルをより分けるための軽くて多彩に利用 できる道具です。休暇を告知するなどの仕事を自動的にこなす機能も付属してい ます。 ここでの場合のように procmail を直接を使用するときには procmail の付属文書の 説明とは多少話が違うことに留意してください。 .forward は必要ありません。同様 に .procmailrc も不要です。後者が入用となるのは、メイルを整除するときだけで す。 電子メイルを送受する際のユーザインタフェースには Pine や Elm のようなプログラ ムも利用できます。 代替案: popclient の代役候補として最近もっとも人気なのは、fetchmail です。最 新版は以下のところに納められています。 <quote> ftp://ftp.ccil.org/pub/esr/fetchmail/fetchmail-3.3.tar.gz </quote> (訳注:1997.10.20現在の最新版は fetchmail-4.3.1.tar.gz です) 代替案: 普通のダイアルアップを使用している人は、 sendmail デーモンを起動する には及ばないでしょう。資源節減のためには、sendmail を起動する部分(通常は <tt>/etc/rc.d/rc.M</tt> にあります)を注釈文にしてしまえばいいでしょう。 代替案: sendmail に代えて、より簡単な smail を使うという方法もあります。 Linux Network Administrator's Guide (Linux ネットワーク管理者ガイド)には、こ のプログラムの詳細な解説があります。 代替案: sendmail.cf をつくるためのパッケージには m4 macro があります。単純な インストールを行う場合には、既製品の設定にちょっとした変更を加えるだけで済み ます。 代替案:柔軟さには欠けるもののもっと簡単な方法もあります。設定が正しければ、 pine は独立のプログラムとしても利用可能です。また web 閲覧ソフトの新しいもの の中にも、メイルプログラムとして利用できるものがあります。 代替案: emacs 環境で利用する gnus を電子メール・ニュース処理用に愛用している 人も大勢います。詳しくは、以下を御覧下さい。 <quote> http://www.ifi.uio.no/~larsi/ </quote> 代替案: popclient の代替候補の一つは pop-perl5 です。所在は以下の通りです。 <quote> ftp://sunsite.unc.edu/pub/Linux/System/Mail/pop-perl5-1.1.tar.gz </quote> <sect>ニュース <p> <sect1>オンライン(接続時)用ニュース閲覧ソフトの設定法 <p> PPP が生きている限り、オンラインでニュースを読むことができます。これ用に使え るプログラムは星の数ほどあります。簡便な代替策としては、 rtin や trn があり ます。 ニュースを読むために設定しなければならないのは、大抵の場合( .profile で一度 指定しておしまいというのが普通の方法です)以下のことだけです。 <code> export NNTPSERVER=news.acme.net </code> 送信時の From アドレスを正しく設定するためには、以下の指定が必要なプログラム もあります。 <code> export NNTP_INEWS_DOMAIN=acme.net </code> <sect1>オフライン(非接続時)用ニュース閲覧ソフトの設定法 <p> 非接続時にニュースを読めるようにして、電話代を節約すると同時にニュースと柔軟 に付き合えるようにするためには、何らかのローカルニューススプールをつくる必要 があります。それには若干の設定をしなければなりません。また、ある程度の大きさ のディスクの空きも不可欠です。ひとたびスプールを作ってしまえば、後はだいたい のことが自動で実行できます。時々気を配ってやらなければならない項目はあります が、大したものではありません。 二種類の方法を以下に御紹介しましょう。 <sect1>C News の設定法 <p> ここで御紹介する方法は、C News というニュースサーバと NNTP というプロトコル を利用するものです。C News はもともと我々の用途とは異なる使用局面を想定した ものですが、本書の目的にとっても有用なものです。もっと新しいパッケージである INN というニュースサーバーを使ってみたいという方もいらっしゃると思いますが、 これは C News 以上に資源を蕩尽します。いずれにせよ、この両方を組み込むことの ないように注意してください。両雄並び立たずなのです。 ニュースの維持作業はすべて news というユーザー名でログインしている間に済ませ るというのが鉄則です。また設定ファイルはどれもを /usr/lib/news に置く必要も あります。このためには root でひとまずログインした上で、改めて su news; cd を実行するのが良いかもしれません。 設定ファイルの中では以下のものがもっとも大切です。 <tt>active</tt> は購読中のニュースグループの概観を与えるものです。これを更新 するには <tt>addgroup</tt> という命令を使用します。用例:<tt> addgroup comp.os.linux.networking y</tt> <tt>organization</tt> にはヘッタの<tt>organization</tt> という項目に記入した い名称を記入します。本文書の場合なら、 <quote> Dirk Gently's Holistic Detective Agency </quote> となります。 <tt>mailname</tt> には本文書の例なら、 acme.net と記入します。 <tt>mailname</tt> <tt>whoami</tt> にはあなたのサイト名を <tt>Path: </tt>以下に指定します。ここ での設定では NewsX を使っているので、 <tt>sys</tt> <tt>sys</tt> はニュースの取得、再配布を司るものです。以下の例は acme.net を パスに追加するプロバイダを想定したもので、このプロバイダが唯一のニュース取得 源となっています。この例は、受信したニュースをすべて受け入れる・未読のニュー スだけをacme.net に投稿する・投稿するニュースはあらかじめ手元のサイトに送付 されているということを示しています。この例は簡素なもので、すべてのニュースグ ループを一つのところから取得する用になっています。<tt>/all</tt>という指定は 配布を指定するもので必ず必要です。<tt>F</tt> は、投稿する記事が一つのファイ ルに集められているということを示しています。 <code> ME:all/all:: acme/acme.net:all,!junk/all:FL: </code> 送り出すニュース用のサブディレクトリを作成します。私共は以下のようにしました。 <code> mkdir /var/spool/news/out.going/acme </code> <tt>mailpaths</tt> <tt>mailpaths</tt> は moderate された グループ宛ての投稿を管理するものです。し かし、これは普通プロバイダに委ねる仕事です。 C News には毎日必要な管理作業があります。しかし一度指定してしまえば、この仕 事は news というユーザで<tt> crontab -e </tt> 命令を実行するという方法で済ま せてしまうことが可能です。以下の推奨例を御覧下さい。必要なものは押さえてあり ます。 <code> # maintain incoming and outgoing batches 10,40 * * * * /usr/lib/newsbin/input/newsrun # expire C News, once a day 30 0 * * * /usr/lib/newsbin/expire/doexpire # monitor and report if needed 00 2 * * sat /usr/lib/newsbin/maint/addmissing 40 3 * * * /usr/lib/newsbin/maint/newswatch 50 3 * * * /usr/lib/newsbin/maint/newsdaily </code> <tt>newsrun</tt> は記事の授受を司り(一時間に二回起動)、<tt>doexpire</tt> は 古くなった記事を削除する(毎日00:30に起動)ものです。その後の三つの命令は様々 な監視業務、エラー訂正作業を行うためのものです。 上記の諸作業がきれいに処理されていることをコンピュータ起動時に確認する必要が あります。ルートになって、以下の一行を<tt> /etc/rc.d/rc.local </tt> に付け加 えてください。 <code> su news -c /usr/lib/newsbin/maint/newsboot </code> ニュースは NewsX というプログラムを用いて NNTP サーバーから購読することも できます。このプログラムの所在は以下の通りです。 <quote> ftp://sunsite.unc.edu/pub/Linux/system/news/transport/newsx-0.9.tar.gz ftp://ftp.sn.no/user/egilk/newsx-0.9.tar.gz </quote> NewsX の組み込みは至って簡単です。以下のような古典的な方法で行えます。 <code> make su make install exit </code> ここで概要を紹介した方法で組み込みを行った場合、このほかに必要なのは <tt> addgroup </tt> を使って購読したいグループを作成することだけです。 記事を取り寄せるには、news というユーザーとして以下の命令を実行します。(PPP あるいは同様の方法を用いるものとします)。 <code> newsrun newsx acme news.acme.net newsrun </code> <tt>-d</tt> というオプションを付けると、画面上に記事がずっと表示され続きます。 詳細については、NewsX の付属文書を参照してください。 NeewsX はニュース記事の投稿をも司ります。 古くなった記事を処理するためには、explist というファイルが必要です。以下の例 に付した解説は、ニュースの管理にはどのような作業が必要かを説明するためのもの です。 <code> # hold onto history lines 14 days, nobody gets >120 days /expired/ x 14 - /bounds/ x 0-1-120 - # 以下のグループの記事は二ヶ月保存 comp.sources,comp.os.linux.all x 60 - # ごみは捨てる junk,control x 2 - # その他は二週間保存。書庫化は行わない。 all x 14 - </code> 代替案:小規模のニューススプールなら、<tt> control </tt>というニュースグルー プを作る必要がないことも少なくありません。利用する量に比べて情報流通量が大き すぎるからです。重要な点は、記事は削除されるのにグループは自動的に作成されて しまうということにあります。newgroup を含む制御メッセージが話をめちゃくちゃ にしないように気をつけてください。newgroupperm というファイルを使って、何を 許容するかを指定します。 <code> comp.os.linux tale@uunet.com yv all any nq </code> この例は、comp.os.linux 以下のすべてのグループを作り(y)、ユーザーニュース を通知する(v)場合のものです。これ以外のものは全部、表示せず(q)無視されます (n)。手作業ですべてのグループを作るのであれば、二行目だけで十分です。 代替案: NewsX の代わりになるものとしては suck、 slurp (postit と組み合わせ て使用する)があります。Slurp は NNTP NEWNEWS を使用します。NNTP NEWNEWS は 処理量の多いニュースサーバーで活躍しているものです。 <sect1>Leafnode の設定法 <p> 今一つの別解は統合パッケージである <tt> leafnode </tt>を組み込むという方法 です。これは、個人がニューススプールを利用する際に必要となる作業をすべて処 理するものです。設定も容易です。入手先は以下の通りです。 <quote> http://www.troll.no/freebies/leafnode.html </quote> C News と同様に、ニュース管理の作業は news というユーザーで行う必要があり ます。 leafnone のホームディレクトリは <tt> /usr/lib/leafnode </tt> です。組み込 むためには、以下の作業を行います。 <code> cd /usr/lib/leafnode tar -xzvf leafnode-0.8.tgz cd leafnode-0.8 make su make install </code> ルートとしてログインしている間に、<tt> /etc/inetd.conf </tt> の中の NNTP を制御している部分を変更します。 <code> nntp stream tcp nowait news /usr/sbin/tcpd /usr/local/sbin/leafnod e </code> 次のようにして再起動します。 <code> killall -HUP inetd </code> <tt> exit </tt> を実行して、news というユーザーに戻ります。<tt> /usr/lib/leafnode/conf </tt> の NNTP サーバーに関する部分を変更します。こ こでの例なら以下のようにします。 <code> server = news.acme.net </code> <tt> crontab -e </tt> を用いて news というユーザとして 以下の命令を実行す るようにすれば、あとは leafnode がすべてを引き受けてくれます。 <code> # expire Leafnode, once a day 0 4 * * * /usr/local/sbin/texpire </code> news というユーザーとしてニュースを送受するには、以下の命令を用います。 (PPP が立ち上がっていることを前提としたものです) <code> /usr/local/sbin/fetch </code> ニュースを読もうとするユーザーは "オンライン(接続時)用ニュース閲覧ソフトの 設定法" の項で説明した方法を用いてください。ただし、ローカルマシンに関する 以下に示す設定は例外です。 <code> export NNTPSERVER=localhost </code> 必要な作業はこれですべてです。最初に <tt> fetch </tt>を実行したときに、購 読できるニュースグループの一覧が取得できます。 次いで leafnode は利用者が どのグループを購読しようとしているかを調べ、次回起動時用にはこれを利用しま す。 代替案:<tt> leafnode </tt> の代りに <tt> nntpcache </tt>を使うこともできま す。これは以下の場所にあります。 <quote> ftp://ftp.suburbia.net/pub/nntpcache/nntpcache.tgz </quote> <sect>接続手続きを自動化する方法 <p> ニュースや電子メールの取り扱いを自動化するのも、Linux でなら簡単です。 最初のそしてもっとも大切な手続きは、プロバイダとの接続を確立するための書式で ある/usr/lib/ppp/ppp-on を作成することです。この書式には、次の一文しか記入さ れていないこともしばしばです。 <code> /usr/sbin/pppd </code> さらに詳細な設定は /etc/ppp/options で行います。 <code> connect "/usr/lib/ppp/chat -v -f /etc/ppp/chatscript" crtscts modem defaultroute asyncmap 00000000 user dirk /dev/modem 38400 </code> 接続を終えるには、/usr/lib/ppp/ppp-off を用います。 上記二つの書式がきちんと機能することを確かめたら、今度は様々な処理を受け持つ 書式を作成することになります。電子メールを受信するための書式はすでに紹介しま した。この書式が /home/dirk/pop にちゃんとあるかどうかを確かめてください。 電子メールを交換するための書式は /root/mail に置きます。 <code> #! /bin/sh # # 電子メイルの送受 # 10 分間で時間切れ TIMEOUT=600 DT=10 # 電子メールを送信: sendmail -q & # 電子メールを受信: su dirk -c /home/dirk/pop # sendmail が終了するのを待つ: t=0 while ! mailq | grep -q "Mail queue is empty"; do t=$[$t+$DT] if [ $t -gt $TIMEOUT ] ; then echo "sendmail -q timeout ($TIMEOUT).." exit 1 fi sleep $DT done exit 0 </code> ニュースを送受するための書式の置場所は <tt>/usr/lib/news/news</tt> です。 <code> #!/bin/sh # # exchange news # must be run as news: cd /usr/lib/news #送付用バッチを更新 (C News): /usr/lib/newsbin/input/newsrun < /dev/null #ニュースの授受: /usr/lib/newsbin/newsx acme news.acme.net #受信バッチを更新: /usr/lib/newsbin/input/newsrun < /dev/null </code> いくつかの部分をつなぎあわせた書式を <tt> /root/news+mail </tt>に置くこともで き ます。 <code> #!/bin/sh # # exchange news and email # must be run as root # if ! /usr/lib/ppp/ppp-on; then exit 1 fi trap "/usr/lib/ppp/ppp-off" 1 2 3 15 #exchange news+mail: /root/mail & su news -c ~news/news wait #disconnect.. /usr/lib/ppp/ppp-off #update the incoming batch (C News): su news -c /usr/lib/newsbin/input/newsrun < /dev/null & exit 0 </code> 上の例は単に接続を確立するだけのものですが、これを拡張してニュースや電子メイ ルがあった場合にこれの授受を行うようにするのは簡単です。<tt> /root/news+mail.cond </tt>を呼び出すようにするだけなのです。その際、送信する ニュース用のスプールを最新化することを忘れないように。 <code> #!/bin/sh # # exchange news and email, only if outgoing news or mail # (C News spool) if [ -s /var/spool/news/out.going/acme/togo ] || ! ( mailq | grep -q "Mail queue is empty"); then /root/news+mail fi </code> 後は上述の作業をいつ実施するのかを指定するだけです。これには <tt> crontab -e </tt> という命令をルートとして実行します。以下の例は、ニュースと電子メイルの 授受を毎日朝七時に、その後四時間ごとに送信のみを行う場合の指定です。 <code> 00 7 * * * /root/news+mail 00 11,15,19,23 * * * /root/news+mail.cond </code> 上述の各部品を組み合わせる前に、それぞれをしっかりと検査しておくべきです。別 のタスクを付け加える必要が生じるかもしれません。(時刻を一致させる <tt>ntpdate</tt>、手元で管理している WWW 、 FTP を使ってプロバイダ側のそれを 自動的に更新する <tt>make</tt> と <tt>ftp</tt> など) 代替案:効率によっては、プロセスを川下向きに変更することも可能です。PPP リン クを確立する度に、<tt>/etc/ppp/ip-up</tt> を起動すればいいのです。電子メイル やニュースの授受を開始するには何らかの magic を付け加える必要があることもあ るでしょう。 代替案:ネットワークトラフィックが成立している間ならいつでも PPP 接続を自動的 に確立することができます。これは様々な意味で優れた手法です。しかしながら、頻 繁に接続が起こらないように(費用が高くならないように)するには的確な設定が必要 です。詳細な情報は下記のところで入手できます。 <quote> http://www.dna.lth.se/~erics/diald.html </quote> diald というユーティリティは以下のところから入手できます: <quote> ftp://sunsite.unc.edu/pub/Linux/system/network/serial/diald-0.16.tar.gz </quote> この場所には、PPP 接続に関する他の情報も集められています。 <sect>最後に <p> <sect1>ほかに知っておくべきこと <p> システムのエラーメッセージは通常、内部メイルとして送達されます。この種のメイ ルが実際に読めるかどうかを確認してください。<tt>/etc/aliases</tt> を作成する 必要があります。<tt>aliases</tt> を更新するごとに <tt>newaliases</tt> という 命令を実行することを忘れないようにしてください。大抵の場合に通用する例を以下 に掲げます。 <verb> PostMaster: root ftp: root news: root usenet: root FaxMaster: root fax: root WebMaster: root MAILER.DAEMON: root </verb> Linux 用のプログラムの多くは Sunsite から入手できますが、ここはいつも込み合っ ています。ミラーサイトは至るところにあります。 <tt>ftp://sunsite.unc.edu/pub/Linux</tt> 以下の内容が常にミラーされています ので、御近くのサイトを利用するようにしてください。 <tt>ftp://ftp.nvg.unit.no/pub/linux/sunsite/... </tt> はその一例です。 <tt>yarn</tt> から移行してきた方も、<tt>yarn2mf</tt> を使えば標準のフォルダー に書き直すことができるでしょう。<tt>yarn2mf</tt> は以下のところから入手でき ます。 <quote> ftp://ftp.sn.no/user/egilk/yarn2mf.zip </quote> <sect>各プロバイダ固有の問題 <p> 各プロバイダに固有の問題については以下の情報源を参照してください。 <verb> Demon Internet (demon.co.uk) ftp://ftp.demon.co.uk/pub/unix/linux/Demon/slack3.0.help.tgz Easynet TBA Netcom http://www.netcom.com/bin/webtech/NetCruiser/Operating_Systems/Linux/linux.c fg.html PowerTech, Schibstednett, Telenor Online http://home.sn.no/home/egilk/no-isp.html Primenet TBA Stanford http://www-leland.stanford.edu/~wkn/Linux/network/network.html </verb> ここに掲載されていないプロバイダに固有の問題を御存じの方は、御一報下さい。 (訳者からの御願い: 日本国内のプロバイダに関して同様の情報源を御存じでした ら、是非御知らせ下さい) <sect1>もっと詳しく知りたい方へ <p> Linux Documentation Project の一つである Linux Network Administrator's Guide (Olaf Kirch 著: Linux ネットワーク管理者ガイド)という題名の書物は、TCP/IP や インターネットを含むネットワークの設定・維持を志す人の必携書です。以下の場所 に納められています。 <quote> ftp://sunsite.unc.edu/pub/Linux/docs/linux-doc-project/network- guide/nag-1.0.ascii.tar.gz </quote> 各ソフトウェアパッケージの付属文書には、必要な詳しい情報がすべて集まっている のがふつうです。常にこれで概観が得られるとは限りませんが。最初に参考にするべ きなのはマニュアル頁です。たとえば、次のようにして起動します。 <quote> man pppd </quote> また各プログラムの付帯文書は /usr/doc 以下にもあります。常にきちんと整除され ているわけではありませんが。 特に関連の深い HOWTO には以下のものがあります。 <descrip> <tag/Installation-HOWTO/基本的知識を満載 <tag/NET-2-HOWTO/NET コードを組み込み、設定する際の問題を網羅的に扱った文書。 ここで取り扱われていることの大部分は、標準的な Linux 配布( Slacmware, Red Hte, Debian) を組み込めばあらかじめ処理済みである。しかし、設定や困ったとき 対策の章はたいへん有益。 <tag/Mail-HOWTO/各種トゥールの設定法。ここに紹介されていることの大部分は標 準的な Linux 配布を組み込めばあらかじめ設定されています。 <tag/News-HOWTO/昔ながらにニューススプールを設定する方法 <tag/Tiny-News/ニュースを購読するいまひとつの方法を紹介する文書 <tag/PPP-HOWTO/PPP を設定する際にしばしば遭遇する問題に関する優れた文書 <tag/Serial-HOWTO/シリアルポートを設定する際のあらゆる問題を取り扱った文書 <tag/Mail-Queue/sendmail は常に遠隔メイルを、deliver は手元メイルを処理する ようにする方法 </descrip> Red Hat には PPP 関連のメイルリストがあります。参加なさりたい方は redhat-ppp-list-request 宛てに ''subscribe'' という subject の電子メイルを送 付してください。 <sect1>謝辞 <p> 本文書中の内容は各種の情報源から取得したものです。直接、間接に御世話になっ た以下の各氏に感謝の意を表させて頂きます。 <verb> Adam Holt <holt@graphics.lcs.mit.edu> Arne Coucheron <arneco@oslonett.no> Arne Riiber <riiber@oslonett.no> Arnt Gulbrandsen <agulbra@troll.no> Bjorn Steensrud <bjornst@powertech.no> Gisle Hannemyr <gisle@a.sn.no> Hans Amund Rosbach <haro@sesam.dnv.no> Hans Peter Verne <hpv@ulrik.uio.no> Harald T Alvestrand <Harald.T.Alvestrand@uninett.no> Harald Terkelsen <Harald.Terkelsen@adm.hioslo.no> Haavard Engum <hobbes@interlink.no> James Youngman <JYoungman@vggas.com> Johan S. Seland <johanss@sn.no> John Phillips <john@linux.demon.co.uk> Jorn Lokoy <jorn@oslonett.no> Kenneth Tjostheim <kenneth.tjostheim@asplanviak.no> Kjell M. Myksvoll <kjell.myksvoll@fou.telenor.no> Kjetil T. Homme <kjetilho@math.uio.no> Michael Meissner <meissner@cygnus.com> N J Bailey <N.J.Bailey@leeds.ac.uk> Nicolai Langfeldt <janl@math.uio.no> Ove Ruben R Olsen <Ove.R.Olsen@ub.uib.no> R. Bardarson <ronb@powernet.net> Steinar Fremme <steinar@fremme.no> Sverre H. Huseby <sverrehu@ifi.uio.no> Trond Eivind Glomsrod <teg@stud.imf.unit.no> Tommy Larsen <tommy@mix.hive.no> </verb> </article>