SLESシステムログをリモートSyslogサーバーに安全にエクスポートする方法
rsyslog、TLS証明書、ピア名検証、キュー、検証、テスト機能を使用して、SLESシステムログをリモートのsyslogサーバーに安全に転送します。
SUSE Linux Enterprise Server (SLES) のシステムログをリモートの syslog コレクタにエクスポートする最も安全で実用的な方法は、TLS を使用した TCP 上で rsyslog を使用し、コレクタ証明書を名前で検証し、転送アクションに専用のキューを割り当てることです。通常の UDP syslog はシンプルですが、機密性やピア認証は提供されません。通常の TCP は配信動作を改善しますが、転送中にログの内容が公開される可能性は依然として残ります。
このガイドでは、GnuTLS ネットワーク ストリーム ドライバ ( gtls) と最新の rsyslog アクション構文を使用します。この手順は、2026 年 10 月 1 日に管理ガイドが更新された SLES 15 SP7 システムを対象としています。設定をそのままコピーする前に、ホスト上の正確なパッケージと rsyslog のバージョンを必ず確認してください。rsyslog のアップストリーム ドキュメントでは、最新のデプロイメントには TLS を使用した TCP を推奨しており、TCP 転送にはアクション キューを使用することを推奨しています。
信頼できる参考資料: SUSE Linux Enterprise Server 15 SP7 ドキュメント、rsyslog omfwd ドキュメント、rsyslog TLS クライアント設定、およびRFC 5425: Syslog の TLS トランスポート マッピング。
| アイテム | 推奨価格 | なぜそれが重要なのか |
|---|---|---|
| 輸送 | TCPとTLS | ログトラフィックを暗号化し、証明書ベースの認証をサポートします。 |
| 典型的な目的地港 | 6514/tcp | RFC 5425では、TLS上のsyslog用にTCPポート6514を割り当てています。 |
| rsyslogストリームドライバ | gtls | SLESモジュールがインストールされている場合、GnuTLSを介してTLS接続を提供します。 |
| TLSモード | StreamDriverMode="1" | 通常のTCPではなく、TLSで保護された操作を強制的に実行します。 |
| 認証 | x509/name | 証明書チェーンを検証し、想定されるサーバー名を確認します。 |
| 転送キュー | queue.type="linkedList" | ローカルログ処理を一時的なコレクター停止から切り離します。 |
リモートコレクターの完全修飾ドメイン名、リッスンしているTCPポート、およびコレクター証明書に署名する認証局(CA)証明書が必要です。相互TLSの場合は、SLESマシン用のクライアント証明書と秘密鍵も必要です。コレクター証明書は、rsyslogで設定したホスト名に対して有効である必要があり、できればサブジェクト代替名(SAN)を使用して有効にする必要があります。名前の不一致を解決するために証明書の検証を無効にしないでください。
リモートコレクターは、TLS syslogを受け入れるように既に設定されている必要があります。この記事ではSLES送信側に焦点を当てています。受信側の設定は、rsyslog、syslog-ng、SIEMアプライアンス、マネージドログサービスなどによって異なるためです。ファイアウォールでシステムが分離されている場合は、SLESホストが設定されたポートでコレクターへのTCP接続を開始できるようにしてください。デフォルトのステートフルfirewalldポリシーでは、通常、SLES送信側で受信ポートを開く必要はありません。
まず、パッケージとデーモンのバージョンを確認してください。これにより、古いサンプルコードがサーバーのビルドでサポートされていないディレクティブを使用している場合に発生する混乱を防ぐことができます。
rpm -q rsyslog
rsyslogd -v
systemctl status rsyslog --no-pager
rsyslogがインストールされていない場合は、有効になっているSLESリポジトリからインストールしてください。長時間ログ記録接続を公開する前に、通常のSUSEアップデートプロセスを通じてシステムを最新の状態に保ってください。
SLESでは、TLSネットワークドライバは別パッケージになっています。GnuTLSモジュールをインストールし、基本となるrsyslogパッケージはそのまま残してください。
sudo zypper install rsyslog rsyslog-module-gtls
ファイルが想定どおりのパッケージから取得されたことを確認するには、 を使用しますrpm -ql rsyslog-module-gtls。パッケージ名はディストリビューション固有のものであるため、Debian または RHEL 向けのガイドからパッケージ名をコピーしないでください。
組織またはログ記録プラットフォームが発行した証明書を使用してください。本番システムでは、ログ送信ホスト上に新しいプライベートCAを作成することは避けてください。ラボ環境ではテストCAを使用できますが、本番環境の信頼関係は組織のPKIプロセスに従う必要があります。
ルート権限でディレクトリを作成し、ファイルをコピーして、秘密鍵へのアクセスを制限します。例のファイル名は、PKIチームから提供されたパスに置き換えてください。
sudo install -d -m 0755 /etc/rsyslog.d/certs
sudo install -m 0644 ca.pem /etc/rsyslog.d/certs/ca.pem
sudo install -m 0644 sles-client.crt /etc/rsyslog.d/certs/sles-client.crt
sudo install -m 0600 sles-client.key /etc/rsyslog.d/certs/sles-client.key
sudo chown root:root /etc/rsyslog.d/certs/*ファイル名を信用するのではなく、認証局(CA)とクライアント証明書を検査してください。
openssl x509 -in /etc/rsyslog.d/certs/ca.pem -noout -subject -issuer
openssl x509 -in /etc/rsyslog.d/certs/sles-client.crt -noout -subject -issuer -dates
rsyslog TLSクライアントのドキュメントには、マシンの秘密鍵を保護する必要があることが明記されています。他のユーザーが秘密鍵を読み取ることができれば、そのユーザーはログクライアントになりすますことができる可能性があります。
専用のドロップインを作成します/etc/rsyslog.d/60-remote-tls.conf。リモート転送をベンダー構成から分離することで、レビューとロールバックが容易になります。
global(
DefaultNetstreamDriver="gtls"
DefaultNetstreamDriverCAFile="/etc/rsyslog.d/certs/ca.pem"
DefaultNetstreamDriverCertFile="/etc/rsyslog.d/certs/sles-client.crt"
DefaultNetstreamDriverKeyFile="/etc/rsyslog.d/certs/sles-client.key"
)
action(
type="omfwd"
target="logs.example.com"
port="6514"
protocol="tcp"
StreamDriver="gtls"
StreamDriverMode="1"
StreamDriverAuthMode="x509/name"
StreamDriverPermittedPeers="logs.example.com"
queue.type="linkedList"
)
StreamDriverMode="1"重要なのは、モードがデフォルトでプレーンな TCP になっている構成では、TLS 対応ドライバを選択するだけでは不十分であるということです。StreamDriverAuthMode="x509/name"次に、リモート証明書を検証し、サーバーの ID が許可されたピアと一致するかどうかを確認します。可能な限り、広範なワイルドカードではなく、証明書内の正確なコレクタ名を使用してください。
上記のアクションは、受信したすべてのメッセージを転送します。特定の機能や優先度のみを転送したい場合は、アクションの前にフィルタを追加してください。たとえば、セキュリティ重視の環境では、認証イベントやデーモンイベントを転送しつつ、大量のアプリケーションデバッグログをローカルに保持することができます。フィルタリングは、すべてのメッセージをホストから送信する必要があるという一律の前提ではなく、保持、インシデント対応、コンプライアンスの要件に基づいて行うべきです。
サービスを再起動する前に、rsyslogの設定全体を検証してください。これは、構文エラーやモジュール参照の欠落を検出する最も迅速な方法です。
sudo rsyslogd -N1検証が成功した場合は、rsyslogを再起動し、固有のテストメッセージを送信します。
sudo systemctl restart rsyslog
sudo systemctl status rsyslog --no-pager
logger -t sles-tls-test "remote syslog TLS test $(date -Is)"
sudo journalctl -u rsyslog -n 50 --no-pagerコレクター上で、タグsles-tls-testと送信元ホスト名を検索します。リモートアクセスが成功すれば、メッセージがコレクターに到達したことは証明されますが、それだけでは証明書検証が正しく設定されていることを証明するものではありません。より確実な確認方法としては、証明書検証をx509/name有効にしたまま、rsyslogサービスログにTLSハンドシェイクエラーやピア名エラーがないことを確認することです。
接続に失敗した場合は、DNS解決をテストしlogs.example.com、TCP 6514ポートに到達可能であることを確認し、証明書の有効期限を確認し、コレクター証明書に期待されるDNS名が含まれていることを確認してください。また、相互TLSが有効になっている場合、コレクターがSLESクライアント証明書を発行した認証局を信頼していることを確認してください。
target /名前StreamDriverPermittedPeersがコレクター証明書の識別情報と一致しません。トレードオフを十分に理解していない限り、証明書検証を匿名TLSに置き換えないでください。サーバーを認証せずに暗号化しても、アクティブな中間者攻撃者にログが漏洩する可能性があります。同様に、宛先がTCP 6514ポートを使用しているという理由だけで、SLES送信側で受信側のTCP 6514ポートを開放しないでください。転送は送信クライアント接続です。
クライアントの秘密鍵を認証情報として保護し、証明書の有効期限が切れる前に更新し、IPアドレスの変更後も安定したコレクターホスト名を使用してください。通常のTCP/TLS転送よりも強力な配信保証が必要な場合は、rsyslogのドキュメントで、確認応答配信用に設計された代替手段としてRELPが挙げられています。これは、トランスポート暗号化とは別の設計上の選択肢です。
適切なデプロイメントは、次の4つの条件を満たす必要があります。rsyslog構成の検証が正常に完了すること、サービスが再起動後もアクティブな状態を維持すること、コレクターが固有のテストイベントを受信すること、そして送信者ログにTLS信頼エラーやピア名エラーが表示されないこと。これらのチェックに合格したら、証明書の有効期限とリモートコレクターの依存関係を文書化し、今後のメンテナンスで集中ログ記録が予期せず破損しないようにします。
rsyslog、TLS証明書、ピア名検証、キュー、検証、テスト機能を使用して、SLESシステムログをリモートのsyslogサーバーに安全に転送します。
YaSTを使用して、SSSD経由でSLES 15をActive Directoryに参加させます。DNSと時刻の設定、ドメインログインの構成、Kerberosの検証、SSSD、Winbind、およびrealmdの比較を行います。
Pardus Linux 上の RTL8821CE Wi-Fi の問題を解決するには、内蔵の rtw88 ドライバー、Realtek ファームウェア、rfkill、NetworkManager、および安全なフォールバックオプションを確認してください。
systemd-resolvedを使用して、Debian 12のDNS解決エラーを診断および修正します。これには、resolv.conf、NetworkManager、networkd、キャッシュ、および検証が含まれます。
Windows 11のバックアップ、ボリュームの縮小、UEFI USBからの起動、既存のEFIパーティションとリカバリパーティションの保護を行うことで、Windows 11の横にPardus 25.2をインストールできます。
SUSE Linux Enterprise Server で HTTP 500 エラーが発生し、Zypper の更新に失敗した場合に診断を行います。障害が発生しているリポジトリを特定し、プロキシと登録状況を確認してから、メタデータを安全に更新します。
いわゆるPardusパッケージマネージャー「PETA」とAPTを比較し、現在のPardusパッケージツールを明確にし、デスクトップでの使用または管理に適したインターフェースを選択する。
Ubuntuカーネルのアップデート後にNVIDIAドライバーの読み込みが停止する問題を解決するには、カーネルモジュール、セキュアブート、DKMS、ヘッダー、Nouveau、およびバージョンの不一致をチェックしてください。
レガシーBIOS、起動可能なUSBメモリ、安全なパーティション分割、および低スペックハードウェアのインストール後チェック機能を備えた、古い64ビットPCにPardus 23.4 XFCEをインストールします。
Gooroom OSが信頼済みブート、実行ファイルとOSの保護、ブラウザ制御をどのように多層的に構築しているか、そしてユーザーがサンドボックスに関して確認すべき事項について学びましょう。