鍵ファイルからのパスフレーズの除去
OpenSSLがインストールされたLinuxマシンを使うなら、パスフレーズを除去できます。
- オリジナルの鍵ファイルの名前を変えてく� さい。
$ mv yourdomain.key yourdomain.key.orig
- パスフレーズなしで新しい鍵を生成してく� さい。
$ openssl rsa -in yourdomain.key.orig -out yourdomain.key
このコマンドを実行すると、鍵のパスフレーズを入力するようプロンプトが表示されます。
OpenSSL の詳細については、OpenSSL のドキュメントを参照してく� さい。
TLS 証明書または TLS キーを PEM 形式に変換する
OpenSSL をインストールしている� �合、openssl
コマンドを使ってキーを PEM 形式に変換できます。 たとえば鍵を DER フォーマットから PEM フォーマットに変換できます。
$ openssl rsa -in yourdomain.der -inform DER -out yourdomain.key -outform PEM
あるいは SSL Converter ツールを使って証明書を PEM フォーマットに変換することもできます。 詳細については、SSL Converter ツールのドキュメントを参照してく� さい。
鍵のアップロード後の反応のない環境
TLS キーのアップロード後に が応答しない� �合は、GitHub Enterprise サポートに連絡して、TLS 証明書のコピーを含む具体的な詳細を伝えてく� さい。 秘密キーが 含まれていない ことを確認します。
証明書の検証エラー
Web ブラウザーやコマンドラインの Git などのクライアントでは、TLS 証明書の有効性を検証できないと、エラー メッセージが表示されます。 これはしばしば自己署名証明書の� �合や、クライアントが認識しない中間ルート証明書から発行された "チェーンドルート" 証明書の� �合に生じます。
証明書認証局 (CA) によって署名された証明書を使っている� �合は、GitHub Enterprise Server にアップロードする証明書ファイルには CA のルート証明を持つ証明書チェーンが含まれていなければなりません。 そのようなファイルを作成するには、証明書チェーン全体 (「証明書バンドル」とも呼ばれます) を証明書の終わりにつなげ、プリンシパル証明書の先� �にホスト名が来るようにしてく� さい。 ほとんどのシステ� では、以下のようなコマンドでこの処理を行えます:
$ cat yourdomain.com.crt bundle-certificates.crt > yourdomain.combined.crt
証明機関または TLS ベンダーから証明書バンドル (bundle-certificates.crt
など) をダウンロードできるはずです。
自己署名もしくは信� �されない証明書認証者(CA)ルート証明書のインストール
GitHub Enterprise Server アプライアンスが、自己署名もしくは信� �されない証明書を使うネットワーク上の他のマシンとやりとりするのであれば、それらのシステ� に HTTPS でアクセスできるようにするために、署名をした CA のルート証明書をシステ� 全体の証明書ストアにインポートしなければなりません。
- CA のルート証明書をローカルの証明書認証局から取得し、それが PEM フォーマットになっていることを確認してく� さい。
- そのファイルを GitHub Enterprise Server アプライアンスにポート 122 の SSH 経由で "admin" ユーザとしてコピーしてく� さい。
$ scp -P 122 rootCA.crt admin@HOSTNAME:/home/admin
- GitHub Enterprise Server の管理シェルにポート 122 の SSH 経由で "admin" ユーザとして接続します。
$ ssh -p 122 admin@HOSTNAME
- 証明書をシステ� 全体の証明書ストアにインポートします。
$ ghe-ssl-ca-certificate-install -c rootCA.crt
TLS 証明書の更新
ghe-ssl-certificate-setup
コマンド ライン ユーティリティを使用して、 の新しい自己署名証明書を生成したり、既存の TLS 証明書を更新したりできます。 詳細については、「コマンド ライン ユーティリティ」を参照してく� さい。