コンテンツにスキップ

Sophos Firewall でローカル署名した証明書を使用して Syslog サーバーに安全に接続する方法

Sophos Firewall でローカル署名した証明書を設定し、それを使用して Syslog サーバーに TLS 暗号化したログを送信することができます。

はじめに

前提条件:

  • Syslog サーバーとの TLS 接続を確立するには、Syslog サーバーで TLS 暗号化をオンにする必要があります。
  • Sophos Firewall でローカル署名した証明書を生成するには、デフォルトの CA の ID の属性および詳細を指定する必要があります。

この例では、以下を使用します。

  • Syslog サーバー: syslog-ng
  • クライアント: Sophos Firewall
  • Sophos Firewall でローカル署名した証明書

設定手順は以下のとおりです。

  • Sophos Firewall でローカル署名した証明書を設定します。
  • ルート証明書、ユーザー証明書、および鍵を Syslog サーバーにコピーします。
  • Sophos Firewall で、Syslog サーバーを追加します。
  • Syslog サーバーに送信するログのモジュールを選択します。

ローカル署名した証明書を設定する

Sophos Firewall でローカル署名した証明書を設定し、ファイルをダウンロードします。

  1. 証明書 > 証明機関」に移動し、「既定」(デフォルトの CA) をクリックします。

    ID の属性と詳細が正しいことを確認します。

  2. 証明書 >証明書」の順に選択し、「追加」を選択します。

  3. ローカル署名した証明書の生成」を選択します。

    次に例を示します。

    ローカル署名した証明書の生成を選択します

  4. 以下のように指定し、「保存」をクリックします。

    名前 説明
    鍵の暗号化 このオプションを選択します。
    パスフレーズ/PSK パスフレーズを入力し、確認のためにもう一度入力します。
    証明書 ID メール」を選択し、連絡先のメールアドレスを入力します。

    次に例を示します。

    証明書の詳細

  5. 一般名」に、Syslog サーバーのホスト名または IP アドレスを入力します。

    次に例を示します。

    証明書の ID の属性

  6. 作成した証明書の「ダウンロード」 ダウンロードボタン をクリックします。

    .tar.gz ファイルがダウンロードされます。

  7. ダウンロードしたファイルを、RootCertificate.pemUserCertificate.pemUserPrivateKey.key に展開します。

証明書と鍵を Syslog サーバーにコピーする

Sophos Firewall で生成したルート証明書、ユーザー証明書、および秘密鍵を、Syslog サーバーにコピーします。以下のディレクトリは例です。ご利用の Syslog サーバーのディレクトリを使用してください。

  1. Syslog サーバーに移動し、RootCertificate.pem/etc/syslog-ng/ca.d/ ディレクトリにコピーします。
  2. UserCertificate.pemUserPrivateKey.key/etc/syslog-ng/cert.d/ ディレクトリにコピーします。
  3. /etc/syslog-ng/ca.d/ ディレクトリに移動し、以下のコマンドを入力して、RootCertificate.pem に基づくハッシュを作成します。

    #openssl x509 -noout -hash -in RootCertificate.pem

    ルート証明書に含まれる識別名に基づき、英数字のハッシュが作成されます (例: 52412b66)。

  4. 上記のハッシュにサフィックス .0 を付与して以下のコマンドを実行し、RootCertificate.pem へのシンボリックリンクを作成します。

    #ln -s RootCertificate.pem 52412b66.0

  5. syslog-ng.conf ファイルを編集して、コピーした証明書 (UserCertificate.pem)、鍵 (UserPrivateKey.key)、およびルート証明書 (RootCertificate.pem) の場所を指定します。

    1. UserPrivateKey.keyUserCertificate.pem は、それぞれフルパスを指定します。
    2. CA のディレクトリ ca.d をフルパスで指定します。

    @version: 3.15
    
    @include "scl.conf"
    
    source s_src {
    
        network(ip(0.0.0.0) port(6514)
    
            transport("tls")
    
            tls( key-file("/etc/syslog-ng/cert.d/UserPrivateKey.key")
    
                 cert-file("/etc/syslog-ng/cert.d/UserCertificate.pem")
    
                 ca-dir("/etc/syslog-ng/ca.d")
    
                 peer_verify(required-trusted))
    
        ); };
    
    destination d_local {
    
            file("/var/log/messages");
    
            file("/var/log/messages-kv.log" template("$ISODATE $HOST $(format-welf --scope all-nv-pairs)\n") frac-digits(3));
    
    };
    
    log { source(s_src);
    
            destination(d_local);
    
    };
    
  6. syslog-ng サーバーを起動します。

Syslog サーバーの追加

Sophos Firewall に Syslog サーバーを追加し、サーバーのログ設定を指定します。

  1. システムサービス > ログ設定」に移動し、「追加」をクリックします。
  2. 設定を指定します。

    オプション 説明
    IP アドレス/ドメイン Syslog サーバーの IP アドレスまたはドメイン名。
    **ログの安全な転送** TLS を使用して syslog サーバーに送信されるログを暗号化します。
    ポート 6514
  3. 保存」をクリックします。

    次に例を示します。

    Syslog サーバーの追加

  4. システムサービス > ログ設定」に移動し、「ログ設定」までスクロールダウンします。「Syslog サーバー」で、送信するログを選択します。

    以下に例を示します:Syslog サーバーに送信するログを選択します