○ ntp-chrootの設定

*ntpサーバをchroot環境で動作させます
*ntpデーモンは -i オプションで指定したディレクトリを / と想定します
*必要なファイルをchrootディレクトリ下にコピーします

**以降はコメントです
*新規インストールした openssl を使います
*ソースの取得、削除は略します
*エディタ、ファイラーの操作は省略します
*ソースを展開したら説明文 (英文) を読みましょう
*Enterキーを省略します

*ログイン端末で "#" はroot、"$" は一般ユーザのプロンプトの記号です
*設定ファイルで "#" で始まる行はコメントとして解釈されます

○参照ファイル

パッケージの追加
最初の設定 (Router)
ntpのインストール
opensslのインストール

○インストール環境

:OS CentOS 5.5
:selinux permissive
:作業
:言語 LANG=en_US.UTF-8
:ユーザー  rootで実行

*メンテナンスの場合は一般ユーザから行います



○chroot環境の作成

*既にntpが通常の設定で作動していることを前堤にします
ntpのインストールを参照

○chrootディレクトリの作成

# mkdir -p /var/chroot/ntpd
# cd /var/chroot/ntpd
# mkdir -p dev etc/{ntp,crypt} var/{lib/ntp,run}
# chown root:ntp ./etc/crypt
# chown ntp:ntp ./var/lib/ntp
# chmod 750 ./etc/crypt

○既存ファイルのコピー

# cd /var/chroot/ntpd
# cp -av /dev/{null,random,zero} dev/
# cp -av /etc/{localtime,ntp.conf} etc/
# cp -Rav /etc/ntp etc/

○/etc/ntp.conf,/etc/ntp/ntpkey*の修正

*既存ファイルを削除して、/var/chroot/ntpdのファイルにリンクします

# cd /etc
# rm ntp.conf
# ln -s /var/chroot/ntpd/etc/ntp.conf ntp.conf
# cd ntp
# rm ntpkey*
# ln -s /var/chroot/ntpd/etc/ntp/ntpkey_MD5key* ntpkey_md5_venus.528p.com

○/etc/sysconfig/ntpdファイルの修正

*ntpd起動スクリプトで読みこみます
*ntpd.pidはchrootされません

OPTIONS="-i /var/chroot/ntpd -u ntp:ntp -p /var/run/ntpd.pid"

○ntpd起動スクリプトはそのまま使用します

/étc/rc.d/init.d/ntpd (詳細別記)

○ファイル及びディレクトリのユーザ・グループ・パーミッションの設定

*変更コマンド省略

var/chroot/ntpd/ 755 root:root

dev/ 755 root:root


null 666 root:root


random 666 root:root


zero 666 root:root

etc/ 755 root:root


localtime 644 root:root


ntp.conf 644 root:root


ntp/ 755 root:root



ntpkey* 600 root:root


crypt/ 750 root:ntp

var/ 755 root:root


run/ 755 root:root


lib/ 755 root:root



ntp/ 755 ntp:ntp




drift 644 ntp:ntp

○syslogの修正

*syslogにログを出力するには/dev/logを使用します
*/dev/logはchrootの外にあるのでそのままでは利用できません
*/etc/sysconfig/syslogにオプションを追加します
*/var/chroot/ntpd/dev/logが作られます

: /etc/sysconfig/syslog

SYSLOGD_OPTIONS="-m 0 -a /var/chroot/bind/dev/log -a /var/chroot/ntpd/dev/log"
KLOGD_OPTIONS="-x"

*syslogの再起動

# service syslog restart

○selinuxの対応 (selinuxが有効の場合)

:新規インストールファイルのselinuxラベルを修正

# restorecon -Rv /etc
# restorecon -Rv /usr/local
# restorecon -Rv /var/chroot

○ntpdを再起動します

# service ntpd restart

○ Copyright(c) 528p.com All Rights Reserved.