SSLと証明書
OpenText Functional Testing LabはSSLを利用した安全な環境での作業や、必要に応じて証明書を適用することができます。このセクションでは、SSL接続の操作方法について説明します。安全なサイトにアクセスするためにデバイスに証明書をインストールする方法の詳細については、証明書が必要なテストサイトを参照してください。
サポートされているSSLプロトコル
サーバーおよびコネクターは、サーバーとコネクター、サポートされているOpenTextテストツール/Appium、およびブラウザー間のすべての通信に対して最新のSSL標準をサポートします。
- TLS v1.2
- TLS v1.1
- TLS v1.0
SSL接続
OpenText Functional Testing Labサーバーをインストールするときは、非セキュア (HTTP) 接続またはセキュア (SSL) 接続を選択できます。サーバーのインストール時にSSLオプションを選択すると、ローカルのOpenText Functional Testing Labマシンで自己署名SSL証明書が自動的に生成されます。または、認証局 (CA) から証明書をインポートすることもできます。詳しくは、認証局発行のSSL証明書を使用するを参照してください。
OpenText Core SDP / OpenText Core Functional Testing Labラボサーバーへの接続は安全であり、サーバーにはCA証明書がインストールされています。
Webブラウザーがサーバーによって提示された証明書を信頼するには、SSL証明書が認定された認証局 (CA) によって発行されている必要があります。自己署名証明書はデータを暗号化しますが、サーバー所有者の信頼できるIDは提供しません。デフォルトの自己署名証明書を使用する場合、SSLを介してOpenText Functional Testing Labサーバーに最初にアクセスしようとすると、ブラウザーに警告またはエラーが表示されます。この警告は、SSL証明書がCAではなくサーバーによって自己署名されたことを通知します。サーバーにアクセスするには、自己署名SSL証明書を信頼する必要があります。
サーバーがSSLオプションを使用してインストールされた場合、すべてのコネクターとテストツールマシンは安全な接続を介してサーバーに接続する必要があります。SSLを有効にするオプションを選択してコネクターをインストールすると、コネクターマシンに自己署名証明書が自動的に生成されます。ブラウザーから最初にコネクターにアクセスするとき、デバイスのリモートビューを開くと、警告が表示されます。コネクターのURLに移動し、自己署名SSL証明書を信頼します。または、認証局 (CA) から証明書をインポートすることもできます。詳しくは、認証局発行のSSL証明書を使用するを参照してください。コネクターのインストールの詳細については、WindowsマシンにコネクターをインストールするまたはLinuxマシンにコネクターをインストールするを参照してください。
サーバーへの接続を非セキュアからセキュア (またはその逆) に再構成したり、サーバーのアドレスまたはポートを変更したりすることもできます。詳細については、サーバーの再構成を参照してください。
注: サーバー上の証明書を変更した場合、コネクターとサーバー間の信頼を再確立する必要がある場合があります。詳しくは、認証局発行のSSL証明書を使用するを参照してください。
認証局発行のSSL証明書を使用する
セキュリティを重視する環境では、サーバーとコネクターの自己署名証明書を、信頼できる認証局 (CA) によって発行された証明書に置き換えることをお勧めします。
OpenText Core Software Delivery Platform/OpenText Core Functional Testing Lab: サーバーへの接続は安全であり、サーバーにはCA証明書がインストールされています。コネクターには、自己署名証明書がインストールされています。このセクションで説明されている手順に従って、コネクターの自己署名証明書を置き換えます。
認証局から証明書ファイルを取得したら、信頼の完全なチェーンが含まれていることを確認してください。信頼のチェーンは、受信者が送信者とすべての中間証明書が信頼できることを確認できるようにする証明書のリストです。SSL証明書のインストールに関する問題を検出して解決するには、「SSLチェッカー」をインターネットで検索し、オンラインツールの1つを使用して問題を診断します。
ヒント: OpenText Functional Testing Labはマルチホスト展開です。特定のホストではなく、ワイルドカードを使用してサーバーとコネクターの両方のSSL証明書を生成することをお勧めします。たとえば、*.LAB01.TEST.ACME.COMであり、MACHINEA.LAB01.TEST.ACME.COMではありません。ワイルドカードを使用しない場合、特定のFQDNに対して生成された各証明書は、すべてのブラウザーで、およびOpenText Functional Testing LabにアクセスするすべてのOpenTextテストツールによって信頼される必要があります。
SSL証明書が個別のキーファイルと証明書ファイルに分割されている場合は、それらを1つのPFXファイルに結合します。
次の例は、証明書とキーを組み合わせる方法を示しています。証明書が保存されているのと同じマシンで、以下のコマンドを実行します。
- 次のコマンドを使用して、OpenSSLがマシンにインストールされていることを確認します。
Linux:
ターミナルウィンドウで次のように入力して、マシンのOpenSSLの詳細を表示します。rpm -qa | grep -i openssl (rpm)
dpkg -l | grep -i openssl (deb)Windows:
コマンドラインウィンドウで、次のように入力します。コードをコピーするopenssl version –a
OpenSSLがインストールされている場合は、日付やバージョン番号などのOpenSSL情報が表示されます。それ以外の場合は、OpenSSLの最新バージョンをダウンロードしてインストールします。
- 次のコマンドを実行して、キーファイルと証明書ファイルを1つのPFX証明書に変換します。 コードをコピーする
openssl pkcs12 -export -out domain.name.pfx -inkey domain.name.key -in domain.name.crt -descert
- ターミナルウィンドウで、ディレクトリをサーバー/コネクターのセキュリティディレクトリに変更します。
<OpenText Functional Testing Labサーバーインストールディレクトリへのパス>/server/Security
<OpenText Functional Testing Labコネクターインストールディレクトリへのパス>/connector/Security
./importCA.sh
と入力して、認証された証明書をサーバーにインポートします。-
現在のキーストアのパスワード (デフォルト: password) とCAからのパスワードを入力します。このパスワードは、PFXファイルの作成時に生成されます。CAパスワードが新しいキーストアパスワードになります。後でアクセスできるように、パスワードを安全な場所に保管してください。
- スクリプトは、プライベート証明書をkeyStoreHpmcに追加し、公開証明書をtrustStoreHpmcに追加します。
- サーバー/コネクターを再起動します。
- Webブラウザーを使用して、サーバー/コネクターアドレスにナビゲートします。
https://<OpenText Functional Testing Labサーバー/コネクターのIPアドレス>:<ポート>
- 正しいCA証明書がブラウザーに表示されていることを確認します。
- サーバー/コネクターのセキュリティディレクトリに移動します。
<OpenText Functional Testing Labサーバーインストールフォルダーへのパス>\server\Security
<OpenText Functional Testing Labコネクターインストールフォルダーへのパス>\Connector\Security
importCA.bat
と入力して、認証された証明書をサーバーにインポートします。バッチファイルを実行するには、管理者権限が必要です。- 現在のキーストアのパスワード (デフォルト: password) とCAからのパスワードを入力します。このパスワードは、PFXファイルの作成時に生成されます。CAパスワードは、新しいキーストアパスワードになります。後でアクセスできるように、パスワードを安全な場所に保管してください。
-
スクリプトは、プライベート証明書をkeyStoreHpmcに追加し、公開証明書をtrustStoreHpmcに追加します。
- スタートメニューからサービス/コネクターを再起動します。
-
Webブラウザーを使用して、サーバー/コネクターアドレスにナビゲートします。
https://<OpenText Functional Testing Labサーバー/コネクターのIPアドレス>:<ポート>
-
正しいCA証明書がブラウザーに表示されていることを確認します。
importCAスクリプトの実行時に発生するレガシー暗号に関連するエラーの解決
importCAスクリプトを実行すると、次のエラーが発生する場合があります: “40F7521FC47F0000:error:0308010C:digital envelope routines:inner_evp_generic_fetch:unsupported:../crypto/evp/evp_fetch.c:349:Global default library context, Algorithm (RC2-40-CBC : 0), Properties ()”
このエラーは、古いOpenSSLバージョンの暗号アルゴリズムを使用する .p12または .pfxファイルを新しいバージョンにインポートしようとしたときに発生します。
この問題を回避するには、pfxファイルを再暗号化します。
pfxファイルを更新するには:
注: OpenText Functional Testing Labサーバー/コネクターに含まれるopensslを使用してWindowsでこれらのコマンドを実行する場合は、opensslモジュールパスを含むOPENSSL_MODULES環境変数を作成します。<OpenText Functional Testing Labホームディレクトリ>\openssl\lib\ossl-modules
例: set OPENSSL_MODULES=C:\Program Files\Functional Testing Lab for Mobile and Web Server Server\server\openssl\lib\ossl-modules
-
古い暗号を処理するために、レガシーモードを使用して元の .p12/.pfxファイルを復号化します。
コードのコピーopenssl pkcs12 -legacy -in Certificate.pfx -nodes -out cert-decrypted.tmp
-
新しいOpenSSLバージョンを使用して、復号化されたファイルを新しい .p12/.pfxファイルに再暗号化します。
コードのコピーopenssl pkcs12 -in cert-decrypted.tmp -export -out NewCertificate.pfx
-
一時的に復号化されたファイルを削除してクリーンアップします。
Windows:
コードのコピーdel cert-decrypted.tmp
Linux:
コードのコピーrm cert-decrypted.tmp
このセクションは、OpenText Core SDPおよびOpenText Core Functional Testing Labには関連していません。
コネクターがOpenText Functional Testing Labサーバーに接続するクライアントとして機能する場合、サーバー上の証明書に対して、クライアント上に信頼が存在する必要があります。この信頼は、コネクターのインストール中に最初に確立されます。サーバー上の自己署名証明書をCAが発行した証明書に置き換える場合は、信頼を再確立する必要があります。
CAがVerisignなどの一般的なものである場合、CAはコネクターのトラストストアにすでに存在し、コネクターはサーバー証明書を信頼します。そうでない場合、たとえばCAがプライベートの場合、CAはまだコネクターのトラストストアにありません。コネクターがサーバー証明書を信頼するには、CA証明書をトラストストアにインポートする必要があります。ラボサーバーで非共通CAを使用する場合に信頼を確立するには、サーバー証明書自体ではなく、サーバー証明書を発行した認証局 (CA) の公開証明書をインポートする必要があります。公開証明書をインポートするには、SSL証明書をインポートするにはを参照してください。
この証明書をインポートすると、クライアントとこのCAによって発行された証明書との間に信頼が確立されます。この信頼が正しく確立されていない場合、SSLハンドシェイクが失敗し、エラーメッセージが発行されます。
セキュアLDAP用のラボの設定
OpenText Functional Testing LabをセキュアLDAP (SSL) で使用するには、セキュアLDAPを使用するを参照してください。
新しい証明書の生成
このセクションは、OpenText Core SDPおよびOpenText Core Functional Testing Labには関連していません。
次の場合は、多くの場合、新しい自己署名証明書を生成する必要があります。
- CA証明書を使用していて、自己署名証明書の使用に戻したい
- 3年間有効な自己署名証明書の有効期限が切れた。
次のように、セキュリティフォルダーのスクリプトを使用して、サーバーの新しい証明書を生成します。
- OpenText Functional Testing Labユーザーとしてログインし、ディレクトリを以下に変更します。
<OpenText Functional Testing Labサーバーインストールディレクトリへのパス>/server/Security
- 次のコマンドを実行して、サーバー上に新しい自己署名証明書を生成します。
./generateSelfSignCertificate.sh
- 必要な資格情報を入力します。スクリプトは、プライベート証明書をkeyStoreHpmcに追加し、公開証明書をtrustStoreHpmcに追加します。
- ラボサービスを再起動します。
service dl restart
注: IPまたはFQDNが使用できない場合、サーバーへの接続は失敗するため、証明書を再生成する必要があります。証明書を再生成した後、OpenText Functional Testing Labサーバーに接続するコネクターの構成も変更する必要があります。詳しくは、コネクターを変更する (Windows)、コネクターの構成を変更する (Linux)、またはコネクターを再構成する (Mac)を参照してください。
- サーバーマシンで、次の場所に移動します。
<OpenText Functional Testing Labサーバーインストールへのパス>\server\Security
- 次のバッチファイルを実行して、サーバー上に新しい自己署名証明書を生成します。
generateSelfSignCertificate.bat
-
必要な資格情報を入力します。
- スクリプトは、プライベート証明書をkeyStoreHpmcに追加し、公開証明書をtrustStoreHpmcに追加します。
- スタートメニューから、または
<OpenText Functional Testing Labサーバーインストールへのパス>\scripts\
に移動してrestart.bat
を実行することにより、ラボサービスを再起動します。
注: IPまたはFQDNが使用できない場合、サーバーへの接続は失敗するため、証明書を再生成する必要があります。証明書を再生成した後、OpenText Functional Testing Labサーバーに接続するコネクターの構成も変更する必要があります。詳しくは、コネクターを変更する (Windows)、コネクターの構成を変更する (Linux)、またはコネクターを再構成する (Mac)を参照してください。
その他の参照項目: