04-10-2019 12:02 PM
ここ最近、SSL 証明書のインストール方法、Alteryx Server で SSL 証明書を使用するための設定方法など、SSL 証明書に関する質問を複数いただいています。Alteryx Server インストール/設定ガイドに Alteryx Server にSSLを有効にする方法を掲載していますが、証明書の取得や、取得した証明書を Alteryx Server で使用できるようインストールする方法については掲載されていませんでした。
Alteryx Server で使えるように SSL 証明書を取得するために利用できるツールや手段は複数あります。 この記事では、OpenSSL を使用した証明機関(CA)に送信する証明書署名要求(CSR)の作成、自己署名証明書の生成、証明書のインストール、証明書を使用するために Alteryx Server を設定する方法を取り上げています。
注記:ご使用中のサーバーに OpenSSL がインストールされていない場合、Win32用またはWin64用のプリコンパイル版のバイナリをこちらからダウンロードできます。https://slproweb.com/products/Win32OpenSSL.html Alteryx は OpenSSL の開発とメンテナンスに関与していないこと、Alteryx は OpenSSL プロジェクトもしくはこのプリコンパイル版バイナリのプロバイダと提携関係が一切ないことをご留意ください。したがって、OpenSSL の実装はご自身が使いやすいようにお使いください。
OpenSSL で証明書署名要求を作成する:
CSR を生成するには、サーバーで管理者としてコマンドプロンプトを開き、OpenSSL.exe と設定ファイルが格納されているディレクトリに移動します。そこで以下のコマンドを実行します。
openssl.exe req -config openssl.cfg -out ServerName.csr -new -newkey rsa:2048 -nodes -keyout ServerName.key
お客様の組織とサーバーに関して複数の質問に回答するプロンプトが表示されます。参考のために参照用スクリーンショットを示していますが、ご自身の組織とサーバーの情報に基づいて回答してください。
このコマンドにより、同じディレクトリに2つのファイル(拡張子は.csrと.key)が作成されます。この2つのファイルは証明書を作成するために証明機関に送信するときに必要になります。証明機関は社内証明機関でも、Verisign、GeoTrust、DigiCert、Entrust、StartComといった公共の証明機関でも構いません。証明機関からは、署名付き証明書(.crt、.cer、.pem、または、.pfxファイル)が返送されます。
OpenSSL で自己署名証明書を作成する:
自己署名証明書の生成にも OpenSSL を使用できます。これはプロダクション環境では推奨されませんが、おそらく自己署名証明書を作成したい理由は多数あると思います。開発環境やラボ環境、また公共の証明機関から証明書を購入する前に機能確認のテストを行いたい場合といった理由が考えられます。理由を問わず、以下の手順で行うことができます。
openssl.exe req -config openssl.cfg -x509 -sha256 -nodes -days 365 -newkey rsa:2048 -keyout ServerName.key -out ServerName.crt openssl.exe pkcs12 -export -out ServerName.pfx -inkey ServerName.key -in ServerName.crt
1つ目のコマンドは、自己署名証明書(.crt file)と秘密キー(.key file)を生成します。2つ目のコマンドは、生成された証明書とキーから、証明書とキーファイルを組み合わせた.pfx形式のファイルを作成します。CSR を生成する場合も、このときと同じあるいは類似の質問への回答を求められることをご留意ください。以下のスクリーンショットを参照してください。
注記:先に述べたように、当社ではプロダクション環境では自己署名証明書の使用を推奨いたしません。
証明書をインストールする:
証明機関から自己署名証明書を受け取る、または自己署名証明書を生成したら、それをインストールします。証明書のインストールには、Microsoft Management Console(MMC)を開いて、以下の手順で証明書スナップインにアクセスします。
次に、実際に証明書をインポートします。これを行うには、以下の手順を実行します:
証明書のインポートウィザードが開きます。
自己署名証明書、または証明機関が発行した秘密キーを含む証明書を使用している場合、パスワード/フレーズを入力します。それ以外の場合は、このステップはインポートウィザードでは省略されます。
次の画面で、証明書を配置する場所を確認します。証明書ストアは既に「個人」に設定されているはずです。
自己署名証明書をインストールしている場合、ローカルサーバーを信頼された機関として確立するためにこれらのステップを繰り返して行う必要があります。これを行うには、上記と同じステップに従って、証明書のインストールをもう一度行います。今回を除いては、個人ストアではなく、信頼するルート証明機関ストアに証明書をインストールします。これを行うには、信頼するルート証明書機関を展開し、証明書を右クリックし、[すべてのタスク] > [インポート] を選択するか、インポートウィザードの最後で証明書ストアを変更します。
Alteryx Server で証明書を使用するための設定:
この時点で、Alteryx Server インストール/設定ガイドの詳細インストラクションに従って、設定を完了することができます。あるいは(また完了確認のため)、以下の略式のインストラクションを続けて行います。
まず、上記でインストールした証明書用の証明書の拇印を取得する必要があります。インストールした証明書を右クリックして、[MMC] > [証明書] > [個人] > [証明書] の順に進み、[開く] を選択します。インストールした証明書の証明書ダイアログが開きます。そこで、詳細タブを選択し、拇印フィールドを探します。値をコピーし、そこにあるスペースをすべて削除します(例:74d4ca722e2954cd225f9b4697d2fc7f6747194c)。
次に、証明書に http ポート 443をバインドします。これを行うには、再度、管理者としてコマンドプロンプトを開きます。以下のコマンドを実行し、certhash とキャプチャした拇印の値との置換を行ってください。
netsh http add sslcert ipport=0.0.0.0:443 certhash=74d4ca722e2954cd225f9b4697d2fc7f6747194c appid={eea9431a-a3d4-4c9b-9f9a-b83916c11c67}
このバインドが正しいか確認するには、以下のコマンドを実行します。
netsh http show sslcert
注記:期限切れもしくは期限が近い証明書を更新する場合、現在のバインド(netsh http delete sslcert ipport=0.0.0.0:443)を削除し、新しい証明書の拇印をキャプチャして上記のインストラクションで証明書を再度バインドする必要があります。
最後のステップとして、ギャラリーサービスに SSL の使用を設定します。これを行うには、Alteryx システム設定を開いて、ギャラリー > 一般 に到達するまで [次へ] をクリックします。基本アドレスセクションが表示されたら、SSL を有効にするボックスにチェックを入れます。そして [次へ]、[終了] または [完了] の適切な方をクリックして設定変更を適用し、Alteryx サービスを再起動します。
注記:URLは証明書が発行された名前に合わせる必要があります。したがって、証明書がサーバーの完全修飾ドメイン名(例 hostname.domain.tld)に発行されたならば、こちら(https://hostname.domain.tld/gallery/)を使用して、お客様の URL をこれに合わせる必要があります。証明書が単純にホストネームに発行された場合、こちら(https://hostname/gallery/)を使用します。URL が証明書に合致しないと、サービスは正常に起動しません。
該当するバージョン:Alteryx Server 10.0および10.1
クレジット: