【初心者向け】Syslogサーバとは?役割を解説!
こんにちは。クレスコデジタルテクノロジーズ、YYです。
私は約2年前に初めてサーバ維持管理業務の担当となり、現在もサーバについて日々勉強中です。
今回は初心者向けと題に冠した通り、「Syslogサーバ」について基本から解説したいと思います。
もしこれからサーバについて学ぶ必要のある方、ぜひ学びたい!と思う方の参考となれば幸いです。
■あわせて読まれている資料:
対応事例やネットワークサービス一覧を掲載!
→ネットワークテクノロジーサービス
目次[非表示]
- 1.Syslogとは?
- 1.1.Syslogとは何か?
- 1.2.何故ログを収集、確認するのか?
- 2.Syslogサーバの役割
- 3.ログ種別と緊急度
- 4.送信機器側のSyslog設定
- 5.ログローテーションによるログファイルの管理
- 6.まとめ
- 7.引用元
Syslogとは?
Syslogとは何か?
「Syslog」とは「System logging Protocol」の略語で、システムログなどをサーバに送信するために使われるプロトコルのことです。
一般的に「Syslog」と言う場合は、この通信プロトコルのことや、
Syslogプロトコルにてサーバにメッセージを送信するシステムそのものを意味することが多いです。
また、Syslogで送信されるログの送り先となるサーバのことを、「Syslogサーバ」と呼んでいます。
何故ログを収集、確認するのか?
最も一般的なSyslogの活用方法は「システムの監視」です。
今回はどのように活用されているのかを具体的にご紹介します。
①障害の検知
Syslogには機器やプログラムの起動停止、機器のパフォーマンス状態など様々な情報が出力されます。
これらを監視することで、システムエラーや機器異常などの障害を検知することが可能です。
機器によって出力情報は異なりますが、CPU使用率やログイン履歴、ソフトウェアの起動停止などハードからプログラムに至るまで多種多様な情報がSyslogに出力されます。
②障害発生時の原因調査、状況確認
ネットワークにて何か問題が発生した際は、ネットワーク上にある様々な機器のログを照会することで「他の機器にはどんな影響があるか」「具体的に問題がある部分がどこなのか」などを確認、推察し対策を講じます。
これらの情報はネットワークに何か問題が起きた際、原因の特定や早期解決のための大きな手掛かりとなります。
③機器状態の記録
日頃からログを取得しておくことで、ネットワークの異常が発生した際に通常時のログと比較し、障害の切り分けにログを活用出来ます。
また、継続的に機器状態を記録しておくことで、機器故障やネットワーク障害の兆候をつかめる場合もあります。
④セキュリティ監査
機器のログイン情報や、機器認証のログを監視することで、不正なアクセスなどの証跡を残すことが可能です。Syslogの監視ツールによってはセキュリティ監視を重視し、ログの分析や豊富なアラート設定を備えたシステムも存在します。
Syslogサーバの役割
ネットワーク運用にて、Syslogサーバが担っている役割とは「システムログの一元管理」です。
ネットワーク上にはサーバ、ネットワーク機器、無線機器、コピー機など様々な機器が存在します。
各機器は内部にシステムログを保有しているので、機器内の情報を確認すればログの確認ができますが
一台ずつログインしてログを確認…というのは少し手間がかかり過ぎます。
障害発生時など緊急の場合であれば、なおさら迅速にネットワーク全体のログが確認できる仕組みが必要となります。
そのため、多くのネットワークにおいてSyslogサーバが導入されています。
ログ種別と緊急度
システムログの出方や書式は機器ごとに異なりますが、Syslogサーバはそれらバラバラのログ形式を標準化し表示します。
ログ情報の中でも、ログの整理でよく参照される情報が「Facility(ログの種別)」と「Severity(ログの緊急度/ログレベル)」です。
Facilityは「何についてのログなのか」を表し、Severityは「どれくらい緊急性の高いログなのか」を段階に分けて表しています。
障害の発生時はこれらの情報に基づいてサーバ側でログを絞り込み、問題のあるログが出ていないかを確認します。
送信機器側のSyslog設定
Syslogを利用するためには、送信側の機器にもSyslogサーバの設定が必要です。
ログはUDP、TCPで送信が可能であり、UDP / 514ポートがデフォルト設定となります。
送信ポートは運用に合わせて設定の変更が可能です。また、確実にログを取得したい機器においてはTCPでのログ送信を設定する場合もあります。
ログローテーションによるログファイルの管理
長期間にわたり運用をしていると、Syslogサーバ内部に膨大な量のログが保管され、サーバ側の容量が足りなくなる場合があります。そのような場合、解決策の一つに「ログローテーション」という機能があります。
ログローテーションでは、保管されているログを必要に応じて上書きや、削除することで古いログが溢れてしまうことを防ぎます。
Syslogを管理するソフトウェアにはこのような機能が実装されているものもありますが、専用のツールも存在しており、デフォルトの機能がない場合もツールを利用してログローテーション機能を実現している環境も存在します。
また、ソフトウェアなどを用いず、OSの標準機能でシンプルに運用することも可能です。
LinuxOS環境においては「logrotate」というログローテーション用の標準ソフトウェアが導入されています。
WindowsOS環境の場合も、標準ソフトウェアこそないものの、標準機能を組み合わせることでログローテーションの実現が可能です。
今回は一例として、WindowsOS環境にて、コマンドファイルとタスクスケジューラの機能を組み合わせ、ログローテーションを実現する方法をご紹介します。
(運用例:4日間経過したログを削除しログをローテーションする場合)
1. 「4日以上経過したログを削除する」という内容のコマンドファイル(batファイルなど)を作成します。
2. Windows OSのタスクスケジューラで実行日時を設定します。
Syslogファイルは容量が大きくなりがちであるため、ログの取得漏れを防ぐためにもサーバ容量への対策は立てておきましょう。
まとめ
今回はSyslogサーバについて解説しました。いかがでしたでしょうか?
Syslogサーバは直接的な通信に関わる機器ではありませんが、ネットワーク運用において重要な存在です。
Syslog サーバには多くのソフトウェアやアプライアンス機器など様々な導入方法がありますので、
この記事をきっかけに自分でも調べてみよう!と思っていただけたら嬉しいです。
最後までご覧いただきありがとうございました。
■サービス資料一覧はこちら↓
引用元
https://sanko-ib.co.jp/mail/blog-wifi_05-syslog/#
https://www.infraexpert.com/study/syslog1.html
https://beyondjapan.com/blog/2023/03/winlogrotate/
https://icon-rainbow.com/(アイコン提供)