Power Point 版 - Echigo BSD Users Group

UUCPでまったりネットワーク
メールを中心とした入門と味わい
Echigo BSD Users Group 9th meeting
at Sakanoue public hall of Nagaoka city.
6th, March, 2004
INOUE Mikio <[email protected]>
Unix to Unix CoPy
• 2 台の Unix ホスト間でファイルのコピーな
どを行なうための、一連のプログラム群。
• メールやニュースを他のホストのスプール
へコピーすることで、メールやニュースの
配送を実現。
– GNU では、MTA 扱いになってます。
• 一般にバッチで起動させるが、利用者の要
求に応じて起動することも可能。
歴史と種類
• 1976 年 - Mike Lesk (ベル研) が開発。
• 1977 年 - 改良版として Version 2 が Unix V7 とと
もに配布。複数の大学・企業で独自の改良。
• 1983 年 - HDB (HonyeDanBer) 登場。当時の主
流になる。aka. BNU (Basic Networking Utilities)
• USENET (1979~1987) や JUNET (1984~1994)
他の通信プロトコルとして普及。
• 1993 年 - Ian Lance Taylor による GPL 版登場
でみんな幸せ。
通信回線
• 電話線
– モデムとか TA で直結。
• モデムを制御する必要があるので設定がちょっとめんどい。
– 昔は TELEBIT TrailBlazer とか使ったもんだ。
• PEP 方式で運がいいと 18800bps とか出た。
• UUCP over TCP/IP
– 最近の主流。設定が簡単。
– Port 540 TCP。
– セキュリティに配慮が必要。
• UUCP over VoIP
– VoIP にモデムでも動くハズ。たぶん。
主なプログラム
• uucp - Unix to Unix copy
– ファイルをコピーするコマンド。
• uux - Remote command execution over UUCP
– 接続先のホスト上でコマンドを実行させるコマンド。
• uucico - UUCP file transfer daemon
– 接続と、実際のファイルやコマンドのスプールを処理
するデーモン。
• uuxqt - UUCP execution daemon
– 接続元からの要求を処理するデーモン。
メール転送の流れ
1. UUCP 先へのメールを MTA が専用のスプー
ルに溜めとく。
2. Cron で uucico が起動する。
3. Uucico が接続して、リモートの uucico が起動
し認証なんかをする。
4. ローカルのスプールからリモートのスプールに
コピーする。
5. リモートの rmail が、スプールから自ホスト宛の
メールを MTA に送る。
サンプルのネットワーク
バケツリレー 1/2
• UUCP 接続している複数のホストを経由
– IP の default route に相当するものがない。
– 本来は個別に経路の全てを指定する。
• どこの先のどこの先の…どこの先の誰。
–
–
–
–
–
Freedom から Justice!Strike!Buster!claes
Freedom から Buster.seed.example.jp!claes
Freedom から [email protected]
Freedom 以外から [email protected]
[email protected] 要注意
• 詳細は RFC976 - UUCP mail interchange format standard
バケツリレー 2/2
• ポーリングのタイミングと方向
– 通信量とコスト
• ポーリングすると通信料が必要。
– 交換するファイルがなくても、通信が発生する。
• ポーリングされるとホストのリソースを消費。
• 交換するファイルが多ければ、間隔が短い方が幸せ。
– 使い慣れるとポーリングの時間が身につきます。
– 昔は、メールが届くのに 1 週間とかかかるサイトが
あった。
• UUCP で接続する先に ML のサーバとか建てると楽しい。
UUCP のセキュリティ
• 通信上のセキュリティ
– 電話線の場合
• 電気的盗聴の可能性を除けばかなり安心。
– UUCP over IP の場合
• VPN や ssh、stone を利用。
• 機能的なセキュリティ
– Anonymous の接続を許可するときは設定を厳重にし
てね。
– セキュリティホールが見つかることがある。最新版を
使いましょう。
Taylor UUCP
• GPL
– ソースが公開されていなかった HDB に対して、完全
でフリーな代替品。
• シンプルな設定ファイル
– Version 2 や HDB では、かなりめんどかった。
• 伝統的な UUCP との高い互換性
– Version 2 形式や HDB 形式の設定ファイルをそのま
ま使える。
• 惜しむらくは…。
– 登場した時期が、IP 時代の幕開けと前後しちゃった。
UUCP over IP の基本設定 1/2
• Taylor UUCP の設定
– /etc/uucp/config
• ノード名、各ファイルの配置の設定 (5 行)
– /etc/uucp/passwd
• 接続元ごとのログイン名とパスワード (ノード数分)
– /etc/uucp/sys.*
• ノード毎の接続手順 (ノード当たり 10 行強)
UUCP over IP の基本設定 2/2
• Sendmail の設定
– /etc/mail/mailertable.db
• 宛先に応じて UUCP へ転送
– justice.seed.example.jp
– freedom.seed.example.jp
– buster.seed.example.jp
uucp-dom:justice
uucp-dom:justice
uucp-dom:buster
– /etc/mail/access.db
• UUCP 中継するドメイン宛メールの受け入れ
– seed.example.jp ok
UUCP の特徴
• 接続形態に依存せず、サーバ間のメール配送が
できる。
– ノートに FreeBSD とか入れてる人は便利かも。
• 任意の接続形態が利用できるので AdHoc な運
用が可能。
• 物理的距離の影響を受け易い。
– 電話回線を使う場合は、運用に料金が絡むので、地
域的な制約を伴う場合がある。
• 配送時間が各ホスト間のポーリング間隔に依存。
– ケータイな人が科す時間的呪縛から逃れられる。
UUCP はじめませんか
• 絶滅危惧種の保護に参加できる。
– できれば Over IP じゃ無い方が美しい。
• もはやマシンにかかる負荷は小さい。
– 気になる場合は、ポーリング回数を減らすだけ。
• 手間がかからない。
– 一度設定したら、勝手に動く。
• 「通信」してる実感が持てる。
– モデムが発信する際のリレー音や発呼音がたまらん。
• HUB ホストについては、ご相談ください。
– モデムの他、PIAFS も対応できると思います。
参考
• Taylor UUCP
– http://www.airs.com/ian/uucp.html
• The Free Software Foundation (FSF)
– http://www.gnu.org/
• Stone
– http://www.gcd.org/sengoku/stone/Welcome.
ja.html
お願い
• 勉強会のお題を決めるのは、早めにして
欲しいと何度も何度も…。
• 今回も寝れねぇじゃん。