ダイアルアップ - みる会図書館


検索対象: BSD magazine No.5 BSDでMy Serverを作ろう! ; Mr.McKusick特別インタビュー
40件見つかりました。

1. BSD magazine No.5 BSDでMy Serverを作ろう! ; Mr.McKusick特別インタビュー

接続 ()n Demand ダイアルアップ接続 ) 制的に終了させたい場合は、単純に IP ⅱ lter に含まれる ipnat というコマンド の設定が可能である。この場合も基本 pppd のプロセスを ki Ⅱすればよい。たと を使用することで実現できる。 IPfilter 的な設定は手動ダイアルアップとほと えばテレホーダイの時間帯だけを On を利用するためには、 んどの部分は共通である。違うのは、 Demand ダイアルアップするように設定 options GATEWAY peers/—ファイルで On Demand 用の接 するためには、 cron で pppd の起動 / 強制 pseudo—device ipfilter 続設定を追加するだけなので、たとえ 終了を行うようにシェルスクリプト等 ば前述の ispdialup と同じところに対し を実行すれば良いだけである。 の二つが記述された c 。 nfig ファイルを て 0n Demand 接続するための接続名を 使用して作ったカーネルを使用する必 て着信の設越 ispdialup-demand とするとリスト 2 のよ 要があるので、ますはこの点を確認し うな設定を行えばよい。 たほうがいいだろう。特に前者は demand オプションを指定する場合、 自動発信が可能になったところで、 GENERIC カーネルではコメントアウト 何らかの接続先の IP アドレスが必要と ついでに外部からの接続も可能となる されている。その状態であっても なるため、仮の値 ( 192.168.2.1 ) を指 ようにしておこう。 pppd を着信用に設 定し接続時のネゴシェーションによっ 定しておくことで、外出先等から自分 sysctl —w net . inet ・ ip. forwarding=l て接続後に利用するアドレスで上書き のサーバーへダイアルアップすること する。ダイアルアップ先から IP アドレ もできる。ただし、この場合は対象と とすれば rebo 。 t 等しない間であれば利 スが指定される場合には、 ipcp-accept- なるマシンが予め起動されていなけれ 用できるが、できればカーネルを作り ばならないと言う問題がある注 2 。ダイ 10Ca1 、 ipcp-accept-remote の二つカ必要 直しておいたほうが良いと思う。 となる。このような設定を行っておけ アルアップ着信の設定は発信のときと IP filter の実行は /etc/rc. conf 中で指定 同様に行った後、 options. tty00 等の着 ば、 することができる。 信用のポート設定を用意する。最後に ipfi1ter=NO /etc/ttys で getty の代わりに pppd を使用 pppd call ispdialup-demand ipnat=NO するようにしておけば良い。たとえば ipmon=NO と予め実行しておくことによって、外 tty00 を着信用に使用するのであれば、 部へのバケットを検出して自動的にダ tty00 の行をリスト 3 のように変更して と記述されている部分があるので、 イアルアップ ppp 接続を行うようにな おく。 れらを YES に変更すればよい 0 lpmon る。この設定を行う際に注意する点と 着信と OnDemand ダイアルアップを に関しては NAT を利用するだけであれ しては、予期しないバケットによって 組み合わせて次に紹介する NAT の設定 ば不要であるが、バケットログを監視 知らないうちに何度もダイアルアップ を行うことで、その気になれば技術的 する場合に使用することができるので、 してしまうという状態を避けることで にはミニプロバイダもどき的な利用も YES にしておくといいだろう。 NAT を あ ( ' このため、ダイアルアップのき 可能となる注 3 。 利用するにはこれらを YES にするだけ かけとなるバケットを制限するため ではだめで、他にもいくつかの設定フ (active-filter 等 ) も用意 ァイルを用意する必要がある。 使用した ppp 接続を強 マリスト 3 /etc/ttys の一部 いイツ 定 の NetBSD で NAT の設定を行う場合、 "/usr/sbin/pppd" dialup 0 Ⅱ ttyOO 注 2 w 朝が 0 、使用、きれば外出先からダイアルアップしたときに自動的に起動して、接続するという芸当もできると思われるが、残念ながら今のと 亟ぎ U On 他等を利用でる OS は筆者の知る限りでは Wind 。 ws 系のみである。 よプな接続を認めそいるプロバイダが世の中にどの程度存在するかに関しては筆者はまったく確認していない。恐らくほとんどのプロバイダ 三 .3 禁止していふ、 ないとしても好印象を持っということはないのではないかと思う ; - p 。 58 B magazin 20 C) N 5

2. BSD magazine No.5 BSDでMy Serverを作ろう! ; Mr.McKusick特別インタビュー

マリスト 1 1 /etc/rc. conf 修正・追加分 network—interfaces=" 100 ed0 tun0" ifconfig—tunO= マリスト 1 2 /etc/start_if. tun() ・ /usr/sbin/ppp の場合 : /usr/sbin/ppp —auto —nat ispdialup ・ ports/net/ppp-nt (PREFIX=/usr/locaI) の場合 : /usr/local/sbin/ppp -auto ispdialup マリスト 13 タイムスケジュールの設定を抜いたエントリの起動手順と auto モード ppp の復帰手順 # ki11 、 cat /var/run/tunO. pid 、 # /usr/local/sbin/ppp ispdialup—no—time—schedule Working mode Using interface : tunO ppp> dial PPP> close ppp> quit # /usr/local/sbin/ppp ispdialup のように設定する。 こでは、サーバ ーの時計の誤差を最大 2 分までとみな して、開始・終了時間をテレホーダイ 枠の内側にずらしている。 実際の設定は、リスト 9 、 10 のよう になる。 最終設定およびその他 以上が ppp の設定だが、このままで は接続するために、毎回ダイアルアッ プサーバーマシンにログインして、 # ppp ispdialup Vork ng in interactive mode sing ・ nter ace : tunO のよ イアル Ppp> PP 続 ドで動か magaz-ln いけないよ常時 demandV ダ 5 ・、要がある。 ーめとこ ppp を 20 0 N て、 FreeBSD では、 /etc/rc. conf の network interfaces 変数に列挙されているネット ワークインターフェイスは、 /etc/start if. <interface-name> というスクリプトで 実行されるような仕組みになっている ( 詳細は /etc/rc. network 参照のこと ) 。 のスクリプトで、 os の起動時に ppp を auto モードで動かすように設定しよう。 /etc/rc.conf への修正・追加 network_interfaces 変数に tunO を追加 修正する。また、 ifconfig_tun0 変数を 追加する ( リスト 1 1 ) 。 /etc/start_if. tunO スクリプトの作成 /usr/sbin/ppp の場合と ports/net/ppp-nt の場合とで、 ppp コマンドのパスが違う ので、それぞれについて設定例を挙げ ておく ( リスト 12 ) 。 上記の設定では、 tun0 デバイスの活 性化 (ppp の起動 ) は sendmail の起動 よりも前になるので、ダイアルアップ サーバーの sendma ⅱが起動するときに ダイアリングに行く場合がある。 で、タイムスケジュール機能を使って いる際に、ダイアリング以外の時間に システムを起動すると、 sendmail はタ イムアウトがかかるまで固まってしま う。これを避けるために、 tun0 デバイ スの活性化 (ppp の起動 ) を sendmail の起動よりも後のスタートアップスク リプトで実行するようにする。 以上が、 On demand ダイアルアップ サーバーの設定例である。 FLET'S ISDN を利用した常時接続の 場合は、ダイアルアップ無通信時のタ ァイルを参照してほしい。 ppp ( 8 ) のマニュアルやサンプル設定フ 制御することはできない。詳細は、 ル機能のようにバケット到着の時間で 御できる。ただし、タイムスケジュー はバケットの種類でダイアリングを制 るのもよいだろう。このフィルタ機能 の標準機能であるフィルタ機能を用い ダイアルアップ抑制方法として、 ppp 動で auto モード ppp を起動しておく。 いだろう。接続が終わったら、再度手 のエントリで手動でダイアルするとよ schedule) をもうひとつ用意して、そ ( リスト 13 の例では、 ispdialup-no-time- ケジュールの設定を抜いたエントリ ている ppp プロセスを殺して、タイムス で、その際には、 aut 。モードで動作し に接続したい際にまったく使えないの このままではテレホーダイ以外の時間 この機能を使うとよいだろう。しかし、 のダイアル制御を簡単に行えるので、 利用すると、テレホーダイ以外の時間 の際には、タイムスケジュール機能を また、テレホーダイを利用した接続 としておくのがよいかもしれない。 set timeout 0 と思うので、 ppp の設定ファイルで イマ監視による切断はしなくてもよい au 5 イ、 B

3. BSD magazine No.5 BSDでMy Serverを作ろう! ; Mr.McKusick特別インタビュー

集 物明 0 作るプ ダイアルアップサー←の構築 NetBSDC- 大石勲 / ao Ohishi ohishi@hf.rim. 0舅P NetBSD によるダイアルアップ接続を るための pppd とバケットフィルタリン に削除していなければ特に問題ないだ 行う場合においても、 FreeBSD 編で書 グを行うための IPfilter である。 ろう。参考までにⅡ J - PPP では ppp では かれているように大きく分けて pppd はカーネル ppp とも呼ばれ、そ なく tun を使用する。また後半の NAT / の名の通りカーネルモードで動作する ファイアウォールの実現の部分で紹介 ・ダイアルアップルータと併用して ppp ソフトウェアである。 pppd は している IPfiIter を利用するためには、 FreeBSD 等にも標準で付属しており、 NAT はそちらに任せ、 NetBSD はフ 同様に ipfilter pseudo-device が必要であ ァイアウォールとしての役割のみと 設定ファイルに関してもバージョンの る。こちらも NetBSD の GENERIC カー する 差異や OS の違いによるデバイス名等の ネルにも含まれているものなので、特 ・ NetBSD をダイアルアップルータ化し 影響を除けば、設定ファイル等は同じ に問題になることはないだろう。 てすべて自前で設定する ものを使うことができるはずである。 Ⅱ J - PPP のコマンド名が ppp であるこ という方法がある。もちろんダイアル と等から、Ⅱ J - PPP がクライアントでの アップルータですべてを設定するとい 発信用で pppd がサーバーでの着信用等 以降の記述は FreeBSD 編の解説とほ う方法もあるが、基本となる知識は同 と誤解している者もいるかもしれない とんど同様の環境を想定しているが、 じであり具体的な設定内容が多少異な が、どちらも発信 / 着信ともサポートし NetBSD 環境に合わせて若干変更して る程度である。またダイアルアップル ている。残念ながら NetBSD の場合、 いる ( 表 1 ) 。 Ⅱ J - PPP は標準で付属していないうえ、 ータの製品間の違いもあるため、一般 論としての設定を ( 特定の ) ダイアル FreeBSD での拡張機能を使用するには アップルータを前提せすに行うことは ソースの入手等面倒な部分がある。 pppd 自体に関して言えば、 IIJ-PPP に対 pppd の動作に関する設定は実行時に 困難であると思われるため、 こでは して性能が低いわけでも、機能が少な NetBSD によるダイアルアップルータの 引数で与えることもできるが、通常は 構築を行う方法を紹介する。ダイアル いわけでもないのでもっと pppd が利用 設定用のファイルに記述する。 pppd の アップルータを使用した設定でも基本 されてもいいのではないかと思う。な 設定ファイルは / etc ゆ pp / ~ に置かれて 的な考え方は同じなので、必要に応じ おり、基本的には表 2 のような内容を お、 NetBSD-current では pppd か IPv6 に て参考にするといいだろう。 記述する ( 主要なもの ) 。 も対応しているようである。 これらがすべて必須というわけでは ないが、これらに適切な設定を行うこ とで複数の接続設定の共存等を簡単に pppd を使用するためにはカーネル内 行うことができる。 NetBSD にはダイアルアップルータを 構築するのに必要なソフトウェアが標 次にいくつかのケースを想定して、 に PPP pseudo-device が存在しなければ 準で付属している注リ今回紹介するの 設定例を挙げて見ることにする。設定 ならない。 NetBSD 等では GENERIC カ は、ダイアルアップ PPP 接続を実現す に使用している各種 pppd オプションの ーネルでも含まれているので、意図的 注 1 もちろんこれは NetBSD に限ったことではなく、 FreeBSD や OpenBSD でも同様である。 を 0 メ” 続境の一 55 BSD magazine 2000 No. 5

4. BSD magazine No.5 BSDでMy Serverを作ろう! ; Mr.McKusick特別インタビュー

今回は、 FLET'S ISDN やテレホーダ 自宅で運営することは困難である。 イを使って、個人のローカルネットワ のため、 ISP のダイアルアップのネット ークが、一般の ISP ( インターネットサ ワーク ( 外側 ) と個人のネットワーク 前述したように、ファイアウォール ービスプロバイダ ) にダイアルアップ ( 内側 ) とを外向きには完全に遮断す の構築には、そのセキュリティレベル で接続する環境に対する比較的簡単な るという方法が最適となる。 の設定、セキュリティポリシーから、 ファイアウォール構築について考える 次に、内部から外部への接続につい いろいろな構築方法が考えられる。 ことにする。 て考えてみる。インターネットの利用 まずは、実際の運用において、何か 企業や大学などのように、ダイアル が限られたアプリケーションのみであ ら何を守りたいか、というセキュリテ アップ接続ではなく固定の IP アドレス れば、それらのアプリケーションをす ィポリシーを明確にし、設計すること を持ったネットワークの場合は、利用 べてカバーするような proxy サービスを が必要となる。 者が多く管理者の目の届く範囲にない ファイアウォールで用意してやるのが また、セキュリティポリシーとして、 こと等の違いがあるため、より明確な よいだろう。今回は、内部ネットワー バケットの通過を、デフォルトで許可 運営方針やセキュリティポリシーが必 クからは比較的ゆるやかなフィルタリ するのか、デフォルトで遮断するのか、 要となる。 ングを考えることにする。 といった選択も重要である。 こで、バケットフィルタリングを 次に、設計したセキュリティポリシ セキュリティポリシーの決定 行うにあたって、注意すべきことがあ ーを実現するのに最適なファイアウォ セキュリティポリシーの決定を行う る。広く利用されているサービスのう ールの形態はどのようなものかを決定 にあたって、まず、外部から内部への ち、 FTP 、 X11 の 2 つのサービスは単純 する。こで、ファイアウォールの構 接続について考えてみよう。ダイアル なバケットフィルタリングはうまく処 築にあたって、設備コストや管理コス アップで接続する場合は、通常 ISP か 理できない。 トも考慮しなければならない。同じセ ら毎回同じ IP アドレスをもらえるとい 日 ' P サービスは、 FTP コントロールと キュリティポリシーが実現できるなら、 う保証はない。このため、この種のサ FTP データフローのコネクションから構 設備の費用や管理の手間は少ないにこ ービスでは、外界 (The lnternet) のど 成される。 FTP クライアントから FTP したことはない。 こからでもアクセスできるサーバーを サーバーに接続する際には、クライア ントからサーバーに向けて FTP コント ロールコネクションを張り、その後に サーバーからクライアントに向けて、 FTP データフローコネクションが張ら れる。このため、 FTP サービスを使用 するには、外部からの FTP データフロ ーコネクションのコネクション開始要 求を受け付けるようにしなければなら ない。これを回避する方法として、 FTPPassive モードを使うという方法も あるが、すべての FTP サーバーが passive モードに対応しているとはかぎ らないので、今回は、 FTP データフロ ーのセッション要求を受け付けるよう にする。これを許可するためには、 20 番ポートからくる TCP のコネクション 開始要求を許可するように設定する。 X11 サービスも、 FTP サービス同様 の築 △ インターネット 外部スクリーニングル ータ 匚こコ 要塞ホスト ク 2 界 内部スクリーニングルータ △ ワ ロ ロ ロ 図 6 スクリーンドサプネットアーキテクチャの例 28 2 B magamn 0 N 5

5. BSD magazine No.5 BSDでMy Serverを作ろう! ; Mr.McKusick特別インタビュー

使用する。デュアルホームホストアー あるいは、図 10 のような構成も考え タにバケットフィルタリングをまかせ キテクチャでは、 DeleGate などの proxy てしまい、 *BSD Box は proxy サービス られる。 サービスが対応するアプリケーション を行うという構築方法がある。ダイア この場合、境界ネットワークを作っ のみしか中継されないので、使いたい て構築していて安全そうに見えるが、 ルアップルータの機能として、バケッ サービスが使えない可能性があるので FW と内部の Router が同じになっている トフィルタリングがない、あるいは不 十分な場合は、図 10 のようなネットワ 注意が必要となる。 ので、スクリーンドホストアーキテク チャ相当のファイアウォール構築にな ーク構成にして、 *BSD B 。 x でバケッ ダイアルアップルータ + * BSD Box の場合 トフィルタリングを行うとよいだろう。 り、境界ネットワークを利用したスク 以上のように、機材の組み合わせ方 ダイアルアップルータと * BSDBox の リーンドサプネットアーキテクチャの ファイアウォール構築 ( 図 1 1 ) と同じ によって、いろいろな構築方法が考え 場合は、図 9 のような構成で構築可能 安全性とはいえない。 られるが、セキュリティ方針や管理方 である。 針を考慮し、それぞれの利点を生かし、 この構成は、スクリーンドホストア ダイアルアップルータと * BSDBox の 場合の構成では、ダイアルアップルー それぞれの欠点を把握して、構築する ーキテクチャになる。 とよいだろう。 ISP Dialup Network ppp I/F ダイアルアップルータ ネットワークサーバを運営する上で は、以上のようにファイアウォールを 構築してセキュリティレベルを高めて も、それぞれのサーバープログラムの セキュリティに関しては注意深く意識 しておく必要がある。 DARPA ( 国防総省高等研究計画局 ) によって設立された C E RT/ C C (Computer Emergency Response Team Coordinat10n Center) と呼ばれる、コン ピュータセキュリテイや侵入行為を監 視し、ユーザーに危険を知らせるため の機関があります (http://www.cert. こでは、セキュリティ情報・ 資源の供給センターとして、情報セキ ュリティの一般の評価やコンピュータ セキュリティの問題への対策・警告・ 分析などの情報を提供している。 CERT Security Advisory として、インタ ーネットサーバープログラムのセキュ リティホールに対する技術報告が正式 に提供されているので、 OS のアップグ レードまで解決されない問題は、この 報告を参考に即時に対応することが望 まれる。 LAN I/F Personal LAN ロ ロ *BSD Box 図 9 ダイアルアップルータと * BSDBox の場合 ( 1 ) ISP Dialup Network ダイアルアップルータ ppp I/F 00 ' ダイアルアップルータと * BSD Box の場合 ( 2 ) org/) 。 象第 DMZ Network *BSD Box Personal LAN 一ゞし / 30 B magazin 20 0 N 5

6. BSD magazine No.5 BSDでMy Serverを作ろう! ; Mr.McKusick特別インタビュー

集 皀 SU で 物明を作るプ ダイアルアップサハの構築 FreeBSDC 福島茂之 /Shigeyuki Fukushim shige@ FreeBSD. 0「g ノを、 ネルを再コンパイルする必要がある。 装された ipfirewall(4) と呼ばれる IP バケ ットフィルタリングやリダイレクティ ングなどの処理を行う機構をコントロ a) options IPF 旧 EWALL バケットフィルタリングのためのコ こでは、 FreeBSD の PC で ISP ( イ ールするコマンドである。 ードをカーネルに組み込む ンターネットサービスプロバイダ ) に この ip ⅱ rewa Ⅱを使って、ファイアウォ ールを構築していく。 ダイアルアップ接続をするためのサー b) options IPF 旧 EWALL VERBOSE 今回構築するファイアウォールのネ バケットフィルタリングの syslogd バーを構築する際の設定方法について ( 8 ) を通じたロギングを有効にする。 ットワーク構成を図 1 に示す。 FW ホス 解説する。ダイアルアップルータと この設定を有効にした後に、フィ トでは、バケットの転送を行い、ファ FreeBSD マシンを併用し、ダイアルア ルタリングのルールにログを取るよ イアウォール機能は、バケットフィル ップルータで NAT/IP Masquarade を行 うに指定をすれば、ルールごとのロ タリングを用いて実現する。 い、 FreeBSD マシンでファイアウォー ギングが可能となる。 FreeBSD の場合、バケット転送機能 ルを構築する際には、「 IPFW を用いた を有効にするには、 /etc/rc. conf に以下 ファイアウォールの設定」のみを参照 c) oprions IPF 旧 EWALL_VERBOSE の設定を追加する ( リスト 1 ) 。 してもらいたい。 凵 M = 1 OO バケットフィルタリングのロギング 以下、 IPFW の設定について述べる。 のバケット数を制限する。この指 定により、バケットフィルタリング 旧 FW を有効にする のロギングをついた D 。 s 攻撃 FreeBSD でこの IPFW を有効にするに FreeBSD には ipfw(8) (/sbin/ipfw) と (Denial of S ervice Attack) を防ぐこ は、以下のオプションをカーネルコンフ 呼ばれるコマンドが標準で附属してい とができる。ルールごとのログがこ ィグレーションファイルに追加し、カー る。この ipfw は、 FreeBSD kernel に実 こで指定された制限数に達すると、 そのルールに関するロギングは停止 する。ロギングを再開するには、 ipfw ( 8 ) を使って、 はしめに こでは、 マリスト 1 /etc/rc. conf 追加分 gateway—enab1e="YES" ISP DiaIup Network X. Y. Z. x / 24 # ipfw zero く丿レー丿レ番号 > としてカウンタをリセットする。 以上のカーネルコンフィグレーショ ンオプションをカーネルコンフィグレ ーションファイルに追加して、カーネ ルの再構築を行ってもらいたい。 FreeBSD Box FW ( フィルタ十ゲートウェイ ) Personal Network 192.168.0. x / 24 図 1 ネットワーク構成 BSD magazine 2000 No. 5

7. BSD magazine No.5 BSDでMy Serverを作ろう! ; Mr.McKusick特別インタビュー

集 皀 SU で 物了を作るプ の方式になっているが、ダイアルアッ プでリモートの XI 1 クライアントをロー カルの X11 サーバーに接続して利用す るのは、帯域的にも無理があると考え られるため、今回は X11 サービスは使 わないことにする。 また、外出時にネットワークに接続 された家のホストにインターネット経 由でアクセスし、ホストにある情報を 入手したい場合がある。このような場 合のために、以上の TCP コネクション 以外に、 SSH と HTTP に関して外から アクセスできるようにしておく。外部 からの、 22 番ポート (SSH) と 80 番ポー ト (HTTP) に対する TCP コネクション 開始要求を許可するように設定する。 以上に挙げらた以外の外部からの TCP コネクション開始要求に関しては、 すべて拒否するようにし、すでに確立 ppp I/F LAN I/F されている TCP コネクションは許可す るようにする。 さらに、 S unRPC や NFS のような UDP を用いたコネクションレスプロト コルのサービスはセキュリティ上脅威 となるので、基本的にすべてプロック する。また、 NTP ( Network Time protocol) により、サーバーの時計を合 わせをするためには、 123 番ポートから くる UDP バケットを許可するようにす る。さらに、 Archie (Prospero Directory service) サービスを使用する には、 191 番ポートと 1525 番ポートか らくる UDP バケットを許可するように する。 最後に、内部ネットワークからのパ ケットに関してはすべて許可するよう にし、それ以外のバケットに関しては、 すべて拒否するようにする。 ISP Dialup Network ダイアルアップルータ Personal LAN 図 7 ダイアルアップルータのみの場合 ISP Dialup Network *BSD Box Personal LAN 図 8 ターミナルアダブタと * BSD Box の場合 LAN I/F ppp I/F ファイアウォールの構築 今回、ファイアウォールの構築に用 意できる機器として、ダイアルアップ ルータまたはターミナルアダブタ、さ らに、 *BSD Box マシンを考える。こ れらの機材を使って、ファイアウォー ルのいろいろな構築パターンについて 考えてみよう。 ダイアルアップルータのみの場合 ダイアルアップルータのみの場合は、 一番シンプルな構成になる。ダイアル アップルータにバケットフィルタリン グの機能がある場合は、図 7 のような 構成で構築可能である。 この構成では、ルータが外界にさら された部分なので、ルータの設定など のセキュリティを高めておかなければ ならない。外から中のマシンへの接続 については、ダイアルアップルータが ポートフォワーディングの機能を持っ ていれば、ルータのポートに接続して きた要求を内部のあるマシンのポート にマッピングすることで実現できる。 ターミナルアダブタと * BSD Box の場合 ターミナルアダブタと * BSDB 。 x の場 合は、図 8 のような構成で構築可能で ある。 この構成では、 *BSD Box の使い方 として、 2 種類の方法が考えられる。 1 つはバケット転送機能を有効にしてル ータ的に使用し、バケットフィルタリ ングを行って、ファイアウォールを構 築する方法である。もう 1 つは、 *BSD B 。 x のバケット転送機能を無効にして、 デュアルホームホストアーキテクチャ でファイアウォールを構築する方法で ある。この場合、 DeIeGate などの proxy サービスを * BSD B 。 x で提供する必要 がある。また、外からの *BSDBox の 防御には、バケットフィルタリングを BSD magazine 29 2000 No. 5

