• ベストアンサー

NTPサーバーのポート番号変更

NTPサーバーのポート番号の変更方法について御教授下さい。 NTPサーバを構築したのですが、待ちうけポートを123からwellknownでないポートに変更したいと考えています。ntp.confなどで変更すればよいのでしょうか? OS:Turbolinux 10 Server NTPD:ntp-server-4.2.0-8 ntp-4.2.0.8 NTPに関しては以上のものを入れています。 すいませんが御教授いただきたいです。

質問者が選んだベストアンサー

  • ベストアンサー
  • Lean
  • ベストアンサー率72% (435/603)
回答No.4

>NTPのサイトからソースファイル(ntp-4.2.2p2.tar.gz)をダウンロードしたのですが、どのファイルで# define句のポート番号を指定しているのでしょうか? grepコマンドあたり使用すれば簡単に見つかりませんか? ちなみに私の手元にあるntpのソースでは、include/ntp.hでしたが。 >御教授いただいたntp-4.2.8.src.rpmがネット上に見当たりませんでした それはNo.2の方ですよね? ちなみにTurbolinuxのサイトみましたが、バージョンが「4.2.0-8」「4.2.0.8」だから「ntp-4.2.8.src.rpm」ではなくて「ntp-4.2.0-8.src.rpm」のようですが。 ところでNTPサーバの待ちうけポートを変更するのはいいのですがNTPクライアント側では対応出来るんですか?

参考URL:
ftp://ftp.turbolinux.co.jp/pub/TurboLinux/TurboLinux/ia32/Server/10/updates/SRPMS/
tomo_moto
質問者

お礼

御教授ありがとうございます。 NTPサーバの待ちうけポート番号を変更することが出来ました。ソースを編集してコンパイルという作業は始めての経験でしたので、いろいろと勉強になりました。 ありがとうございます。 ※NTPクライアントは対応している機器があり、それに合わせてサーバ側もポート番号を変更したかったというのがこの質問をさせて頂いた契機でした。

その他の回答 (3)

  • Lean
  • ベストアンサー率72% (435/603)
回答No.3

>残念ながら/etc/servicesのポート番号を変更しただけでは待ち受けポート番号は変わりませんでした。 変更後、ntpdの再起動をしました? >また、ソースで定義されているということは、その#define句のポート番号を書き換えてからコンパイル->インストールすればそのポートになるということでしょうか? その通りだと思いますよ。

tomo_moto
質問者

補足

ご回答ありがとうございます。 ntpdの再起動もしていますが、待ち受けポートは123のままでした。 NTPのサイトからソースファイル(ntp-4.2.2p2.tar.gz)をダウンロードしたのですが、どのファイルで# define句のポート番号を指定しているのでしょうか?(御教授いただいたntp-4.2.8.src.rpmがネット上に見当たりませんでした)申し訳ないのですが御教授いただけないでしょうか。

  • xjd
  • ベストアンサー率63% (1021/1612)
回答No.2

こんばんは。 ntp-4.2.8.src.rpm ソースパッケージのソースコードを確認してみました。 #1さんの言われるように、getservbyname関数で、/etc/servicesから ポート番号を取ってきているようです。 /etc/servicesにNTPの定義がない場合は、NTP_PORT 定数を *port に割り当てています。 ソースコードの中で、NTP_PORT は、#define句で123と定義されています。 以下、ntpdのソース /* Find out the port number (usually from /etc/services), and leave it in network format. This is assumed not to be obtained from a network service! Note that a port number is not assumed to be 16 bits. */   if ((service = getservbyname("ntp","udp")) != NULL) {     *port = service->s_port;     if (verbose > 2)       fprintf(stderr,"Using port %d for NTP\n",port_to_integer(*port));   } else {     *port = NTP_PORT;     if (verbose)       fprintf(stderr,         "%s: assuming port %d for NTP - check /etc/services\n",         argv0,port_to_integer(*port));   } }

tomo_moto
質問者

補足

