Webサーバーの数は決まっています。各Webサーバーは会社を表し、会社のユーザーは割り当てられたWebサーバーと通信します。私は、データベースを分散化するためにこの設定をしています。そのため、1つのWebサーバーがハッキングされた場合、ハッカーが取得するデータはごくわずかです。私のクライアントは、単一のWebサーバー上の1つのデータベースに情報をアップロードすることを望んでいません。 WebサーバーはDjango webframework for pythonを実行します。ユーザーとWebサーバー間の標準の通信プロトコルとして一方向SSLを考えています。これは、最も論理的な選択肢のようです。ユーザーのために会社のウェブサーバーを識別する良い方法。
また、データを交換するためにWebサーバー間の通信も必要です。ここでは、双方向SSLプロトコルについて考えています。 python 3 sslモジュールを1つのWebサーバーから使用してDjangoと別のWebサーバーで通信します。sslモジュールはクライアント証明書を提供します。次にDjangoは他のWebサーバー上のサーバーとして機能し、クライアント証明書を受け取ります。Djangoに次のモジュールを使用して、認証にクライアント証明書を使用します: https://github.com/kimvais/Django-ssl-client-auth 。
このようにして、相互にWebサーバーを認証する双方向SSL実装を用意しています。
Webサーバーは相互に信頼していないため、VPNは良い解決策ではないと思います。そのため、OpenVPNやIPSecは使いたくありません。
双方向SSLは良い方法ですか、それともIPSecなどの別の方法を使用する必要がありますか?
これは良い計画のように思えます。考慮すべき点は次のとおりです。
順調に進んでいるようですね。