8. BSD magazine No.5 BSDでMy Serverを作ろう! ; Mr.McKusick特別インタビュー

寺集 皀 SU で My を作るプ ドを発行する必要があるかもしれない。 たとえば、 IO-DATA 製の PCINSII-128 を使用して 64KB 通信を行う場合は 「 ATZEOX2&Q2 」を発行する必要があ る。その場合は以下のような記述を行 っておけばよい。 に置くことにする。 こでは /etc/ppp/chat/— けば良いが、 ァイル内で指定された位置に置いてお chat スクリプトに関しては peers / ~ フ /etc/ppp/chat/ スクリプトの設定 ABORT "BUSY" 述する。 ている。次に chat スクリプトの例を記 こでは ispdialup という名前を流用し chat ファイル名は自由に付けていいが、 し、 chat コマンドで制御を行っている。 /etc/ppp/chat/ispdialup ファイルに用意 ム /TA 制御用の AT コマンド設定は を使用している。また接続の際にモデ この場合、接続の際の認証には PAP が行われるようになる。 ispdialup 」と実行するだけで ppp 接続 ABORT ABORT "NO ANSWER" ABORT "NO DIALTONE" ABORT "ERROR" "NO CARRIER" AB ORT AB ORT ABORT ABORT ABORT "NO CARRIER" "ERROR" "NO DIALTONE" "BUSY" "NO ANSWER" " at " OK " atdt (OX) AAAA—BBBB C ONNECT *r*n 接続先の電話番号は「 (OX)-AAAA- BBBB 」と仮定している。この部分は 適宜設定する必要があるだろう。また 環境によっては最初に特殊な AT コマン "atzeOx2&q2" OK " atdt (OX) AAAA—BBBB" C ONNECT *r*n /etc/ppp/pap-secrets の設定 pap-secrets ファイルには PAP 認証の 際に使用するユーザー名 / パスワードの 情報を記述する。たとえばユーザー foo 、パスワード : bar で接続する場合 には以下のような記述を行う。 f00 * bar を使用することで接続先サーバーを特 名」「パスワード」となっており、「 * 」 左から順に「ユーザー名」「サー ノヾーー 意することで複数の接続用ユーザー / パ 中には接続に用いる設定を 1 行毎に用 定しないことができる。このファイル スワードを記述することもできる。 /etC/PPP/iP-UP の設定 接続に成功した際に自動的に処理す るスクリプトを記述する。たとえば r 。 uting 設定を変更したり、 POP でメー ルを取得したり、 rsync で外部のファイ ルと同期を取ったり等、シェルスクリ プトに記述することで自動実行が可能 となる。 /etc/ppp/ip-down の設定 接続が切れた際に自動的に処理する スクリプトを記述する。特に外部ネッ トワークへの問い合わせを行わないよ うにするための設定変更等を行うこと が多いだろう。 こまでの設定を行えば、手動で ISP へダイアルアップ PPP 接続を行うこ とはできるようになるが、今回の目的 は " ダイアルアップルータ " の構築であ る。ダイアルアップルータというから には利用者がダイアルアップ作業を意 識せすに接続 / 切断できて欲しいもので ある。 pppd を使用した場合でも、外部 へのバケットをトリガとした自動 PPP マリスト 2 /etc/ppp/peers/ispdialup-demand の設定 /dev/dty03 demand : 192. 168.2. 1 ipcp—accept—local ipcp¯accept—remote noipdefault defaultroute idle 90 noauth connect 'chat —v -f /etc/ppp/chat/ispdialup' papcrypt netmask 255.255.255.0 user f00 2000 No. 5 BSD magazine 57

