8-5. マシンの時刻同期 '99 (1) マシン内臓時計の設定 * 時刻同期の必要性 ネットワ−クが安定してきたら、マシンの時刻をちゃんと合わせておいた方がいい。セキ ュリティ的にはログのタイムスタンプがあってないと侵入の経過が分からなくなってしま う。本「テイクダウン」の中でも、主人公の下村氏がやかましく言っていた。EWSは結 構時間がずれるものである。どうもまだパソコンの方がましらしい。安定しているのはル −タなどのネットワ−ク機器らしい。セキュリティだけでなく、様々な障害が起こってく る。注意したいものである。以下、幾つか問題をあげてみる。 先ずは早速 NTP のコンパイルで問題がおきた。 マシンの時刻をいろいろいじっていたら make がうまくいかなくなった。make コマンドはファイルのタイムスタンプを見ているの で、時間がおかしいと効かなく場合があるのだ。こういう場合は make distclean するか、 ファイルを再度展開するしかない。make に似たようなので、 プログラム開発のバ−ジョ ン管理ソフト SCCS でも問題になるようだ。小生 SCCS など、この手のツ−ルは使ったこ とないけど便利らしい。 $ /usr/local/bin/make make: *** File `Makefile' has modification time in the future make: Failed to remake makefile `Makefile'. ### Building XNTP: version=3.4y (beta multicast); 他、タイムシンクロナス方式の暗号化パスワ−ドも使えなくなる。ある程度の時間、多分 数分はいいだろうが。それに NFS も効かなく場合がある、これは困るぞ。Apollo のディ スクレス機が起動しなくなったこともある。ディスクレス機の日付が2006年とかなっ ていて、時間がおかしいといって、起動プロセスが途中で止まってしまったのである。 * NTP( Network Time Protocol )の概要 EWSなどコンピュ−タの時刻を合わせるソフトには timed というプログラム、 もう一 つ NTP というプロトコルを実装した ntp というプログラムがある。timed は十年以上前 の Apollo にも入っていたという古いものである。ntp の方は実際使われるようになった のは、ここ何年かのことと思う。timed がフリ−ソフトかどうか知らないが、ntp はフリ −ソフトとしてあちこちのサイトに見つけることができる。バ−ジョン3までは xntp と 呼ばれていたので、小生なんかはXのソフトかと思っていた。バ−ジョン3になって、た だの ntp になっている。 最近では Solaris 2.6 や Linux には最初から実装されるよう になってきている。 ntp の仕組みは、内部ネットのホストを1台、時刻の元とする。社内の他ホストはこの元 ホストに時刻を合わせる。さらに、元ホストはもっと大元の時刻ホスト、タイムサ−バか ら時刻をもらうことになる。このホストは GPS( Global Positioning System ) という装 置で正確な時刻を合わせるらしい。このような大元のタイムサ−バは国内にも幾つかあり、 福岡大学の clock.nc.fukuoka-u.ac.jp とか、 豊橋技術科学大学の ntp.tut.ac.jp など がそうである。タイムサ−バは stratum サ−バとも言われ、大元から次へ、 そして次へ という階層構造をとり、必然的に正確な時刻からずれていくことになる。ntp の設定ファ イルで、複数のタイムサ−バを記述する時は、同じ階層のものを指定しないといけない。 ntp ソフトで主に使うのは、ntpd デ−モンと ntpdate コマンドである。 ntpd はサ−バ とクライアントで共通で、制御ファイルにより区別する。 ntpd は時間を少しかけながら、 時刻を同期させていくらしい。急に時刻を変更するとファイルのタイムスタンプと整合性 がとれなくなったり、問題が起きる場合がある。それを考慮してじょじょにあわせていく ようになっている。時刻の伝達はブロ−ドキャストと1対1のやり方がとれるようになっ ている。一方 ntpdate コマンドは、 タイムサ−バの時刻にすぐに合わせるようになって いる。これら2つの手段を組み合わせたりして、実際の運用をすることになる。timed は ntp が使えないマシンでのみ使うということになるだろう。 * NTP の設定 [ 方法1 ] /etc/ntp.conf /etc/ntp.conf -------------------------------- ------------------------- |server clock.nc.fukuoka-u.ac.jp |server 192.168.1.2 |server ntp.tut.ac.jp |driftfile /etc/ntp.drift |driftfile /etc/ntp.drift 192.168.1.2 ---------- ---------- | ntpd | | ntpd | << サ−バの設定 >> | | | | << クライアントの設定 >> ---------- ---------- | indy2 | node_abcd ------*------------------*------------- サ−バの ntp.conf ファイルの server の項目には、複数のアドレスを書いてもいい。ク ライアントの方は、ネットワ−クの代表時刻サ−バのアドレスを書く。driftfile という のはマスタ−からの時間のずれを1時間毎に記録している。マスタ−の ntpd が止まって も、このファイルから平均的な時間のずれを計算し、しばらくは時刻の調整をするらしい。 そんな役目なので、driftfile のところはなくても構わないといえば構わない。 % tcpdump udp port 123 << indy2 で実行。4分ごとにパケットを出している。 tcpdump: listening on ec0 14:12:52.971664 node_abcd.ntp > indy2.ntp: v3 client strat 0 poll 6 prec -16 14:12:52.972548 indy2.ntp > node_abcd.ntp: v3 server strat 0 poll 6 prec -17 14:13:56.963754 node_abcd.ntp > indy2.ntp: v3 client strat 0 poll 6 prec -16 14:13:56.964547 indy2.ntp > node_abcd.ntp: v3 server strat 0 poll 6 prec -17 [ 方法2 ] /etc/ntp.conf /etc/ntp.conf -------------------------------- ------------------------- |server clock.nc.fukuoka-u.ac.jp |broadcastclient yes |server ntp.tut.ac.jp |driftfile /etc/ntp.drift |broadcast 192.168.1.255 |driftfile /etc/ntp.drift 多分こっちのやり方の方が実際的かも知れない。NTP のクライアント・マシンが多いとそ れぞれでパケットを吐き出すことになる。方法2ではサ−バが、自ホストのセグメントに ブロ−ドキャストを流して、クライアントはそれを受けるようにしている。同じセグメン トはこれで、セグメントが異なる場合に方法1により、セグメント毎のマスタ−に時刻を 供給するというのがいいのでないだろうか。 [ 方法3 ] /etc/ntp.conf 192.168.1.2 のマシン % /usr/local/bin/ntpdate -b 192.168.1.2 -------------------------------- |server 127.127.1.1 クライアントは cron でこのコマンドを定期 |driftfile /etc/ntp.drift 的に実行しておくだけでもいい。 一番簡単な方法。マスタ−の時刻は NTP サ−バ自体の内臓クロックを使う。 クライアン トの方は ntpdate コマンドでマスタ−の時刻に合わせてしまう。起動時だけ ntpdate を やるようにしても、実用上十分かと思う。 * マニュアルによる時計の設定 おなじみ date コマンドを使う。INDY IRIX 5.3 での例を示す。 root でロッグインして 自分の時計をにらみながら 3,2,1 はい、% date 1420 というように打つ。 14時20分 にマシンの時計を合わせたことになる。秒まで合わすこともできるが、0分単位で十分で ある。このコマンドでの時計の設定はすぐ有効になる。 IRIX 5.3 での date のヘルプを 見ると cc というのがある。ここは 1999 の 19 の部分である。SunOS 4.1.4 では年号の 下二桁でしか設定できない。2000年問題なわけである。 Apollo の date コマンドも同じく設定できなかった。 しかし Apollo の場合は date コ マンドは使わない。Apollo 専用の calendar コマンドを使って設定する。Solaris 2.5.1 はどうか。ちゃんと 1999 と設定できます。コマンドは /usr/bin/date である。date と やって文字が化ける場合はロケ−ルが合っていないので、# setenv LANG C とやってみる。 最後におまけ。SunOS 4.1.x には # /usr/ucb/rdate hostname なる、 他のマシンの時計 に合わせる rdate コマンドがある。これは他のマシンにはないようである。参考に一応。 % date -v 日付の指定が間違っています 形式: date [-u] [+format] date [-u | -n] [[mmdd] HHMM | mmddHHMM[[cc]yy]][.ss] date [-a [-]sss.fff] % date 06151420 << IRIX 6.5 でもコマンドの内容は同じ。 1999年 6月15日(火曜日) 14時20分00秒 JST % date 061514201998 << 年数を変えても警告メッセ−ジも何も出ない。 1998年 6月15日(月曜日) 14時20分00秒 JST % date << GMT とはちょうど9時間の差がある。 1999年 6月15日(火曜日) 14時49分45秒 JST % date -u << グリニッジ標準時間で表示する。 1999年 6月15日(火曜日) 05時49分47秒 GMT * Solaris 2.6 で時刻を合わせる マシン起動時の制御ファイルは /etc/rc2.d/S74xntpd である。 OSインスト−ルままの 状態では、NTP の制御ファイル /etc/inet/ntp.conf がないので、 デ−モン xntpd は起 動されない。マシン稼働中の制御コマンドは # /etc/init.d/xntpd { start | stop } で ある。/usr/sbin/ntpdate, /usr/lib/inet/xntpd, /etc/inet/ntp.conf。 # date 02071121 2005年02月07日 (月) 11時21分00秒 JST # date 2071123 date: フィールド記述子が正しくありません。 使用法: date [-u] mmddHHMM[[cc]yy][.SS] date [-u] [+format] date -a [-]sss[.fff] * Windows パソコンの場合 ( Windows 98 で確認 ) C:\WINDOWS> time << 時刻を合わせる。日付が狂うことは先ずない。 現在の時刻は 17:54:11.03 時刻を入力してください: 18:00 C:\WINDOWS> date << 日付を合わせる。これで昔の日付にすることもできる。 現在の日付は 2002-12-31 (火) 日付を入力してください(年-月-日): または、コントロ−ルパネルの時計のアイコンをクリックすると時計の絵が出て来る。同 じ画面に日付と時刻表示も出て来る。日付や時刻のとこをマウスでクリックし、値を変え ることができる。市販ソフトの評価版などで、いついつまで使えるというのがある。この date コマンドで日付を遡って付ければ、その場でそのソフトは使えるようになる。 本当 はそういうことはやってはいけないのだが、新規に購入していて以前のバ−ジョンでの評 価版の機能を確認したい場合などあるだろう。もしそのようなことをする場合は、そのソ フトだけを稼働させるようにする。これで、これまで作成したファイルやアプリケ−ショ ンのデ−タ・ファイルなど、日付がおかしくなることは多分ない。念のため、他のソフト はその際には使わないようにした方が無難である。 * Windows 7 パソコンの場合 `2f/11/08 プロバイダ設置のレンタルのル−タ、Yamaha RTX1000 を交換することになった。 プロバ イダとこちらで RTX1210 に交換するのだが、 それぞれ別に置き換えてもいいとのことだ が同じ時刻に一緒に置き換えることにした。そうなると秒針のある時計がいるわけで携帯 電話は秒までは出てない。腕時計はあるにはあるがまるで使ってないし。それでノ−トパ ソコンの内臓時計を合わすことにした。モニタ画面右下の時刻が出ているところをクリッ クすればアナログ時計の文字板が表示される。[日付と時刻の設定の変更]をクリックする と [日付と時刻] という画面が出て {インタ−ネット時刻} というメニュ−がある。この メニュ−はパソコンが Active Directory で制御されていると、出さないようにできるみ たいである。ノ−トパソコンの方はメニュ−は出て、デスクトップの方は出なかった。 〆インタ−ネット時刻サ−バ−と同期する 'time.windows.com' と自動的に同期するように設定されています。 他にも5ヵ所ぐらい選択できるところがあった。 time.windows.com と同期中にエラ−が発生しました。ピアは解決されていません。 NICTサイトの日本標準時の画面を開いた http://www.nict.go.jp/JST/JST5.html。あなた のコンピュ−タの内臓時計はこれこれ、地域標準時と 24.9 秒進んでいます、という表示 がされた。このパソコンからは直接インタ−ネットに行けないようになっていた、ファイ アウォ−ルで行けるようにしてない。まあ自分がそうしていたのだが。 [日付と時刻] 画 面で "インタ−ネット時刻サ−バ−と同期する" のを止めて手動であわせた。 "地域標準 時との差: 1.2 秒 進んでいます" となった。 その後でファイアウォ−ルでこのパソコン を直接インタ−ネットに行けるようにしたら time.windows.com と同期した。しかしパソ コンの時計はあまりあてにならないかも。勝手にプログラムを更新、インスト−ルしたり 始める。再起動も勝手にかかる。時計をみようとした時にそんなことになったら困る。 * 社内のマシンが時刻同期してない? [日付と時刻] メニュ−画面の [インタ−ネット時刻] 画面の {設定の変更} にて ---------------------------------------------------------------- | インタ−ネット時刻設定 | `2g/05頃に確認 |--------------------------------------------------------------| | インタ−ネット時刻設定を構成します: | | | | 〆インタ−ネット時刻サ−バ−と同期する | | サ−バ−:[ntp.nict.jp ▽] [ 今すぐ更新 ] | << [今すぐ更新] | | をクリック。 | 時計は正常に 2016/04/03 13:41 に ntp.nict.jp と同期しました。| | | | [ OK ][キャンセル] | ---------------------------------------------------------------- time.windows.com と pool.ntp.org も同期しました、と出た。ntp.nasa.gov は同期中に エラ−が発生しました、ピアは解決されていません、と出た。ping応答あり ntp.nict.jp, ntp.nasa.gov, pool.ntp.org。ping 応答なし time.windows.com。ついでにファイアウォ −ルで使っているUTMのシステム時間の設定をみた、NTP サ−バと同期を取るになって いて ntp1.jst.mfeed.ad.jp の記載になっていた。かつて自分が書いたことだけど。この URLをパソコンの時刻設定の欄に書いて[今すぐ更新]をやったら、同期しましたと出た。 手元のパソコンの前に FortiGate-80C をNATモ−ドで設置した。 このパソコンの時計 合わせるということで 80C でパケットの様子を取ってみた。 ポリシ−で internal-wan1 "all all ALL_ICMP,HTTP,DNS,NTP 〆ACCEPT 〆有効" ぐらいにした。ロギングオプション ( ON )許可トラフィックをログ、◎すべてのセッション。 [ログ&レポ−ト]->[ログ設定] よく分からないがこの程度で〆メモリ。〆イベントロギングは〆システムアクティビティ イベント、〆ユ−ザアクティビティイベント。 [ログ&レポ−ト]->[トラフィックログ]->[転送トラフィック] にやおらしたらログが出て きた。パソコンで上記の画面で NTP サ−バを先ず ntp.nict.jp を指定した。ログは名前 解決の DNS が幾つか出て、アクション accept で成功。 NTP は成功したら1つだけログ がでた。うまく行かない時は分散された他の NTP サ−バも見に行くようで、 3つログが でていた。ファイアウォ−ル FortiGate のポリシ−に NTP があれば、ここは通過するは ずである。LAN->WAN のポリシ−の一番上の方に NTP 許可してみたが、変わらなかった。 ファイアウォ−ルのWAN側すぐ上に侵入防御装置がある。これはある時から新しいシグ ネチャは取って来ないようにして置いてあるので関係ないと思う。装置にWebアクセス して [DefensePro]->[Policies] 画面で外から内ポ−トへ oneway で Action:[Block and Report] のところ[Report Only]にした。[DefensePro]->[Reporting]->[Security Log]-> [Show]にログが8千個溜まっているのだが、どうも新しいログは出てない。装置のメモリ にログは出ると思うが。専用ソフトを動かしてないのでそれも関係するのか。ややこしい。 ファイアウォ−ルのWAN側には回線冗長化装置も設置した。まさかこれが NTPパケット をとめている?、購入した業者にとりあえず尋ねたら、そんあ事例はこれまでにはないと のこと。ならばプロバイダ設置のル−タはどうか。ル−タのLANポ−トにパソコンをつ ないで時刻同期をやってみた。だめだった、つまりこのル−タかプロバイダの中出制限が 掛けられているはず。問い合わせしたらそうだった。DC内に預かっている顧客のサ−バ に脆弱性をもった NTP サ−バがあると、これが攻撃側になる。 それでインタ−ネットへ の NTP パケットを止めるようにしてあるとのことだった。それならそうと言ってネ!。 この FortiGate-80C 自身の時刻合わせはどうか、バ−ジョンv5.2.4。[システム]->[ダッ シュボ−ド]->[ステ−タス] の {システム時間} で。 "タイムゾ−ン (GMT+9:00)Irkutsk, Osaka,Sapporo,Tokyo,Seoul"。◎NTPサ−バと同期、◎指定する、サ−バ−[ntp.nict.jp]。 [ リフレッシュ ] をすぐにクリックしたら、時刻はもう合っていた。◎NTPサ−バと同期、 ◎FortiGuardサ−バを利用、でもできた。このログは出ていない。FortiGate-80C 自身の 送信元 wan1 のIPアドレスからの NTP,DNS パケットのログは出なかった。CLIコンソ− ルで # exec ping ntp.nict.jp が名前解決して応答したことを確認したりもした。 (2) timed と NTP の併用 * 概要 NTP が使えないマシンやコンパイルするのがめんどうな場合、 NTP だけでなく timed デ −モンも使ってみよう。timed の設定の仕方は簡単。 timed -M としたマシンが時刻マス タ−になる。複数 timed -M がある場合、一番早く起動したのがマスタ−となり、次はス レ−ブとなる。スレ−ブはマスタ−が途中で落ちた場合に代わりをするのである。ただの クライアントは timed でよい。 timed -M と timed はブロ−ドキャストで情報交換する ので、同じセグメント内でのみ有効になる。 どうも timed のオプションで他セグメント のIPアドレスも指定できるみたいだが、そこは確認していない。 tcpdump で timed の挙動を見てみると、マシン1対1で 525/udp ポ−ト同士で情報交換 するのと、マスタ−がブロ−ドキャストを出しているのが見える。これらのパケットは4 分間隔でパッパッと出ている。クライアントの時刻は、最初のパケットを受け取るとすぐ 時計があうみたいである。NTP はそんなことないらしいが。試しに Apollo のクロックを 1年戻し1998年とし、時間も1時間程度遅らせてみた。これでもスパッと時計はあい ました。年数まで違っては時計はあわないのじゃないかと思ったので、やってみたのだが。 このマシンを全体のマスタ−とする ↓ Apollo INDY INDY Windows --------- ---------- --------- ---------- 桜時計は フリ−ソフ | | | ntpd | | ntpd | | 桜時計 | トです。 プロトコル | timed | |timed -M| | | | (ntpd) | は NTP と SNMP が使 --------- ---------- --------- ---------- えるとある。 | | | | --------*--------------*--------------*-------------*-------- node_abcd indy1 indy2 [ マシンのサポ−ト状況 ] timed は Apollo と INDY にはデフォルトで入っていた。SunOS 4.1.4 と Solaris 2.5.1 には timed はないみたい。Apolloでは NTP はコンパイルできたが、時刻はあわなかった。 [ ポ−ト番号:UDP ] | サ−バ側 クライアント側 ------|---------------------------------- timed | 525 525/broacast ntpd | 123 123/broacast/multicast Apollo の /etc/services ファイルでは NTP は 123/tcp,udp になっていた。 INDY では 123/udp になっていた。実際 TCP は使ってないようである。外の NTP サ−バから時刻を もらう場合は、ファイアウォ−ルで 123/udp を通すことになる。 ちゃんと、どこどこの アドレスからの 123/udp のみを許可するとした方が、念のためである。 * timed いろいろ $ /etc/timedc << timed デ−モンのツ−ル。Apollo の node_abcd です。 timedc> help clockdiff msite trace help quit ? timedc> msite << timed のマスタ−はどのマシンかな。 master timedaemon runs on indy1 timedc> clockdiff indy2 << node_abcd と indy2 との時間のずれを見る。 % tcpdump port timed << 4分ごと時刻をやりとりしている。indy2 で見てみた。 tcpdump: listening on ec0 15:12:03.098148 indy1.timed > indy2.timed: udp 268 [tos 0x10] 15:12:03.098617 indy2.timed > indy1.timed: udp 76 15:12:03.099694 indy1.timed > node_abcd.timed: udp 268 [tos 0x10] 15:12:03.103505 node_abcd.timed > indy1.timed: udp 76 15:12:03.104435 indy1.timed > 192.168.1.255.timed: udp 268 [tos 0x10] 15:16:03.250587 indy1.timed > indy2.timed: udp 268 [tos 0x10] 15:16:03.251041 indy2.timed > indy1.timed: udp 76 15:16:03.252109 indy1.timed > node_abcd.timed: udp 268 [tos 0x10] 15:16:03.256991 node_abcd.timed > indy1.timed: udp 76 15:16:03.257828 indy1.timed > 192.168.1.255.timed: udp 268 [tos 0x10] * Apollo の場合 /etc/rc.local /sys/node_data/etc/rc.local へのリンク。 ---------------------------------------------------- | | |# Enable the Berkeley time server daemon. |if [ -f /etc/timed -a -f /etc/daemons/timed ]; then | (echo " timed\c" >/dev/console) | /etc/timed |fi | | * INDY の場合 % chkconfig デフォルトではこのようになっている。 | マスタ−にするには % chkconfig timed on timed off とやってリブ−トする。 timeslave off * 桜時計のこと `2c/11 のこと mfeed のサ−ビスが動いているか確認しようとおもい、パソコンにこのソ フトを設定してみようと思った。しかし、桜時計があるサイトをみたら、もうメンテナン スされてなかった。 Vector サイトから "桜時計 0.2.1" をダウンロ−ドしようと思った が動作OSが Windows Me/2000/98/95/NT だった Windows XP には標準で時刻合わせ機能 が付いているので、もはや必要性は薄いというコメントが書かれてあった。 (3) NTP のインスト−ル * INDY IRIX 5.3 の場合 % ftp ftp.u-aizu.ac.jp ftp> cd /pub/net/ntp ftp> ls -rw-r--r-- 1 root daemon 1295887 Mar 18 1998 ntp-4.0.72-export.tar.gz -rw-r--r-- 1 root daemon 1281022 Dec 13 1996 xntp3-5.87.tar.gz -rw-r--r-- 1 root daemon 1916434 Mar 18 1998 xntp3-5.92c-export.tar.gz % tar xvfz ntp-4.0.72-export.tar.gz << GNU の tar ならこれで展開できる。 % cd ntp-4.0.72-export % ls -F COPYRIGHT automake-1.2d.patches libparse/ ChangeLog blddbg.bat* missing* INSTALL bldrel.bat* mkdist.bat Makefile.am clockstuff/ mkinstalldirs* Makefile.in conf/ mksrc.bat NEWS config.guess* ntpd/ README config.h.in ntpdate/ TODO config.sub* ntpdc/ WHERE-TO-START configure* ntpmake* WINNT-README.html configure.in ntpq/ acconfig.h dot.emacs ntptrace/ aclocal.m4 excludes parseutil/ adjtimed/ html/ patches/ ansi2knr.1 include/ scripts/ ansi2knr.c install-sh* stamp-h.in authstuff/ kernel/ util/ autoconf-2.12.patches libntp/ % ./configure % make % make check % make install << /usr/local/bin に ntpd, ntpdate, ntpdc, ntpq, ntptrace, tickadj が入る。 ドキュメントは html/ 以下に入っている。 このディレクトリに入って % netscape . と やってみること。コンパイルするのは結構時間かかる。すぐ終わるかと思ったが、10分 ぐらいかかったか。これは正確な時間を GPS( Global Positioning System ) という装置 から取って、時刻マスタ−とするプログラムもいろいろ入っているからである。 ntpq と か ntptrace とかいったチェックソフトも入っている。ほとんど使うことはないが。 * Apollo SR10.4.0 の場合 [ 結論から言うと ] いろいろやってみたけどダメでした。NTP のバ−ジョンを双方、明示的に3にしたり2し たり。クライアントをブロ−ドキャストで受けるようにしたりしたけど。NTP サ−バの時 刻はマシンのシステム時計をここでは使ってみた。最初ロ−カルホストを指定する意味だ と思い server 127.0.0.1 とした。どうも違うらしい。インタ−ネットや雑誌を見ていた ら、ここは 127.127.1.1 とすべきらしい。127.127.1.0 という記述も見た。 それで両方 ともでテストしたが、やっぱり時刻は合わなかった。 % /usr/local/bin/ntpd $ /usr/local/bin/xntpd /etc/ntp.conf サ−バ /etc/ntp.conf クライアント ----------------------------- ------------------------------ |server 127.127.1.1 version 3 |server 192.168.1.2 version 3 |#broadcast 192.168.1.255 |#broadcastclient yes |driftfile /etc/ntp.drift |driftfile /etc/ntp.drift << INDY indy2 : 192.168.1.2 >> << Apollo node_abcd >> $ /usr/local/bin/ntpdate -b 192.168.1.2 4 Jun 13:06:28 ntpdate[3307]: no server suitable for synchronization found % tcpdump udp port 123 << indy2 で NTP のポ−トを見てみた。 tcpdump: listening on ec0 14:15:00.966068 node_abcd.ntp > indy2.ntp: v3 client strat 0 poll 6 prec -16 14:15:00.966894 indy2.ntp > node_abcd.ntp: v3 server strat 0 poll 6 prec -17 14:16:04.967304 node_abcd.ntp > indy2.ntp: v3 client strat 0 poll 6 prec -16 14:16:04.968094 indy2.ntp > node_abcd.ntp: v3 server strat 0 poll 6 prec -17 $ /usr/local/bin/xntpd -l /usr/tmp/time << ログもとってみる。 $ /usr/ucb/tail /usr/tmp/time 8 Jun 15:21:55 xntpd[1110]: logging to file /usr/tmp/time 8 Jun 15:21:55 xntpd[1110]: xntpd version=3.4y (beta multicast); Tue Jun 4 16:11:16 GMT+9:00 1996 (1) 8 Jun 15:21:55 xntpd[1110]: tickadj = 668, tick = 16666, tvu_maxslew = 39412 8 Jun 15:21:55 xntpd[1110]: precision = 20 usec [ 一応コンパイル ] 同じ ntp-4.0.72-export を Apollo にもってきてコンパイルしてみたがダメだった。 先 ず Apollo の新しい gcc がないのが致命的である。 純正Cコンパイラでもエラ−が出て ダメだった。そこで Apollo で実績がありそうな NTP を探すことにした。 WWWの "ア ポロコンピュ−タ化石館" のリンクギャラリ−から、ミシガン大学のサイトにあることが わかった。http://www.umich.edu/~archive/apollo/xntp3.4y.tar.gz README-apollo を先ず読んでみる。このファイルには2つのパッチが入っている。最初は 電子メ−ルによるもので、このパッチは xntp3.4y にはすでに当たっている。SR10.3.5の C 6.7 でテストしたとある。 次のは comp.sys.apollo ニュ−ス・グル−プに出たもので、 SR10.2 でコンパイルしたある。Config ファイルの DEFS に -DNOKMEM を入れよ、場合に よっては -DNO_SIGNED_CHAR_DECL も追加するべしとある。そして *** xntpd/ntp_io.c/1 以下の部分をパッチにして当てろとある。 先ずは xntp3.4y を展開したままで make をかけた。コンパイルはできたが時刻は合う気 配がない。仕方ないので、 README-apollo の2番目のパッチ部分を fff というファイル にしてパッチをあてた。これでもダメだった。まあ、ここはパッチの当て方のお勉強とい うことで。/usr/local/bin の patch は GNU のです。 Apollo には patch コマンドは入 ってません。 $ /bin/start_csh $ cd /usr/local/source/xntp3.4y $ /usr/local/bin/patch < fff Hmm... Looks like a new-style context diff to me... The text leading up to this was: | $ make $ make install << /usr/local/bin に xntpd, xntpdc, ntpq, ntptrace ntpdate, tickadj が一応入る。 * Red Hat Linux 9 では `25/04 別にソフトを取ってきて、コンパイルしたりインスト−ルしなくても最初から入っていた。 [システム設定]->[日付と時間] で出てくる画面で "ネットワ−クタイムプロトコル(ntp) を有効にする" にチェックし、時刻サ−バのURLかIPアドレスを記入する。ここでは "ntp1.jst.mfeed.ad.jp" と入れて [OK] をクリックした。これで自動的に ntpdデ−モン がバックグラウンドで稼働し、時刻を取りにいく。 ]# /usr/sbin/tcpdump udp port 123 でパケットの様子を見ると、[OK]を押したすぐにパケットが10個程ババっと流れる。こ れで ntp1.jst.mfeed.ad.jp へ時刻を取りに行っている。その後、約1分毎に現在の時刻 を取りに行く。この際流れるパケットは行き帰りの2個が見えた。NTTの117の時報 で、このコンピュ−タの時刻をチェックしたら、ほとんど同じだった。数秒の狂いはある のでないかと思ったが、まるでなかった。 入力するところにはプルダウンすると clock.redhat.com, clock2.redhat.comとかあるが、 一番上に来ているのだけが /etc/ntp.conf に反映されるようである。 [システム設定]->[サ−バ設定]->[サ−ビス] で {サ−ビスの設定}画面を見ると ntpd の ところにチェックが入っていて NTPv4 daemon ですと説明がでていた。 /etc/ntp.conf --------------------------------------------------------------------- |restrict default ignore |restrict 210.173.160.27 mask 255.255.255.255 nomodify notrap noquery |restrict 127.0.0.1 |server 210.173.160.27 "ntp1.jst.mfeed.ad.jp"と設定画面で記入したが、 |fudge 127.127.1.0 stratum 10 IPアドレスになって、この制御ファイルに記述 |driftfile /etc/ntp/drift されていた。NTP のコマンドは下のように幾つか |broadcastdelay 0.008 ある。ちなみに ntpq は、現在の状態を表示する |authenticate yes コマンドである。 |keys /etc/ntp/keys ]# cd /usr/sbin/; ls ntp* ntp-genkeys ntpd ntpdc ntptime ntptrace ntp-wait ntpdate ntpq ntptimeset ]# ntpq -p remote refid st t when poll reach delay offset jitter ============================================================================== *ntp1.jst.mfeed. ote-ntp1.jpnap. 2 u 76 128 377 42.947 2.783 0.189 ]# ping ntp.tut.ac.jp PING sagi.cc.tut.ac.jp (133.15.64.8) 56(84) bytes of data. ]# ping ntp1.jst.mfeed.ad.jp PING ntp1.jst.mfeed.ad.jp (210.173.160.27) 56(84) bytes of data. ]# ping clock.nc.fukuoka-u.ac.jp PING clock.nc.fukuoka-u.ac.jp (133.100.9.2) 56(84) bytes of data. (4) NTP による時刻の同期設定 * 内部ネットワ−クのホストの時刻同期 メ−ルサ−バのホストを内部ネットワ−クの正となる時計にする。他のホストは、このホ ストの時計に時刻をあわせるようにする。サ−ビスは NTP を利用することにする。 メ− ルサ−バのホストの様子をしばらく見て、時刻がどれだけずれて行くか調べてみる。あま りずれるようでなければ、このホストの内臓クロックを正の時計とする。そう、1週間に 数分程度ならいいのでないか。わざわざ外のタイムサ−バを使うまでのこともない。セキ ュリィティ的にも安全である。WWW と Gate と Mail ホストの時計は、例えば1週間に一 度NTTの 117 を聞いて、その場でマシンの時刻を合わせてしまうかだ。 ------- -------- | WWW | |Router| ------- -------- | | -------*-------*-----------*------- nix.co.jj | | 社内ネットの時刻マスタ−、セグメント1のマスタ−。 ------- ------- ------ | Gate| | Mail| ntpd Server |UNIX| ntpd Client ------- ------- 192.168.1.1 ------ | | | -------*-------*---------*--------------------*----- セグメント1 | 192.168.1.0 | ntpd Server ntpd Client ------- ------- --------- |hostX| |Linux| |Windows| -------192.168.2.1 ------- --------- 桜時計 | | | -------*------------------*----------*----- セグメント2 セグメント2のマスタ− 192.168.2.0 [ 192.168.1.1、Mail ホストの設定 ] /etc/ntp.conf 一応このホストを内部ネットの大元の時計とする。 ------------------------- その指定が 127.127.1.1である。同じセグメント |server 127.127.1.1 のホストへはブロ−ドキャストで時刻を知らせる。 |broadcast 192.168.1.255 |driftfile /etc/ntp.drift [ 192.168.2.1、hostX ホストの設定 ] /etc/ntp.conf hostX が Cisco のル−タだったりしたら,これを ------------------------- NTP の元サ−バにするという手もある。ル−タの |server 192.168.1.1 内臓時計は結構正確らしい。試したことないけど。 |broadcast 192.168.2.255 |driftfile /etc/ntp.drift [ その他 UNIX, Linux のホストの設定 ] /etc/ntp.conf NTP のクライアントはこれだけ。yes はなくても ------------------------- いいかも知れない。要チェック。 |broadcastclient yes |driftfile /etc/ntp.drift * 国内の時刻の供給は? `21/03 平成11年11月16日に、郵政省通信総合研究所(CRL) と IIJ と MFEED という会社が "インターネット上への日本標準時供給サービスに関する共同研究開始"というのを発表し ている。郵政省通信総合研究所、現在は総務省になっているが、ここの周波数標準課とい うところが日本の標準時(JST)を供給している。この標準時を大元にして、 通信総合研究 所が NTP 用の Stratum-1 サ−バを運用し、 MFEED が Stratum-2 サ−バを運用すること を目標に、共同研究していた。 Stratum-2 は Stratum-1 から時刻の供給を受けるという 階層構造をとる。研究は平成12年3月末までということだったので、もう終わっている のだが、まだこのような NTP サ−バは設置されていない。 設置しようという動きも止ま っているみたいである。MFEED は Cisco や IIJ など多くのインタ−ネット関連の企業が 出資してできた会社である。Stratum はストレ−タムと呼ぶ。 現在の国内の Stratum-1、Stratum-2 サ−バはどうなっているか。通信総合研究所のホ− ムペ−ジ http://jjy.crl.go.jp/ の "周波数標準・標準時などのQ&A" から、 全世界 の NTP サ−バのリストをたどることができる。それによれば、福岡大学に Stratum-1 が 2つ、Stratum-2 が民間のが1つあった。'96/08/01 時点での情報となっている。リスト は http://www.eecis.udel.edu/~mills/ntp/servers.html で、福岡大学の1つは Public NTP Primary ( Stratum-1 ) Time servers, JP clock.nc.fukuoka-u.ac.jp(133.100.9.2), NTP V3.3 primary(GPS clock) と掲載されていた。 Stratum-2 の民間のは MFEED でない、 知らない会社の名前が書かれていた。以前調べた時は豊橋技術科学大学も Stratumになっ ていた気がするが。ともかく早く国内のタイム・サ−バをきちんとして欲しいものである。 `21/06 追記。上の共同研究による Stratum2 NTP サ−バのサ−ビス開始。`21/04/10から 来年3月末までの実験サ−ビス。よければそれでずっとサ−ビスするらしい。誰でも利用 できる。http://www.jst.mfeed.ad.jp/,"Experimental NTP Servers (Public Stratum2)" を見られたい。NTP サ−バは ntp1.jst.mfeed.ad.jp、IPアドレスは 210.173.160.27で ある。ntp2 と ntp3 もある。`25/04 追記。MFEDの実験サ−ビスはそのまま "時刻情報提 供サ−ビス for Public" として継続されていた。RFC1305で規程されている NTP Version 3 に準じた Stratum2 の NTPサ−バで時刻情報を提供している。どうも一般的にどんどん 使われているようである。福岡大学も豊橋技術科学大学のも、まだサ−ビスはあった。し かし福岡大学の方は利用者が多過ぎて、時刻がずれたという話もあるようである。 * 日本標準時の時刻サ−ビスがおかしい `2c/11 に気付いた どうも、もっと前からおかしいみたい。少なくとも数ヶ月前から。 "インタ−ネットマル チフィ−ド時刻情報提供サ−ビス for Public" のサイト。http://www.jst.mfeed.ad.jp/ about/02.html "日本標準時とは" の画面で"本サ−ビスでは MFEED NICT のネットワ−ク による時刻情報提供サ−ビス(NTPサ−ビス) を利用することによって、日本標準時を提供 しております"。"ネットワ−ク...." がリンクになっていて、クリックした出たのが下記。 -------------------------------------------------------------------- | http://jiy.nict.gojp/time/service/ntpservice.html |------------------------------------------------------------------- | ただ今、メンテナンス中です。 | ご迷惑をおかけしますが、しばらくお時間をおいてアクセスいただきます | ようお願いいたします。 | | Web service is under maintenance. | Please connect to it after a while. | Thank you for your understanding and cooperation. Google で検索したら、http://jiy.nict.gojp/QandA/net_qa.html も上の画面がでてきた。 NICT のサイト http://www2.nict.go.jp/w/w114/stsi/PubNtp/、これも上の画面がでてき た。数日して見たらサイトは表示するものの、時刻サ−ビスを使いたければ契約が必要で、 しかも一般企業は対象ではない文面がでていた。どうも次の文章が以前より出ていた模様。 ↓ 「2006年1月より標準時配信監査サ−ビスとして提供してまいりましたタイムフ ィ−ドサ−ビスにつきまして、2012年2月29日をもって提供を終了いたします」 [ 日本標準時の時刻サ−ビス ] ここはだめみたい http://jjy.nict.go.jp/ntp "NICT公開 NTP サ−ビス" はどうか。インタ−ネットで時計 合わせ。記述を抜粋、"NICT の時刻サ−バは日本標準時に直結して、正確な時を刻んでい ます。ネットワ−クにつながっているPCは、簡単な設定で自動的にこのサ−バに時計を合 わせることができます"。Windows XP で合わせるやり方が書かれているが記述がおかしい。 ともかくサ−バ−に ntp.nict.jp と入力しますとある。DOS窓から>ping ntp.nict.jp やったら 133.243.238.163 が返えってきた。これはサ−ビスをやっているのか。 社内の サ−バでインタ−ネットの NTP サ−バの指定は、210.173.160.27 や ntp1.jst.mfeed.jp を書いていた。どうも mfeed のサイトを結局はみているみたい。 [ 電磁波計測研究所サ−ビス ] ここはいいみたい こんなことだけど何か知っていること有りませんかと、懇意にしているSI業者のエンジ ニアに問い合わせしてみた。`2c/11/13返事が。"電磁波計測研究所の時空標準研究室の日 本標準時G."、http://www2.nict.go.jp/aeri/sts/tsp/PubNtp/。[公開NTP]というペ−ジ あり。日本標準時に直結した時刻サ−バ、NTPサ−バ名: ntp.nict.jp。設定方法とQ&A。 どうもここを利用させてもらえばいいみたい。時刻サ−ビスが無ければどうすべとちょっ と右往左往した。昨今はNTP のアプライアンスを会社でも導入することになっているのか、 そんなことはなさそう。大学の時刻サ−ビスがまだ幾つかやられているが、利用は控えて ほしいらしい。IIJ は専用線利用の企業には NTP サ−ビスをしていると IIJ から聞いた。 * 参考 「NETWORK MAGAZINE」 `21/07, P.176〜179。桜時計の記事です。 > "もう1ランク上を目指す Windows システム運用管理"、第8回 全PCの時計を正確に 「UNIX MAGAZINE」 '99/06, P.58〜62。"DAEMONS & DRAGONS, NTP による時刻の同期"。 > 調べ終わった時に記事が出た。参考にさせてもらった。'99/06。 http://www.matsusaka-u.ac.jp/~okumura/networking/ntp.html > 最初に NTP について参考にしたサイトです。 * NTP での DDoS 攻撃ヘの対処 -------------------------------------------------------------------------------- "24-4.ネットワ−ク構築はエンドレス, (2)ネット..." の記事を参考のためここにも記載。 -------------------------------------------------------------------------------- NTP での DDoS 攻撃とは。外から脆弱性のある ntp サ−バに問い合わせる、 発信元IP アドレスを偽って。答えをそのIPアドレスに返す。問い合わせパケットよりも応答パケ ットの量が格段に多いということで DoS 攻撃になる。 そういうのがたくさん集まったの が DDoS 攻撃ということになる。JPCERT/CC が 2014/01/15 にアナウンスしていた、 NTP サ−バのモニタリング機能を悪用した攻撃、DNSのDoS攻撃よりもパケットの増幅率が高い。 ・DMZにある装置では先ずは ntp サ−バは動かさないこと。 ・ntp サ−バを動かす場合は ntpd 4.2.7p26 以降にすること。 ・外から内への UDP パケットをファイアウォ−ルで通さない。 ・OpenNTPD にする、非特権ポ−トでの通信に対応している。 ・送信元アドレス検証に対応するISPやデ−タセンタ−を利用。 ファイアウォ−ルでは時刻合わせのパケットは社内から外部へ通すだけにしているのが普 通だと思う。社内の装置が外の NTP サイトへアクセスして時刻同期している。 こうした 装置が外から攻撃を受けることはできない。攻撃を受けるとすれば、DMZにある装置と ファイアウォ−ル。ひょっとしてインタ−ネット回線用のル−タか。家庭向けのル−タで NTPポ−トを空けているという話は聞くが、企業等での設置ル−タではそれはないだろう。 社内にボットが入って、そこから外の NTPサ−バへ攻撃を仕掛けるということも考えられ る。標的をインタ−ネットのどこかのサイトにして。発信元IPアドレスを偽造する訳だ から、そういうパケットは IP Spoofing Packet である。ファイアウォ−ルで止められる はずである。UTMの FortiGateでも特に確認はしてないがデフォルトでそうなっている はずである。ヤマハのル−タでも昔から疑似パケットの spoofing attack 対策があった。 (5) 全システムの時刻同期 * 見取図 WebMail Mail-Relay 仮想IP : hostM'□ hostA'□ アドレス □ Router |.4 |.3 |.1 -------------------------------------------------------- 202.241.128.0 | |.2 hostM hostA in.named, sendmail hostM は ------- □ □ WWWサ−バ Cobalt Qube3J FireWall-1 |hostG|.2 |.4 |.1 | |--------------------- hostA,G,B は NetCache ------- 192.168.2.0 sendmail, qpopper Solaris 2.6 □ |.2 hostB □ InterScan VirusWall |.5 | |.1 -------------------------------------------------------- 192.168.1.0 | .9 Mail-Store | |.3 -------- □ □ hostC indy |Summit| Windows 98 管理者用 -------- いろいろ機器があります。NetCache, Summit, SonicWALL, Cobalt Qube3J, Windows パソ コン多数など。これら各種ログに関係してくる。 FireWall-1、InterScan、WWWサ−バ、 メ−ル送受信のログ。先ずは date コマンドなどで手動で、マシンの内臓時計の時刻を合 わすことにする。それで時刻が狂うようだったら、NTP の導入を考えてみたい。 [ NetCache の時刻を合わせる ] % telnet 192.168.1.5 デフォルトのままではロッグイン時、ユ−ザ名などなし。 cache> Tue Oct 15 14:24:39 JST [telnet_0:info]: root logged in from host: 続く cache> date 192.168.1.3 Tue Oct 15 14:29:58 JST 2002 << 約5分進んでいた。 cache> date 10151425 << 10月15日午後2時25分にセットする。 Tue Oct 15 14:25:00 JST [rc:info]: Time changed (via "date") to Tue Oct 15 続く Tue Oct 15 14:25:00 JST 2002 14:25:00 JST 2002 cache> Ctrl+D で抜ける。 WWWブラウザで設定する場合。http://192.168.1.5:3132/ で、NetCache の管理画面へ アクセスする。[Setup]->[System]->[Clock] で日付と時刻の設定をする。NetCache Time Zone: Japan にする。Synchronization Protocol: の設定で、時刻を同期させることもで きる。デフォルトは ntp になっている、他 sntp, rdate, rfc868 が選択できる。 [ Summit 24 の時刻を合わせる ] % telnet 192.168.1.9 デフォルトのままではロッグイン admin, パスワ−ドなし。 Summit24:1 # show switch << これで、 日付や時刻も出てくる。 | しかし Summit は時計を合わせ Current time: Tue Oct 15 14:38:13 2002 ても、あまり意味はないかな?。 Timezone: GMT Offset: 0 minutes, DST is in effect. Auto DST check: Enabled << DSTというのは夏時間うんぬんの | こと、日本では関係ない。 Summit24:2 # config time 11/28/2002 11:19:00 << mm/dd/yyyy hh:mm:ss の指定。 Summit24:3 # config timezone +540 << GMTからのオフセット。540分、 * Summit24:4 # save つまり9時間プラスに設定する。 Do you want to save to the primary configuration database? y ................... Saved to primary configuration database. Summit24:5 # quit ExtremeWare は、RFC1769 に基づく Simple Network Time Protocol( SNTP ) の Version 3のクライアント部分をサポ−トする。ExtremeWare は Summit のOS、SNTP は NTP の 簡易プロトコルである。SNTP クライアントは NTP サ−バから時刻の供給を受けることが できる。SNTP の設定コマンドは、# show sntp-client などである。 [ Cobalt Qube3J の時刻を合わせる ] 適当なマシン、例えば Windows 98 から http://192.168.2.4:444/ へアクセスし、admin で入る。[システム]->[時刻] の画面で時刻をセットする。 ただし、分単位でしか合わす ことができない。NTP サ−バのアドレスを入れるところもある。 * メ−ル関係から設定して行ってみる Windows 98 の Netscape Messenger から ikken@tcp-ip.or.jj へメ−ルを送る。 向こう では自分もメ−ルを受けて、katou@nix.co.jj にも転送するようにしている。 Return-Path: Received: from hostA.nix.co.jj by hostB.nix.co.jj (8.8.5/nix.1.0) id PAA20456; Thu, 10 Oct 2002 15:39:47 +0900 (JST) << hostB。 | プロバイダを通って帰ってくる Received: from hostB.nix.co.jj (hostB [192.168.1.1]) by hostA.nix.co.jj (8.12.5/8.12.5) with ESMTP id g9A6XG7X017954 for ; Thu, 10 Oct 2002 15:33:17 +0900 (JST) << hostA の時刻。 Received: from nix.co.jj by hostB.nix.co.jj (8.8.5/nix.1.0) id PAA20446; Thu, 10 Oct 2002 15:39:28 +0900 (JST) << hostB の時刻。 Message-ID: <3DA51BF7.FC7BAFDB@nix.co.jj> Date: Thu, 10 Oct 2002 15:19:35 +0900 << Windows 98 の時刻。 From: かとう X-Mailer: Mozilla 4.78 [ja] (Win98; U) X-Accept-Language: ja MIME-Version: 1.0 To: ikken@tcp-ip.or.jj Subject: TEST DESU Content-Type: text/plain; charset=iso-2022-jp Content-Transfer-Encoding: 7bit X-Mozilla-Status: 8001 X-Mozilla-Status2: 00000000 X-UIDL: [eo"!F*1"!(N]!!:]a!! マシンの内臓時計のテストです [ Windows 98 の時刻を合わせる ] C:\WINDOWS> time 現在の時刻は 15:02:11.03 時刻を入力してください: 15:10 << 手元の時計を見ながら、 午後3時10分になった らリタ−ン・キ−を押す。 [ Mail-Store の時刻を合わせる ] Solaris 2.6 % telnet 192.168.1.1 << 管理者用ホストから telnet で入った。 # date このマシンも時刻がずれていた。5分程遅れ 2002年10月15日 (火) 15時14分19秒 JST ていた。 Mail-Relay のホストも同様合わす。 # date 10151519 こちらは10分程遅れていた。やはりたまに 2002年10月15日 (火) 15時19分00秒 JST は時計を合わせなければいけない。 * 時刻に関する新しい動向 タイムスタンプサ−ビス、時刻公証サ−ビスというのが出てきた。信頼のおける第三者に、 文書をいつ何時何分に作成したのか証明してもらう。対外的には必要になってくるだろう。 タイムスタンプサ−ビスは企業間での文書のやりとりに。役所に出すような文書には、時 刻公証サ−ビスが用いられていくのでないか。自前で、高精度な時刻を GPSなどから配信 を受けネットワ−ク・タイムサ−バを設置する場合もあるだろう。楽天やヤフ−のオ−ク ション・サイトでの1秒を争うような場合に必要であり、もうすでに導入しているとのこ とである。文書の時刻認証はXMLの電子署名フォ−マットが利用されるのが濃厚である。 Word や Excel の最新バ−ションは、XMLでタイムスタンプを押すことができるように なっているはずである。 時刻配信プロトコルは NTP バ−ジョン4というのが新しくでき た。公開鍵暗号方式を用いて第三者による時刻の改竄ができないようになっている。今後 サイバ−タイムビジネスが土俵に上がり、商取引きや公文書などで "時刻" は必須のもの になっていく気がする。 時刻認証システム構築パッケ−ジ http://www.seiko-cybertime.co.jp/ > Time Stamp Server SecureTSS。セイコ−プレシジョン(株)。 電子文書が作成された時 刻を認証。存在証明、改竄の有無の証明に役立ちます。文書管理電子商取引関連、電子 自治体向けシステムに利用できる。 Time Server TS-2010、Windows 2000 Server、SQL Server 2000 が必要。クライアントはWWWブラウザ。2003年の3月に見た。 高精度標準時刻サ−バ > Time Server TS-2010 セイコ−プレシジョン(株)製。45万円位。ネットワ−クに接続 する。テレホンJJYとFMの2タイプがある。通信総合研究所のテレホンJJYサ− ビス、修正精度 +/- 10ms、修正頻度1−6回/日(デフォルト1回)、 付属モデムで公 衆回 線経由でテレホンJJYにアクセスする。FMタイプは NHK FMラジオの7時お よび19時の時報を検出して修正する。+/- 100ms、いわばネットワ−クラジオみたい。 TymServe 2100/2100LD ネットワ−ク・タイムサ−バ http://www.marubun.co.jp/aero/ > 2002年の Interop の丸文(株)のブ−スで見た。GPS 衛星から UTC 時刻を参照する。 精度は 1 microsecond,relative to UTC。その他 IRIG-B タイムコ−ド参照、ダイアル アップ・サ−ビス参照もできる。NTP v2/v3 対応。もう1つ NTP v4 に世界初で対応と いう GPS 衛星利用の SyncServer S100 を2002年6月から販売する、138万円か ら。これら米国 Datum 社開発の製品である。 SII時刻認証サ−ビス クロノトラスト(Chronotrust) 2002年の Interop パンフ > 日本初をうたうインタ−ネット上の時刻認証サ−ビス。セイコ−インスツルメント(株)。 時刻配信サ−ビス、時刻監査サ−ビス、タイムスタンプサ−ビス。時刻監査サ−ビスは 1時間に1回対象サ−バの時刻を検証する、規定値を超えた場合はアラ−トのメ−ルを 管理者に通知する。基本料金5万円/月1台、ログ保管20万円/年1台。ハッシュ化 されたデ−タに時刻認証を加えるタイムスタンプサ−バ Ni-5110A もある。 * 今の時刻は何時? `24/10 仕事の場所が変わって壁掛けの時計がなくなった。これまではその時計を見て、コンピュ −タなんかの時刻をセットしていたのだが。小生腕時計持ってないし、持っているのはカ −ド型の電卓についている時計。これも久しく時計合わせしてないし。ともかく、どうも キャッシュサ−バの NetCache の動きが怪しい気がする。 NetCache の内臓クロックを見 たら時計がだいぶ進んでいた。それでどこかウェブに時刻が出てないかググってみました。 独立行政法人情報通信研究機構の日本標準時。正確な時刻は日本標準時グル−プのペ−ジ を参照されたし。ネットワ−クが混み合っている時は、表示誤差が大きくなる。キャッシ ュも聞いていると正しい時刻でなくなる。このシステムはNTPにより、WWWサ−バの 時計を日本標準時に合わせ、その時計を表示している。電話の117で時刻を聞いたら5 秒遅れてました。ブラウザは Netscape、プロキシはかましてない。 ----------------------------------------------------------------- | http://www2.nict.go.jp/cgi-bin/JST.pl |---------------------------------------------------------------- | | WWWサ−バから供給された時刻 | | 日本標準時(JST) : [ Thursday, November 18, 2004 15:17:00 ] | 協定世界時(UTC) : [ Thursday, November 18, 2004 06:17:00 ] | 国際原子時(TAI) : [ Thursday, November 18, 2004 06:17:32 ] | 地域標準時 : [ Thursday, November 18, 2004 15:17:00 ] | | あなたのコンピュ−タの内臓時計 | | 時刻 : [ Thursday, November 18, 2004 15:17:42 ] | | 地域標準時との差 : [ 42 秒 進んでいます ] * サ−バの時刻と影響は `2f/05 メ−ルストアやメ−ルリレ−のサ−バの内臓時計が合ってなかったらどうなるか。メ−ル サ−バには Sun のマシンを長く使ってきた。 NTP で時刻を合わせるというのはやって来 なかった。たまに # date コマンドを叩いてみると、時計が結構狂っている。1〜2時間 進んでいるとか。それでも特にメ−ルの送受信に影響が出たということはない。メ−ルの ヘッダ−部のタイムスタンプに変な時刻が付いているということ位か。それでもパソコン のメ−ルソフトで受信時刻が進んでいたり遅れていたりすると不審に思われるだろう。で もメ−ルソフトに表示されるのは、自分の Outlook では送信日時になっていた。 こないだ、本番稼働の座を FortiMail に譲った Sun Solaris 9 のメ−ルストアを2年ぶ りに動かして社内の教育用として使った。万が一の時の予備としてまだ置いていた。時刻 の何時何分は合わせたのだが、役目を終えて改めて # date やってみたら、日付は違って いた。それでも10人位の人らはそのままメ−ルを送ったり受けたりしてたようだ。それ にDNSサ−バの2次ネ−ムサ−バのIPアドレスが1つ変わるということで、DNSの 制御ファイルの記述を少し書き変えた。serial 番号を1つ上げて named を kill し、起 動しなおした。このマシンは2時間位、時計が進んでいたがすぐ2次にも反映された。 * FortiMail の時刻同期 `2f/12/m 2000B の内臓時計を合わせる。これまでずっと手動でたまに時刻を合わせていた。パソコ ンの時計はちゃんと合っていて、それと比べると 2000B は3分半位遅れていた。 パソコ ンが 15:00:00 とすると 2000B は 14:56:30 という具合。以前に"◎NTPサ−バ−同期で" [ntp.nict.org] と書いていたのだが、どうも時刻が合わないので手動でやっていた。 改 めてファイアウォ−ルの FortiGate-310B のポリシ− "LAN->WAN" をみた。なんてこった 定義した送信元 2000B オブジェクトからのル−ルに NTP が入ってなかった。 FortiMail の 200D の方はちゃんとポリシ− "LAN->WAN" に NTP を入れてあった。 200D の時刻設定には [pool.ntp.org] となっていた、2000B もこれにしてみた。チェック◎を "日付" から "NTPサ−バ−同期" にしても、画面上に出ている "システム時刻" は変わら なかった。[リフレッシュ] を押しても変わらなかった。 それで "同期時刻" が[60](分) になっているのを [5] とかしたら、5分位してみたら正しい時刻になっていた。"同期時 刻" を [60](分) に戻して、[適用] でOKで設定完了である。