JenkinsサーバーでSSLを構成する方法
プロジェクト環境で実行されるSSLを有効にしてJenkinsを保護することは非常に重要です。 この記事では、JenkinsサーバーでSSLを構成するためのステップバイステップガイドを説明します。JenkinsサーバーでSSLを設定する手順は次のとおりです。SSL証明書を取得する
SSLを設定するには、JenkinsサーバーのIPを指す有効なドメインが必要です。 ドメインは、組織のインフラストラクチャに基づいて内部または外部にすることができます。
SSL証明書は、以下の方法で取得できます。ほとんどの場合、内部DNSを持つプライベート環境でJenkinsを使用し、それぞれの組織から内部SSL証明書を取得できます。OpenSSLを使用して自己署名SSL証明書を作成することもできます。 このブログに従って、Ssl証明書を生成して、OpenSSLを使用して自己署名証明書を作成します。また、有効なSSL証明書のlet’s encryptとしてサービスを使用することもできます。 しかし、これらの証明書は3ヶ月ごとに更新する必要があります。
ステップ2:SSLキーをPKCS12形式に変換する
注:既に証明書が
.p12
.pfx
形式である場合、この変換を行う必要はありません。以下のコマンドは、SSL証明書を中間PKCS12形式jenkins.p12
に変換します。 コマンドを実行する前に、次の証明書があることを確認してください。
- ca.crt
- サーバー。キー
- サーバー。crt
また、
jenkins.devopscube.com
コマンド内のyour-strong-password
を強力なパスワードに置き換えます。openssl pkcs12 -export -out jenkins.p12 \-passout 'pass:your-strong-password' -inkey server.key \-in server.crt -certfile ca.crt -name jenkins.devopscube.comステップ3: PKCS12をJKS形式に変換する
次のkeytoolコマンドを使用して、
jenkins.p12
ファイルをJKS形式に変換します。以下を自分の値に置き換えます。P>
-srcstorepass
–ステップ3で使用されるパスワード-deststorepass
–強力なパスワードに置き換えます。-srcalias
–ステップ2で使用されるエイリアス名-destalias
jenkins.jks
という名前のファイルが表示されるはずです。
ステップ4:JksをJenkinsパスに追加する
jenkins_keystore.jks
ファイルは、Jenkinsがアクセスできる特定の場所に保存する必要があフォルダを作成し、jenkins_keystore.jks
キーをその場所に移動しましょう。p>mkdir -p /etc/jenkinscp jenkins_keystore.jks /etc/jenkins/キーとフォルダの権限を変更します。ステップ5:SSLのJenkins構成を変更する
すべての主要なJenkins起動構成は、
/etc/sysconfig/jenkins
ファイルにあります。 すべてのSSLベースの構成はこのファイルに入ります。/p>ファイルを開きます
sudo vi /etc/sysconfig/jenkins以下に示すように、ファイル内の値を検索して置き換えます。注:
your-keystore-password
をステップ3で設定したキーストアパスワードに置き換えます
JENKINS_PORT="-1"JENKINS_HTTPS_PORT="8443"JENKINS_HTTPS_KEYSTORE="/etc/jenkins/jenkins.jks"JENKINS_HTTPS_KEYSTORE_PASSWORD="<your-keystore-password>"JENKINS_HTTPS_LISTEN_ADDRESS="0.0.0.0"
設定を保存し、Jenkinsを再起動します。
sudo systemctl restart jenkins
Jenkinsのステータスを確認します。P>
sudo systemctl status jenkins
ステップ6: これで、ポート8443でhttps経由でJenkinsにアクセスできるようになります
https://<jenkins-dns/ip>:8443
curlを使用してSSLを確認することもできます
curl -k https://<jenkins-dns/ip>:8443
curl -k https://<jenkins-dns/ip>:8443
curl -k https://<jenkins-dns/ip>:8443