9. BSD magazine No.5 BSDでMy Serverを作ろう! ; Mr.McKusick特別インタビュー

無事起動したら、 sw 叩の動作確認を してみよう ( 画面 2 ) 。 マリスト 8 /etc/remote たら、次はこれをダイアルアップルー ディスクレスクライアントが起動し タとして機能するように設定を行おう。 TA と DN アダブタカードの接続 ISDN アダブタカードのケープルを TA の s 点端子に接続した後、 ISDN アダブ タカードをカードスロットに挿入し、 カードが com ? として自動認識されるの thunder : dv=/dev/ttyOI : br # 115200 : pa=none : dc : マリスト 9 /etc/ppp/options debug lock マリスト 1 0 115200 crtscts modem マリスト 1 1 ttyOI /etc/ppp/options. tty01 /etc/ppp/peers/biz_ip8 defaultroute connect ー /usr/sbin/chat noauth user hoge@xxx.sphere.ne 210.136.4.81 : ( 注 2 ) netmask 255.255.255.248 persist は 3 ) —v -f /etc/ppp/peers/biz-ip8—chat' ( 注 1 ) 注 1 ”フレツツ・ ISDN " 利用の場合、 ISP 名まで必要。 注 2 "BIZIP8" の場合、 local 側 IP アドレスだけルータのグローバル IP アドレスで決め打ちする。ダイ アルアップ環境の場合は n 。 ipdefault を用いる。 注 3 切断された場合に再接続を試みる。常時接続でない人には禁断のオプション。 マリスト 12 /etc/ppp/peers/biz_ip8_chat ECHO ON ABORT "BUSYtt ABORT "NO**sCARRIER" ABORT "ERROR" OK "AT!C0=4!P=1" ( 注 1 ) OK " ATD 18603xxxxxxxx " TIMEOUT 40 CONNECT ( 注 2 ) 注 1 利用する ISDN アダブタカードによって異なる。 注 2 フレツツ・ ISDN の場合、 NTT に指定されたアクセス用電話番号。 マリスト 13 /etc/ppp/chap-secrets hoge@isp ・ ne ・ JP * xxxxxxxx を確認したら、 # cd /dev # . /MAKEDEV t t y 1 と、 ISDN アダブタカード用にシリアル デバイス tty01 を作成する。 次に、接続テスト用に /etc/remote に リスト 8 のような行を追加し、 tip コマ ンドを実行する。こで AT コマンドが *d する ) (tip コマンドから抜けるには、 ~ を押したあと OK connected # tip thunder : 利用できれば OK である。 そちらも参考にして設定などをチェッ プタカードとの交信ログが残るので、 は、 /etc/ppp/connect-errer に ISDN アダ どうか試してみる。もし失敗した場合 として、ダイアルアップ接続できるか # pppd call biz—ip8 こまで設定できたら、 からは見ることができないようにする。 ンを 600 などにして r 。。 t 以外のユーザー ッショ このファイルは、必ずパー トとパスワードの組を記述する注 17 。 スト 1 3 ) には、プロバイダのアカウン CHAP 認証ファイル ch 叩 -secrets ( リ 記述するのである。 イアルアップするための AT コマンドを のマニュアルに従い、初期化およびダ 述する。これは、 ISDN アダブタカード イアルアップするための接続手順を記 chat スクリプト ( リスト 1 2 ) にはダ ト 9 ~ 11 のようになる。 ダイアルアップのための設定はリス DN アダブタカードの設定 注 6 の認証方式カ B magazin 20 0 N 5 0

