印刷用表示へ切り替え 通常表示へ切り替え 更新履歴を表示 更新履歴を隠す
Linux DeleGate 経由で NetNews を読むには

商用プロバイダのネットニュースは,外部ドメインからは購読することができない。自宅のプロキシを経由すれば購読が可能になる。プロキシには DeleGate を使い,接続する際には認証を行うように設定する。

■ ■ ■
外部からは NetNews サーバに接続できない
外部からは NetNews サーバに接続できない


商用のインターネットサービスプロバイダでは NetNews のサービスを行っているところが多い。しかし外部からは NetNews サーバにアクセスすることはできない。当たり前である。

プロバイダのドメイン内からはアクセス可能
プロバイダのドメイン内からはアクセス可能


サービスの対象が同じドメイン内のクライアントに限られているからである。そこで,プロキシサーバを自宅で動かし,これを経由して NetNews サーバにアクセスできるようにする。

自宅のプロキシサーバ経由でアクセス
自宅のプロキシサーバ経由でアクセス


プロキシサーバとしては DeleGate を利用する。Linux だけでなく,Windows 98 でも動いてしまう優れものである。DeleGate へのアクセスをオープンにしてしまうと誰でもアクセスできるようになってしまうので,セキュリティ的によろしくない。DeleGate に接続する際には,認証を行うようにする。IP マスカレードを行っている自宅の ADSL モデムには,ポートマッピングの設定が必要になる。

DeleGate のコンパイルは簡単である。Vine Linux なら gcc がそのまま使える。Windows であれば,Cygwin の gcc が使える。以下は Vine Linux 2.6 の例である。

プロバイダによっては,NetNews サーバの設定に問題があることがある。この場合は,ソースに変更を加える必要がある(nlog(n): DeleGate 8.9.2 + 個人的な修正)。DeleGate のコンパイルができたら,インストールする。インストールは,出来上がった src/delegated をコピーするだけである。ここではディレクトリ /usr/local/etc にコピーする(どこでもよい)。

/usr/local/etc/delegated

次に,起動ファイルを用意する。/etc/rc.d/init.d にある,他の起動ファイルに習って自前で用意する。前半部分は,例えば次のようになる(全部はこちら→ delegated)。

#!/bin/bash
#
# Startup script for DeleGated proxy server
#
# chkconfig: - 90 55
# description: DeleGate is a multipurpose proxy server which \
#       relays various application protocols on TCP/IP or UDP/IP, \
#       including HTTP, FTP, Telnet, NNTP, SMTP, POP, IMAP, LPR, \
#       LDAP, ICP, DNS, SSL, Socks, and more.
#
# processname: /usr/local/etc/delegated
# pidfile: /var/run/delegated

# source function library
. /etc/rc.d/init.d/functions

OPTIONS="-P119 \
        SERVER=\"nntp://-/\" \
        MOUNT=\"= nntp://news01.so-net.ne.jp/ ro\" \
        ADMIN=\"メールアドレス\" \
        PERMIT=\"nntp:*:*\"
        AUTHORIZER=\"localhost:::*\" "

RETVAL=0
prog="delegated"

start() {
        echo -n $"Starting $prog: "
        daemon /usr/local/etc/delegated $OPTIONS
        RETVAL=$?
        echo
        touch /var/lock/subsys/delegated
        return $RETVAL
}
...

OPTIONS が delegated の起動オプションになる。-P119 は「ポート 119 を開く」を意味している。ここでは,NetNews が使うポート番号と同じ 119 を指定しているが,「8119」などの違うポートを使った方がセキュリティの強度はアップすると思われる。「MOUNT」オプションには,プロバイダのニュースサーバを指定する(この例は So-net の場合)。ニュースサーバの後ろについている「ro」は Read Only の意味である。このオプションをつけると,ニュースの購読はできるが投稿はできなくなる。「ADMIN」には自分のメールアドレスを指定する。「AUTHORIZER」は認証のためのオプションである。この設定では,FTP で認証を行っている。つまり,接続する際のユーザ名とパスワードは,自宅サーバの FTP 接続時のユーザ名とパスワードを使うことになる。その他,詳しくは DeleGate reference manual を参照されたい。英語が苦手という場合は Short Tutorial for Beginners of DeleGate で雰囲気をつかむとよい。

上記の起動ファイルの例 delegated を(メールアドレスを書き換えて),/etc/rc.d/init.d に置く。もう少しキレイに書けそうだけど,まあいいや。

/etc/rc.d/init.d/delegated

setup コマンドで,Linux 起動時に自動的に delegated が起動するように設定しておけばよい。

# setup

ログは /var/spool/delegate-nobody 以下に出力される。所有者を nobody にして作っておくとよい。

# mkdir /var/spool/delegate-nobody
# chown nobody.nobody /var/spool/delegate-nobody

普通の NetNews の購読と投稿は,Googleグループ から簡単に行うことができる。上記は,特殊なニュースグループ専用の設定である。

2007年7月31日追記:
ついにネットニュースサービスが終了してしまうのでした (nlog(n): ネットニュース時代の終わり)。

Posted by n at 2005-03-11 23:09 | Edit | Comments (0) | Trackback(0)
Trackbacks

  • 「手違いで複数トラックバックを送ってしまった!」という場合でも気にしないでください (重複分はこちらで勝手に削除させていただきます)
  • タイムアウトエラーは,こちらのサーバの処理能力不足が原因です (詳細は トラックバック送信時のエラー をご覧ください)
  • トラックバックする記事には,この記事へのリンクを含めてください(詳細は 迷惑トラックバック対策 をご覧ください)
Comments
Post a comment
  • 電子メールアドレスは必須ですが,表示されません (気になる場合は「メールアドレスのような」文字列でもOKです)
  • URL を入力した場合はリンクが張られます
  • コメント欄内ではタグは使えません
  • コメント欄内に URL を記入した場合は自動的にリンクに変換されます
  • コメント欄内の改行はそのまま改行となります
  • 「Confirmation Code」に表示されている数字を入力してください (迷惑コメント対策です)


(必須, 表示されます)


(必須, 表示されません)


(任意, リンクされます)


Confirmation Code (必須)


Remember info (R)?