Ubuntu 16.04のサーバーでの時間同期の設定は、正確なシステム時間を維持するために非常に重要です。特に、ネットワーク上で複数のシステムを運用している場合、時間の一致はセキュリティやログ管理においても不可欠です。この記事では、Ubuntu 16.04サーバーにおける時間同期の設定方法について、詳細かつ包括的に解説します。
1. 時間同期の重要性
システムの時刻が正確でないと、ファイルシステムやデータベースのログ記録に問題が発生したり、ネットワーク上でのセキュリティ認証に失敗することがあります。たとえば、証明書の有効期限が誤って解釈されることを防ぐために、時間同期は必須です。
2. 時間同期の方法
Ubuntu 16.04には、主に2つの方法でシステム時間を同期することができます。1つは、ntpd
(Network Time Protocol Daemon)を使用する方法、もう1つは、systemd-timesyncd
を使用する方法です。Ubuntu 16.04では、systemd
が標準で導入されており、systemd-timesyncd
は軽量で簡単に設定できるため、ここではsystemd-timesyncd
を利用した設定方法を紹介します。
3. systemd-timesyncd
の有効化と設定
systemd-timesyncd
は、デフォルトでUbuntu 16.04にインストールされており、systemd
の一部として動作します。これを利用して、インターネット上のNTPサーバーと同期を行います。
ステップ1: systemd-timesyncd
サービスが有効か確認
まず、systemd-timesyncd
がインストールされ、サービスが有効になっているかを確認します。ターミナルで以下のコマンドを実行してください。
bashsystemctl status systemd-timesyncd
もしサービスが無効化されている場合、次のコマンドで有効にできます。
bashsudo systemctl enable systemd-timesyncd
sudo systemctl start systemd-timesyncd
これで、サービスが自動的に開始され、時間同期が始まります。
ステップ2: 設定ファイルの編集
systemd-timesyncd
の設定ファイルは/etc/systemd/timesyncd.conf
にあります。このファイルを編集して、使用するNTPサーバーを指定することができます。以下のコマンドで設定ファイルを開きます。
bashsudo nano /etc/systemd/timesyncd.conf
このファイル内で、次のようにNTPサーバーを設定します。例えば、ntp.ubuntu.com
やpool.ntp.org
などを指定できます。
ini[Time]
NTP=ntp.ubuntu.com pool.ntp.org
FallbackNTP=ntp.ubuntu.com
変更後、ファイルを保存して終了します。
ステップ3: サービスの再起動
設定を変更した後、systemd-timesyncd
サービスを再起動して、設定が反映されるようにします。
bashsudo systemctl restart systemd-timesyncd
ステップ4: 時間同期の状態確認
システムがNTPサーバーと同期されているかどうかを確認するために、次のコマンドを実行します。
bashtimedatectl status
このコマンドで、システム時間、タイムゾーン、NTPの状態などが表示されます。NTP synchronized
がyes
となっていれば、時間同期が正常に行われていることが確認できます。
4. 時間同期のトラブルシューティング
もし時間同期に問題が発生した場合、以下の手順で問題を解決できます。
ステップ1: サービスの確認
systemd-timesyncd
サービスが正しく動作しているか確認するために、次のコマンドでログを確認します。
bashjournalctl -u systemd-timesyncd
エラーメッセージが表示されていれば、その内容を元に対処します。
ステップ2: NTPサーバーの変更
特定のNTPサーバーに接続できない場合、設定ファイル/etc/systemd/timesyncd.conf
を編集して、他のNTPサーバーを指定することで解決できることがあります。
ステップ3: ネットワーク設定の確認
サーバーがインターネットに接続されていない場合、時間同期はできません。ネットワーク接続が正常であることを確認してください。
5. ntpd
を使用する方法
もしsystemd-timesyncd
ではなく、ntpd
を使用したい場合は、以下の手順でntpd
をインストールして設定できます。
bashsudo apt-get install ntp
インストール後、/etc/ntp.conf
を編集して、使用するNTPサーバーを指定します。
bashsudo nano /etc/ntp.conf
ファイル内で、次のようにNTPサーバーを設定します。
pgsqlserver 0.ubuntun.pool.ntp.org
server 1.ubuntun.pool.ntp.org
その後、ntp
サービスを再起動します。
bashsudo systemctl restart ntp
6. 時間同期の確認
ntpd
を使用している場合、次のコマンドで時間同期の状態を確認できます。
bashntpq -p
これにより、同期しているNTPサーバーの情報が表示されます。
7. まとめ
Ubuntu 16.04サーバーでの時間同期は、systemd-timesyncd
を使用することで非常に簡単に設定できます。また、ntpd
を使用する方法もありますが、軽量で簡単なsystemd-timesyncd
が一般的には推奨されます。時間同期を適切に設定することで、システムの安定性とセキュリティを向上させることができます。