BIGIP(F5) Memo No.2 証明書のインポート

BIGIPのGUIを使わずに、証明書を更新する手順の紹介です。

※GUIを使った方が簡単ですが、GUIでアクセスができないような環境向けになります。

BIG-IP(v11以降)での証明書更新方法

リクエストの発行

1.BIG-IPマシンにAdminユーザでログインします

 

2.以下のコマンドで証明書ファイルとキーファイルを把握します

 

# cd /config/filestore/files_d/Common_d

 

# ls certificate_d/* certificate_key_d/* | grep [定義名(sample)] | awk -F ':' '{print $3}'

 

3.以下のコマンドで証明書リクエストを発行します。

 

# cd /config/filestore/files_d/Common_d

 

# openssl x509 -x509toreq -in certificate_d/[証明書ファイル名] -signkey certificate_key_d/[Keyファイル名] -out [出力ファイル]

 

リクエスト作成コマンドサンプル

 

[root@mybigip:Active:In Sync] Common_d # openssl x509 -x509toreq -in certificate_d/\:Common\:test.crt_196799_2 -signkey certificate_key_d/:Common:test.key_196796_3 -out /shared/tmp/test.csr

 

Getting request Private Key

 

Generating certificate request

 

[root@mybigip:Active:In Sync] Common_d # ls -ltr /shared/tmp/test.csr

 

-rw------- 1 root root 3612 Jul 13 14:22 /shared/tmp/test.csr

 

[root@mybigip:Active:In Sync] Common_d #

 

証明書の更新手順

1.scpBIG-IPマシンの/shared/tmpcrt(証明書)を配置します

 

2.BIG-IPマシンにAdminユーザでログインします

 

3.以下のコマンドで現状の更新数を把握します

 

# cd /config/filestore/files_d/Common_d

 

# ls certificate_d/* certificate_key_d/* | grep [定義名(sample)] | awk -F ':' '{print $3}'

 

4.以下のコマンドで更新します。

 

# tmsh modify sys file ssl-cert [定義名(sample.crt)] source-path file:[証明書(/shared/tmp/sample.crt)]

 

5.更新した内容をコンフィグファイルに反映します。この操作をやっておかないとリブート後に定義が失われます。

 

# tmsh save sys config

 

6.更新数がインクリメントされたことを確認します。

 

# cd /config/filestore/files_d/Common_d

 

# ls certificate_d/* certificate_key_d/* | grep [定義名(sample)] | awk -F ':' '{print $3}'

 

 

更新コマンドサンプル

 

[root@mybigip:Active: In Sync] tmp # tmsh modify sys file ssl-cert test.crt source-path file:/shared/tmp/test.cer

 

[root@mybigip:Active:Changes Pending] tmp # tmsh save sys config

 

Saving running configuration...

 

  /config/bigip.conf

 

  /config/bigip_base.conf

 

  /config/bigip_user.conf

 

[root@mybigip:Active:Changes Pending] tmp # tmsh run cm config-sync to-group device-group-1

 

[root@mybigip:Active:Changes Pending] tmp #

 

[root@mybigip:Active:Not All Devices Synced] tmp #

 

[root@mybigip:Active:In Sync] tmp #

 

※今回は紹介しませんが、tmsh installコマンドを使うと、新規の証明書インポートも更新も同じコマンドで可能です。