ご回答ありがとうございます。 ソースコードで定義されているんですね。 勉強になります。 残念ながら/etc/servicesのポート番号を変更しただけでは待ち受けポート番号は変わりませんでした。 ntp-server-4.2.0-8.i586.rpm というパッケージをTLのFTPサイトからダウンロードし、入れたのですが、これはntpdとは違うのでしょうか? (ntp-4.2.0-8.i586.rpmはOSをインストールしたときから入っていました) また、ソースで定義されているということは、その#define句のポート番号を書き換えてからコンパイル->インストールすればそのポートになるということでしょうか? 申し訳ありませんが、御教授いただけないでしょうか。

  • kome-maro
  • ベストアンサー率20% (29/145)
回答No.1

やったことありませんが、 /etc/services ntp 123/tcp ntp 123/udp ここを変更して変わらないかしら?

tomo_moto
質問者

お礼

ご回答ありがとうございます。 やってみたのですが、うまくいきませんでした。。。 # netstat -an で見ると、やはり123ポートしか開いていませんでした。

関連するQ&A

  • NTPサーバについて

    OS:RedHatLinux9 外向けのDNS、PROXY、メールサーバとなっているサーバにNTPサーバを構築しようと思い、/etc/ntp.confを編集し、chkconfig --level 35 ntpd onを実行して起動時にNTPサーバが自動起動するように設定しました。 ところが、OSを再起動すると起動中のメッセージに ntpd:syncronizing with time server [FAILED] と表示され、さらに起動後startxでGUI画面を立ち上げ時間を確認したところ、丁度9時間時間が進んでいました。 しかし、数分経つと正しい時間になります。 何か設定が間違っているのでしょうか? それともNTPサーバとはこういうものなのでしょうか? なお、/etc/ntp.confには restrict 外部のNTPサーバ server 外部のNTPサーバ を追加しました。(複数サーバ追加しています) また authenticate のyesをnoに変更しました。 どなたか分かる方がいらっしゃいましたら教えていただけないでしょうか? よろしくお願い致します。

  • ntpポートを開けるには??

    こんばんは。 RedHat7Jで、NTPサーバーを立てたくて、クライアント(Windows)で、それを参照して時刻を合わせたいと思っています。 で、RedHat7Jに「xntp3-5.93-4.i386.rpm」ってのをどこからか忘れましたが、ダウンロードしてインストールしました。インストールして「/etc/rc.d/init.d」にできた「xntpd」と言うのを起動しているのですが、NTPポートが開いていないらしくて、クライアントから参照できません。 サーバーの時刻は、ちゃんと合わせれています。 どうか、クライアントから時刻が合わせれるようにNTPポートを開けたいのですが、方法がわかりません。 どの本等をみても、xntpd、ntpdを起動して、クライアントでは桜時計などのツールを入れて、NTPサーバーを、ntpdの起動させたサーバーに設定するとしか書いていません。 どうか、宜しくお願いいたします。

  • ntpポートを開けるには??

    こんばんは。 コンピュータネットワーク(その他)で質問させてもらっていたのですが、内容が こっちのような気がしたので、再度質問させていただきます。 RedHat7Jで、NTPサーバーを立てたくて、クライアント(Windows)で、それを参照して時刻を合わせたいと思っています。 で、RedHat7Jに「xntp3-5.93-4.i386.rpm」ってのをどこからか忘れましたが、ダウンロードしてインストールしました。インストールして「/etc/rc.d/init.d」にできた「xntpd」と言うのを起動しているのですが、NTPポートが開いていないらしくて、クライアントから参照できません。 サーバーの時刻は、ちゃんと合わせれています。 どうか、クライアントから時刻が合わせれるようにNTPポートを開けたいのですが、方法がわかりません。 どの本等をみても、xntpd、ntpdを起動して、クライアントでは桜時計などのツールを入れて、NTPサーバーを、ntpdの起動させたサーバーに設定するとしか書いていません。 どうか、宜しくお願いいたします。

  • NTP の TCPポートは?

    NTPは123/UDPでようは足りると思うのですが、 WELL KNOWN PORTとかいろいろな資料に「123/TCP」ポートが割当たってます。 ntpd,ntpdate等でNTPを使う場合、実際には123/TCPは使われているのでしょうか?

  • LINUXのNTPサーバ同期について

    初めまして。 今回、LinuxのNTPサーバ同期について質問させていただきます。 Linuxを利用して上位のNTPサーバと同期し、下位のクライアントにNTPサーバとして公開しようとしています。 OSはRedhat Enterprize For Linuxです。 上位のNTPサーバはWindows7で標準のものを使用しています。 ntp.confの設定は以下のようにしています。 drtiftfile /ver/lib/ntp/drift restrict default ignore restrict 127.0.0.1 restrict 10.0.0.1 server 10.0.0.1 iburst 上記の設定で直前に service ntpdate start にて手動で同期をとりサービスを開始しています。 サービス起動後のntpq -pの値は remote refid st t when poll reach delay offset jitter 10.0.0.1 .LOCL. 1 u 28 64 1 0.491 0.374 8.504 約5分後 10.0.0.1 .LOCL. 1 u 15 64 7 0.823 3.618 8.997 約30分後 10.0.0.1 .LOCL. 1 u 32 64 377 0.755 46.202 6.871 となっています。 また、サービス起動時の /var/log/messageの内容は ntpd[]:step time server 10.0.0.1 offset 0.116279 sec ntpd[]:ntpd 4.2.4p8@1.1612-o Thu May 13 14:38:25 UTC 2010 (1) ntpd[]:precision = 0.075 usec ntpd[]:Listening on interface #0 wildcard, 0.0.0.0#123 Disable ntpd[]:Listening on interface #1 wildcard, ::#123 Disable ntpd[]:Listening on interface #2 lo, ::1#123 Enable ntpd[]:Listening on interface #3 eth0,IPv6Address #123 Enable ntpd[]:Listening on interface #4 eth1,IPv6Address #123 Enable ntpd[]:Listening on interface #5 lo, 127.0.0.1#123 Enable ntpd[]:Listening on interface #6 eth0, 10.0.0.1#123 Enable ntpd[]:Listening on interface #7 eth1, 172.16.0.1#123 Enable ntpd[]:Listening on routing socket on fd #24 for interface update ntpd[]:kernel time sync status 2040 ntpd[]:frequency initialized 0.000 PPM from /var/lib/ntp/drift です。 上位のサーバは同施設内にあり外部のサーバに見に行っているわけではありません。 以上の設定でntpサーバを開始し5日ほど放置した結果offsetの値が20178.8まで上昇していました。 また、ntpq -p の出力の最初の桁に"*,+"等もついていませんでした。 どなたか設定の間違いなどがわかる方がいらっしゃいましたら ご教授お願い致します。

  • ntpの設定について

    教えてください。 CentOSのサーバから外部のNTPサーバと同期を取る為の設定には NTPをインストールする必要があるのでしょうか? NTPサーバとして構築(インストール)する必要があるのでしょうか? まだインストールはしていません。 /etc/ntp.confというconfファイルはあります。 このconfファイルに以下のようにただ追記すれば良いでしょうか? server ***.***.***.*** server ***.***.***.*** server ***.***.***.***

  • ntpでrestrictのネットワーク指定が効かない

    Red Hat Enterprise Linux ES v.3にて RPMに入っているntp-4.1.2-4を使用して、この サーバを内部のNTPサーバとしています。 /etc/ntp.confの中で 許可するネットワーク指定で restrict 192.168.1.0 mask 255.255.255.0 notrust nomodify notrap と記述しているのですが、このネットワークアドレスの NTPクライアントからなぜか時刻を合わす事ができませんでした。(クライアントもntpdを使用しています) もしやと思い、restrict 192.168.1.2 notrust nomodify notrap とIPアドレス指定をしたら、NTPクライアントから時刻 合わせを行う事ができました。 留意事項  ・このサーバと外部の公共NTPサーバの時刻合わせは   正常に完了している。  ・/etc/ntp.confの変更後、ntpdをrestartさせて   いますが、NTPサーバの時刻が十分安定してから   NTPクライアントは合わせに行っています。  ・NTPサーバとNTPクライアントの時刻は大きくずれて   いると合わせないと聞いた事があるので、実行前に   1秒単位の誤差しかないよう、dateコマンドで合わ   せました。 ネットワーク指定が効かないと、NTPクライアントの数 分記述を入れなければならないので避けたいのです。 原因と回避方法を教えてください。

  • linux NTP で エラー になる

    Linux(redhad)にNTP(ntp-4.2.0.a.20040617-4.EL4.1.i386.rpm)をインストールしデーモン起動(/etc/rc.d/init.d/ntpd)したいのですが、起動時にsyslogに以下のようなメッセージが表示されます。  ※デーモン起動しているコマンドラインは   ntpd -u ntp:ntp -p /var/run/ntpd.pid   です。 -c で /etc/ntp.confを指定しても同様です。 Mar 19 10:29:07 gw02 ntpd[864]: ntpd 4.2.0a@1.1190-r Thu Aug 10 07:24:16 CEST 2006 (1) Mar 19 10:29:07 gw02 ntpd[864]: precision = 2.000 usec Mar 19 10:29:07 gw02 ntpd[864]: Listening on interface wildcard, 0.0.0.0#123 Mar 19 10:29:07 gw02 ntpd[864]: Listening on interface wildcard, ::#123 Mar 19 10:29:07 gw02 ntpd[864]: Listening on interface lo, 127.0.0.1#123 Mar 19 10:29:07 gw02 ntpd[864]: Listening on interface eth0, 10.1.0.70#123 Mar 19 10:29:07 gw02 ntpd[864]: Listening on interface eth1, 172.21.0.42#123 Mar 19 10:29:07 gw02 ntpd[864]: kernel time sync status 0040 Mar 19 10:29:07 gw02 ntpd[864]: getconfig: Couldn't open </etc/ntp.conf> Mar 19 10:29:07 gw02 kernel: audit(1205890147.131:46): avc: denied { read } for pid=864 comm="ntpd" name="ntp.conf" dev=sda7 ino=655046 scontext=root:system_r:ntpd_t tcontext=user_u:object_r:file_t tclass=file Mar 19 10:29:07 gw02 ntpd: ntpd 起動 succeeded この後 ntpqを実行すると No association ID's returned と表示され、NTPが正常動作していないのですが、rootユーザーよりコマンドラインで ntpd -u ntp:ntp -p /var/run/ntpd.pid を実行すると特にエラーがsyslogに残らず、ntpqも同期中のホストの一覧が表示されます。 何方か、デーモン起動時にsyslogに表示されているエラーの対処方法をご存知でしたらご教示頂けると助かるのですが。 /etc/ntp.confのパーミッションは -rw-r--r-- 1 ntp ntp 298 3月 18 12:55 /etc/ntp.conf です。

  • Fedora3でNTPサーバ

    Fedora3でNTPサーバのインストールがよくわかりません。最小インストールでFedora3をインストールしましたらetcディレクトリにはntp.confはありませんでした。どなたかFedora3でNTPサーバをインストール方法を教えていただけませんでしょうか。お願いいたします。

  • NTPサーバについて教えてください

    RedHat Enterprise Linux ES4のサーバを社内LAN上でNTPサーバとして構築し、外部のNTPサーバと時刻同期ができるところまでは確認できましたが、社内LAN上の他のサーバ(Windows及びLinux)やPC(XP Pro)から時刻同期を行おうとしても、「時刻データが利用できなかったため、コンピュータは同期を取り直しませんでした」というメッセージが出て時刻同期ができません。 ntp.confの内容は、 ------------------------- server xxx.xxx.xxx.xxx 外部NTPサーバ restrict default ignore restrict 127.0.0.1 restrict 192.168.0.0 mask 255.255.0.0 nomodify notrap notrust # server 127.127.1.0 # fudge 127.127.1.0 stratum 10 driftfile /etc/ntp.drift #multicastclient # listen on default 224.0.1.1 #broadcastdelay 0.008 authenticate no --------------------- のような感じです。 社内LANのIPアドレスは、192.168.10体系と192.168.11体系です。 このNTPサーバに対して、他のサーバやPCからはpingはOKで、間にfirewallが入っていたりルータが入っていたりすることはありません。 ntp.confの設定がまずいのか、RedHatのFirewallのせいか、それとも他の設定が何かあるのか、皆目見当がつきません。 どうしたらよいのか、どこか確認すべき項目はないか、などアドバイス頂ければ助かります。 よろしくお願い致します。