LINUX MODEM SHARING MINI-HOWTO Friedemann Baitinger, baiti@herrenberg.netsurf.de V1.01, 11/02/97 伊佐冶 哲, isaji@mxu.meshnet.or.jp 27 Dec 1997 このmini-HOWTOでは、TCP/IPネットワーク経由の他のシステムからモデムを共 有するためのLinux設定方法について解説しています。 ______________________________________________________________________ 目次 1. 更新履歴 2. サーバ側の設定(Linux) 3. クライアント側の設定(Windows) 4. セキュリティについて 5. 実例 ______________________________________________________________________ 1. 更新履歴 V1.01, 11/02/97 HTMLフォーマットのソース。'cu'をどこで入手できるか そのリファレンスを追加。またmserverの入手先も追加。 'cu'に'-s'パラメータを付けた例。 V1.00, 06/12/97 初期リリース 2. サーバ側の設定(Linux) サーバにはLinuxを使い、以下のことを前提として話しを進めます。 1. モデムは/dev/ttySxデバイスを使います。 2. isdn4linux /dev/ttyIxデバイス (訳注:isdn4linuxのサイト はftp://ftp.franken.de/pub/isdn4linux/などです。ISDN回線でないと 「回線が使用中です。しばらくしてからやり直してみて下さ い」(Windows95側)というメッセージが出るのですが、うまくいった方がお られたらぜひ教えて下さい) もっとも簡単なセットアップとしてmodem demonを起動するための5 行perlスクリプトを使います。 $ cat /usr/sbin/modemd ______________________________________________________________________ #!/usr/bin/perl select((select(STDOUT), $| = 1)[$[]); select((select(STDIN), $| = 1)[$[]); exec 'cu -s 115200 -l /dev/ttyS1'; die '$0: Cant exec cu: $!\n'; ______________________________________________________________________ クライアントが適当なポートに接続している場合、モデムデーモン(modemd)は inetdプロセスによって開始されます。以下述べるようにモデムデーモンは単 に'cu'コマンドの標準入力/出力をソケットハンドルに接続して、'cu'ハンド ルを実際のモデムデバイスとするだけです。'cu'コマンドがシステムにない場 合は,UUCPパッケージをインストールして下さい。するコマンドです)。 モデムデーモンの存在は設定ファイルをアップデートすることでinetdプロセ スとして認識されます。設定ファイルは通常/etc/inetd/confに ______________________________________________________________________ # # modem daemon # modem stream tcp nowait root /usr/sbin/tcpd /usr/sbin/modemd /dev/ttyS1 ______________________________________________________________________ と書かれます(訳注:/dev/ttyS1は適当なデバイスに変更します)。これを動作 させるために,/etc/servicesにエントリーさせます。 ______________________________________________________________________ modem 2006/tcp modemd ______________________________________________________________________ この例では、シンボリック名はポート番号2006に対応しています。ポート番号 は使用されていないサービスのものが使えます。変更後,inetdプロセスにシ グナルを送ります。これはinetdで設定を再度読み込み、プロセスを再開させ るために必要です。 $ ps |grep inetd 194 ? S 0:00 /usr/sbin/inetd kill -HUP 194 これでサーバ側はクライアントからの要求を受ける準備ができました。正しく 機能しているかは以下のようにして確認できます。 $ telnet localhost modem Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. さあ,モデムにつながりました。セットアップを確認するために'AT'コマンド をうちこんでみます。 atz atz OK ati1 ati1 Linux ISDN OK ^] telnet>quit $ モデムサーバでPerlスクリプトを使う代わりに,mserverというプログラムも あります。ftp://ftp.innet.be/pub/staff/carl/から入手できます。うまくみ つからない時はarchieコマンドで検索するか適当なサーチエンジンを使っ てmserverの在処を探して下さい。著者はまだmserverをインストールして使っ ていないのでこれ以上はコメントできません(訳注:mserverはネットワークに 繋がっている他のホストからモデムを使うためのネットワークモデムサーバプ ログラムです。モデムデバイスはリモートホストがサーバに接続された時だけ オープンされます。詳しくはmserverパッケージのREADMEに書かれています)。 3. クライアント側の設定(Windows) ここではWindowsクライアントのセットアップについて解説します。クライア ントのPCにはTCP/IP用のCOMポートリディレクター(com-port redirector )が 必要です。これにかなうプログラムはwindows 3.1とwindows 95用の 'tactical software'の「dialout/ip」です(windows 3.1版は16-bitアプリケ ーションです。また windows nt用の32-bitプログラムは1997年の夏に公開さ れます)。 (訳注:以下のサイトから入手できます。 http://www.tactical- sw.com 。 windowsnt用のものはすでに公開さ れています。評価版windows95 dlip95.exeで約1,133kbありました) dialout/ipは新しい仮想comポート上の共有モデムを表示するものです(訳注: windowsの「モデムのプロパティ」からみると新しいcomポートが見えます)。 仮想comポートは,windowsプログラムからは,共有モデムが直接つながってい るかのようにみえます。多くのクライアントプログラム(windows 95 ダイア ルネットワークなどもそうです)はこれを認識し実際のcomポートとモデムが あるかのように動作できるのですが、一般的にfaxアプリケーションな どuart(訳注: universal asynchronous receiver transmitterの略)コント ロールラインを使うものは除きます。dialout/ipはtelnetプロトコルを供給す るように設定することもできますが,この特性はモデムをプール(pool)する製 品にのみ当てはまり、この文書で述べるlinux設定には当てはまりません。ま たその名前にもかかわらずDialOut/IPは呼び出される側としても使えるアプリ ケーションです。 www.tactical-sw.comサイト上では1〜2週間の期限付きの評価版をダウンロ ードするページがあります。インストールと設定はSETUPプログラムで行えま す(訳注:ダウンロードしたファイル(.exe)は自己解凍してインストールを開 始します)。またインストールの詳細についてはREADME.TXTファイルに書かれ ています。 DialOut/IPを実行したときは,IPアドレスと共有モデムのポート 番号を入力します。 DialOut/IPは商用の製品でモデムあたりにライセンスが適用されます。つまり 値段は共有しているモデムの数に依存しています。ライセンスには「共有モデ ムにアクセスするPCマシンの任意の台数にインストールできる」と書かれてい ます。 __ 4. セキュリティについて もしLANであなたのホストに一台のモデムがあるだけなら、おそらくセキュリ ティについて心配することはないでしょう。しかしインターネットに接続され たLANで一台以上のモデム(モデムサーバとして設定したもの)がある場合はセ キュリティについてよく考えなくてはなりません。だれでもtelnet (あなたの ホスト名) modem と実行して長距離にダイアルしたり、その気になれば国際電 話をかけられてしまうからです。許可されていないアクセスからモデムサーバ を保護するために tcp-wrappersのインストールをお奨めします(訳注: o アーカイブ: o ftp.iij.ad.jp:/pub/netman/security/tcp_wrapper.tar.gz o 参考: o UNIX MAGAZINE 1996.6 P66 o Linux Japan Vol.5 p.12 o __ 5. 実例 2章と3章で述べたセットアップによってWindows 95 ThinkPad上でQuicken(訳 注:財務、金融関係に使うソフトです。不動産や定期預金などの資産,住宅ロ ーンなどの負債勘定も管理できます。 http://www.xaxon- net.or.jp/gifs/reviews/ )を実行して、Linuxマシンに接続されたモデムでホ ームバンク(homebank)に使っています。著者の場合のモデムは本物のモデムで はありません。これはISDN-Soカード上のエミュレートされたモデムなので す。COMポートに接続されているデバイスは、実際のデバイスがイーサネッ トLANのどの場所にあるかは認識していません。また標準アナログモデムかど うかも認識していませんが、ISDNデバイスはATコマンドを認識できるのです。