10. BSD magazine No.5 BSDでMy Serverを作ろう! ; Mr.McKusick特別インタビュー

集 00 で M)YJ 衂 0 霧ツ 等を使用して、 NTP サーバーへの TCP / IP レベルでの接続が可能なことを 確認したら、 ntpd なり xntpd なり存在す るほうを r 。。 t で実行してみる。もし時 刻のずれがあまりに大きい場合は時刻 の同期ができないので、あらかじめほ ぽ正しい時刻に合わせておくとよい。 動作確認を行ったら、次に ntpd/ xntpd の自動起動を設定する。 NetBSD-current であれば、 /etc/rc. conf にリスト 2 のような行があるので、変更 する。 NetBSD 1.4. x の場合はリスト 3 のようになる。 FreeBSD での設定に関 マリスト 2 /etc/rc. conf (NetBSD-current の場合 ) xntpd—flags= 回構築した NTP サーバーと時刻の同期 で、同一ネットワーク内のマシンを今 ンは NTP サーバーとして利用できるの こうして ntpd/xntpd を起動させたマシ うに設定すれば良いはずである。 するスクリプトを起動時に実行するよ 様な方法を取るか、 ntpd/xntpd を起動 他の OS に関しては未確認だが、同 しては、 / etc / rc. conf に次の一行を追加 すればよい。 xntpd—enab1e="YES" nt pd=NO nt pd=YES ntpd—flags= ntpd—flags= 変更する v リスト 3 /etc/rc. conf (NetBSD 1 .4. x の場合 ) xntpd=NO xntpd=YES ・変更する xntpd—flags= -P /var/run/xntpd ・ pid" -p /var/run/xntpd. pid" を行うようにすると良い。その場合は /etc/ntp. conf の server の行の記述を変更 するだけで済む。他が Windows 系や Mac 等で構築されたネットワークでも Windows や Mac で動作する NTP クライ アント等が存在するので、そういうも のを利用して同期を取っておくと良い だろう ( 図 1 ) 。 ntpd/xntpd はサーバーに対して polling しながら時刻の同期を取るため、イン ターネットへ専用線等で繋いでいる場 合は何も考える必要がないが、ダイア ルアップ環境の場合はいくっか注意す る必要がある。たとえば外部へのバケ ットを検出して自動ダイアルを行うよ うな設定を行っている場合は、 NTP の polling バケットでダイアルしたりとい った 事が起こるので、意図しない接続を行 わないようにダイアルアップ環境全体 の設定を十分考えておく必要があるだ ( 外部の ) NTP サーバー このマシンのみ外部の NTP サーバーと同期を取る 自前の NTP サーバー ( A ) Windows Mac FreeBSD Solaris HP-UX NetBSD Linux これらはすべて「自前の NTP サーバー ( A ) 」と時刻同期をとる 図 1 起動した NTP サーバーと同期を取る 2000 No. 5 BSD magazine 709