|
次のページ
前のページ
目次へ
5. nntpdこの章では、nntpd のインストール、設定、gnspool, gninews との連係について解説し ます。
5.1 インストール適当なディレクトリに nntpd のソースを展開します。
まず、 #define DBM #undef DBZ #define CNEWS #define GHNAME #undef UUNAME #define STAT_FILE "/usr/lib/news/mgdstats" #define NGDATE_FILE "/usr/lib/news/groupdates" #define ACTIVE_FILE "/usr/lib/news/active" #define ACCESS_FILE "/usr/lib/news/nntp_access" #define DISTRIBUTIONS_FILE "/usr/lib/news/distributions" #define NEWSGROUPS_FILE "/usr/lib/news/newsgroups" #define HISTORY_FILE "/usr/lib/news/history" #define INEWS "/usr/lib/news/inews" #define POSTER "news"
デフォルトでは dbz ライブラリを使うようになっているのを、dbm ライブラリを使うよ
うに変更しています。dbz ライブラリのある人は、そのままで構いません。変更した場合
は、
デフォルトでは
編集が終ったら、 #if 1 /* Was EXECLAN */ n = select(fileno(stdin) + 1,&readfds, (fd_set*)0, (fd_set*)0, timeout); #else と変更しました。
次に、root になって
5.2 ニュースを読むための設定
nntp stream tcp nowait news /usr/sbin/tcpd nntpd
次に、 default no no localhost read post
ここまでの設定でニュースを読めるようになっているはずです。環境変数 NNTPSERVER を localhost に設定して mnews などで読んでみましょう。
読めなかった場合は、
5.3 ニュースを投稿するための設定次のような内容のスクリプト #!/bin/sh /usr/lib/news/bin/gninews
これだけで、投稿できるようになっているはずです。ニュースリーダーから投稿のテスト
をして下さい。すると、 su news -c "gnspool -py -h news.server" を実行すれば、実際にニュースサーバーに記事が投稿されます。(この場合も、NNTP Server は明示的に指定して下さい。)
5.4 From: 行についてgnspool で記事を投稿する場合、スプール時の From: は無視され、.gnrc の設定
を用いて次のように変更されます。
From: news@mydomain.or.jp (Hoge Hoge)
名前とドメイン名は
news@mydomain.or.jp が、自分とは関係ない人のメールアドレスとなって都合が悪い場合 には、環境変数 LOGINNAME が利用できます。例えば、次のようなスクリプトを用いると、 #!/bin/bash export NEWSLIB=/usr/lib/news export NEWSSPOOL=/var/spool/news export LOGINNAME=hogehoge gnrc=$NEWSLIB/.gnrc export NNTPSERVER=$(/usr/bin/awk '/^NNTPSERVER/ {print $2}' $gnrc) /usr/lib/news/bin/gnspool -py アカウント名の代わりに環境変数 LOGINNAME が使われ、 From: hogehoge@mydomain.or.jp (Hoge Hoge) とすることができます。
5.5 impost の利用どうしても From: を使い分けたい場合には、impost という Perl のスクリプトがありま
す。gnspool の代わりに投稿用のスクリプトとして使えば、スプールした時の From: を
使って投稿することが出来ます。最新バージョンは 0.99i で、
ftp://falcon.econ.kyoto-u.ac.jp/pub/dist/impost/ で手に入ります。
実際に impost を使う手順について解説します。impost を
config: default option: -SMTPservers mail.server option: -NNTPservers news.server option: -noESMTP option: -NewsPost option: -User hogehoge option: -Name Hoge Hoge option: -NameInComment option: -Org dokoka option: -FromDomain mydomain.or.jp option: -noMsgId option: -noDate option: -noNScmpl option: -noMIMEbcc option: -noNewsCheck option: -Lines 3000 option: -JustQueuing option: -ObeyHeader option: -h config: post option: -noVerbose option: -ProcessQueue
ニュースリーダーとして mnews を利用している場合、メッセージに Path: ヘッダが付加 されますが、impost は Path: のついているメッセージを invalid なものと見なします。 これを回避するため、impost の275行目付近の && !&header_value("Path") という行をコメントアウトしておきます。
これで準備できたはずです。テスト投稿をしてみましょう。オフラインの状態で投稿する
と、 su news -c "/usr/lib/news/bin/impost -config post" というコマンドを発行すると、実際に記事が送信されます。
上記の設定で impost を利用した場合、ヘッダは次のようになります。
Newsgroups: test Subject: test From: someone@myhost.mydomain.or.jp (Someone) Path: someone X-Newsreader: mnews [version 1.19] 1995-07/21(Fri) Organization: dokoka Originator: hogehoge@mydomain.or.jp (Hoge Hoge) X-Dispatcher: impost version 0.99i (Apr. 6, 1997) Lines: 1
この内、Organization:, Originator:, X-Dispatcher:, Lines: の各ヘッダが impost に よって付加されたヘッダです。From: には記事で指定した From: が使われ、Originator: によって投稿した人が確定されます。
次のページ 前のページ 目次へ |
[ |