ホームページ > システムチュートリアル > Linux > HTTPSを使用して、マルチサーバーセキュリティエンジンのインストールを保護します

HTTPSを使用して、マルチサーバーセキュリティエンジンのインストールを保護します

Jennifer Aniston
リリース: 2025-03-10 09:02:15
オリジナル
259 人が閲覧しました

Secure A Multi-Server Security Engine Installation With HTTPS

このチュートリアルの第2部では、マルチサーバーCrowdSecセキュリティエンジンの設定と保​​護方法について説明します。最初の部分では、複数のサーバーにCrowdSecセキュリティエンジンをセットアップする方法を説明します。そのうちの1つは親サーバーとして機能し、他の2つはアラートをフォワードします。

このセクションでは、以前のマルチサーバーセキュリティエンジンのインストールでのプレーンテキストHTTP通信によって引き起こされるセキュリティの問題を解決します。この問題を解決するには、暗号化されたチャネルを介してセキュリティエンジン間の通信を確立することをお勧めします。このソリューションにより、サーバー2またはサーバー3は、サーバー1のIDを信頼し、中間の攻撃を回避できます。

自己署名証明書を使用して

最初に証明書を作成する

、証明書を作成する必要があります。これは、単一の行コマンドに従うことで実現できます。 現在、セキュリティエンジンは、開始時に秘密鍵のパスワードを要求することはできません。したがって、セキュリティエンジンを起動またはリロードするたびに、秘密キーを手動で復号化するか、誘惑されていないキーを保存することを選択できます。いずれにせよ、パスワードを削除するには、次のコマンドを使用できます。

openssl req -x509 -newkey rsa:4096 -keyout encrypted-key.pem -out cert.pem -days 365 -addext "subjectAltName = IP:172.31.100.242"
ログイン後にコピー
ログイン後にコピー
その後、セキュリティエンジンが開始された後、暗号化されていないキーファイルを安全に削除できます。

openssl rsa -in encrypted-key.pem -out key.pem
ログイン後にコピー
セキュリティエンジンを構成して、サーバー1でセルフ署名証明書

を使用するには、生成された証明書を使用するようにセキュリティエンジンを構成する必要があります。以下に示すように、以下の

抜粋の

>>>>>>>> optionsは、生成された証明書ファイルに設定されています。 /etc/crowdec/config.yamlクライアントでは、両方のファイルで構成の変更が発生します。まず、api.servertls.cert_filetls.key_fileに設定して自己署名証明書を受け入れるように変更します。

また、これらの変更を反映するには、
api:
  server:
    log_level: info
    listen_uri: 10.0.0.1:8080
    profiles_path: /etc/crowdsec/profiles.yaml
    online_client: # Crowdsec API credentials (to push signals and receive bad 

    tls:
      cert_file: /etc/crowdsec/ssl/cert.pem
      key_file: /etc/crowdsec/ssl/key.pem
ログイン後にコピー
ファイルのHTTPをHTTPSに変更する必要があります。この小さな変更は、3つのサーバーすべて(サーバー1、サーバー2、サーバー3)で行う必要があります。

/etc/crowdec/config.yamlinsecure_skip_verify注:trueサーバー1がログプロセッサとしても使用されている場合は、このサーバーでこのLAPI構成も実行する必要があることを忘れないでください。

/etc/crowdsec/local_api_credentials.yaml

サイドノート:

明らかに、自己署名証明書を使用しても、LAPIサーバーの所有権に関する保証は提供されません。サービスを使用したサーバー(この設定でサーバー2またはサーバー3)は、中間の攻撃に対して依然として脆弱ですが、少なくともこの設定は暗号化された通信を提供します。これが、オプションが必要な理由です。

証明書権限が発行した証明書
url: https://10.0.0.1:8080/
login: <login>
password: <password></password></login>
ログイン後にコピー
Let's EncryptやAmazon ACMなどのサービスは、

またはローカルDNSサーバーに追加できる完全に認定されたドメイン名の証明書を発行することにより、問題を解決できます。その後、この指定された完全に適格なドメイン名をに入力できます。 InsecureSkipVerify

これは機能し、InsecureSkipVerifyオプションが設定されないようにします。 DNS構成が信頼されている限り、これにより、クライアントとサーバー間の通信が改ざんされないことが保証されますが、これはまだ回避策と見なされるべきです。

pki

を使用します

SSL公開キーインフラストラクチャ(PKI)の構成と管理のプロセスは、このチュートリアルの範囲内ではありませんが、公式OpenSSLドキュメントをチェックすることを強くお勧めします。このセキュリティエンジンのセットアップのニーズを満たすには、簡単なPKIソリューションで十分です。

OpenSSLのドキュメントによると、言及する価値のあるものがいくつかあります。

CrowdSec TLSシナリオで使用するには、CrowdSec LapiサーバーのIPに対応するトピックの代替名で証明書リクエストを発行する必要があります。これは、証明書リクエストのためにOpenSSLを呼び出すときにSAN環境変数を見つけることで実行できます(OpenSSL Simple PKIスキームのステップ3.3を参照)。

openssl req -x509 -newkey rsa:4096 -keyout encrypted-key.pem -out cert.pem -days 365 -addext "subjectAltName = IP:172.31.100.242"
ログイン後にコピー
ログイン後にコピー

CrowdSecセキュリティエンジンを開始する前に、ルート証明書の共通部分と署名された証明書(OpenSSL Simple PKIスキームのステップ4.5で作成されたバンドルされたファイル)をローカル証明書ストアに追加する必要があります。このセットアップでは、これはLAPIサーバーに接続するために必要です。これを行うには多くの方法があります。Golangソースコードは、予想される証明書の位置を指定するか、SystemDサービスファイルのSSL_CERT_FILE環境変数を使用して、セキュリティエンジンの開始時に証明書を探す場所を指定できます。

CrowdSecおよびTLS認証の手順を更新

この記事が最初に公開された後、セキュリティエンジンに新しい機能を追加しました。これにより、TLSの通信を保護するだけでなく、証明書を使用した認証も確保できます。公式ドキュメントでは、セキュリティエンジン間、またはセキュリティエンジンと修復コンポーネント間でTLS認証に証明書を使用する方法を示す良い例を見つけることができます。

結論

この記事では、さまざまなCrowdSecセキュリティエンジンのインストール間のコミュニケーションを保護する方法に焦点を当てています。考慮されるユースケースは、プライベートネットワークでのセキュリティエンジンのインストールですが、これはインターネット通信を備えたパブリックネットワークに展開することもできます。この場合、サードパーティの証明書は問題を簡単に解決できます。

必要に応じて、セキュリティエンジン間の安全なTLS通信を実現するための3つの異なる方法を提案します。自己署名証明書の使用、証明書当局が発行した証明書を使用し、SSL公開キーインフラストラクチャを使用します。

最初のソリューション(自己署名証明書を使用)は、認証なしで暗号化された通信を確保したい状況にのみ適しています。 2番目のソリューションは、ローカルDNS解像度を変更できる場合にのみ考慮することができます。 3番目のソリューションは最も複雑ですが、ほとんどのユースケースに適しており、セキュリティの問題が深刻な場合に最適な選択かもしれません。

このチュートリアルが役立つことを願っています。お読みいただきありがとうございます、お楽しみに!

質問やフィードバックがある場合は、不一致と談話コミュニティプラットフォームからお気軽にお問い合わせください。

以上がHTTPSを使用して、マルチサーバーセキュリティエンジンのインストールを保護しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート