BIG-IP

【F5】BIG-IPのCLI設定方法【自己証明書の作成】

【F5】BIG-IPのCLI設定方法【自己証明書の作成】

bigipのCLIで自己証明書の作成方法をまとめていきます。
GUIで設定することもできるのですが、ぽちぽちするのが億劫なのでCLIで設定します。

設定方法は↓の通り、2つあります。
BIG-IPはLinuxベースでつくられているので、Opensslコマンドで作成することもできます。

  • 挙動はbigipのバージョンによって差異がありますので、その点は公式のドキュメントを参考にしてください
  • 設定内容は架空であるため、都度ご自身で読み替えてください

BIG-IPのコマンドで自己証明書を作成する場合

事前確認コマンド

tmsh list sys crypto key f5test.com_self-signed_2020.key
tmsh list sys crypto cert f5test.com_self-signed_2020.crt

自己証明書とその秘密鍵の設定を確認します。
事前確認では設定がされていないことを確認します。

設定コマンド

tmsh create sys crypto key f5test.com_self-signed_2020 key-size 2048 gen-certificate country JP city Tokyo state Tokyo organization 'Example, Inc.' ou 'network team' common-name *.test.com lifetime 365

「f5test.com_self-signed_2020」の名前で秘密鍵と証明書をそれぞれ作成するコマンドです。
「f5test.com_self-signed_2020.key」という秘密鍵を2048bitで作成しています。
また、「f5test.com_self-signed_2020.crt」という自己証明書を有効期限1年で作成しています。今回の例では、コモンネームは*.test.comで、test.comを含むドメイン名の証明書として設定します。

K15462: Managing SSL certificates for BIG-IP systems using tmsh

事後確認コマンド

tmsh list sys crypto key f5test.com_self-signed_2020.key
tmsh list sys crypto cert f5test.com_self-signed_2020.crt

自己証明書とその秘密鍵の設定を確認します。
事後確認では設定が正しいことを確認します。

Client SSL Profileを作成する

tmsh list ltm profile client-ssl test_ssl_profile

tmsh create ltm profile client-ssl test_ssl_profile cert-key-chain add { f5test.com_self-signed_2020 { cert f5test.com_self-signed_2020.crt key f5test.com_self-signed_2020.key } }

tmsh list ltm profile client-ssl test_ssl_profile

BIG-IPに作成した秘密鍵と自己証明書を紐付けて、client ssl profileを作成します。
あとはprofileをVirtual Serverに紐づけるだけですね!

ltm profile client-ssl | F5 TMSH Reference

設定の保存

tmsh save sys config

設定の同期

tmsh run cm config-sync to-group デバイスグループ名

冗長構成であれば、同期も忘れずに行う。

Opensslで自己証明書を作成する場合

Opensslで秘密鍵と自己証明書を作成する

find /config/ssl/ssl.key/f5test.com_self-signed_2020.key
find /config/ssl/ssl.crt/f5test.com_self-signed_2020.crt

openssl req -x509 -nodes -newkey rsa:2048 -keyout /config/ssl/ssl.key/f5test.com_self-signed_2020.key -out /config/ssl/ssl.crt/f5test.com_self-signed_2020.crt -days 365 
-subj "/C=JP/ST=Tokyo/L=Tokyo/O=Example, Inc./OU=network team/CN=*.test.com"


find /config/ssl/ssl.key/f5test.com_self-signed_2020.key
find /config/ssl/ssl.crt/f5test.com_self-signed_2020.crt

Opensslコマンドで秘密鍵を作成し、その秘密鍵で自己署名をして自己証明書を作成しています。

K14534: Creating SSL certificates and keys with OpenSSL (11.x – 14.x)

作成した秘密鍵をBIG-IPにインストールする

tmsh list /sys crypto key f5test.com_self-signed_2020.key

tmsh install /sys crypto key f5test.com_self-signed_2020.key from-local-file /config/ssl/ssl.key/f5test.com_self-signed_2020.key

tmsh list /sys crypto key f5test.com_self-signed_2020.key

Opensslコマンドで作成した秘密鍵をBIG-IPの/sys crypto key配下にインストールします。

K14534: Creating SSL certificates and keys with OpenSSL (11.x – 14.x)

作成した自己証明書をBIG-IPにインストールする

tmsh list /sys crypto cert f5test.com_self-signed_2020.crt

tmsh install /sys crypto cert f5test.com_self-signed_2020.crt from-local-file /config/ssl/ssl.crt/f5test.com_self-signed_2020.crt

tmsh list /sys crypto cert f5test.com_self-signed_2020.crt

Opensslコマンドで作成した自己証明書をBIG-IPの/sys crypto cert配下にインストールします。

Client SSL Profileを作成する

tmsh list ltm profile client-ssl test_ssl_profile

tmsh create ltm profile client-ssl test_ssl_profile cert-key-chain add { f5test.com_self-signed_2020 { cert f5test.com_self-signed_2020.crt key f5test.com_self-signed_2020.key } }

tmsh list ltm profile client-ssl test_ssl_profile

BIG-IPにインストールした秘密鍵と自己証明書を紐付けて、client ssl profileを作成します。
あとはprofileをVirtual Serverに紐づけるだけですね!

ltm profile client-ssl | F5 TMSH Reference

設定の保存

tmsh save sys config

設定の同期

tmsh run cm config-sync to-group デバイスグループ名

冗長構成であれば、同期も忘れずに行う。

BIG-IPで自己証明書を削除する場合

テスト後に不要になった自己証明書を削除する手順を↓で説明しておりますので参考にどうぞ!!

【F5】BIG-IPのCLI設定方法【自己証明書の削除】F5 BIG-IPのCLIコマンドでの設定方法をまとめています。bigipのCLIで自己証明書を削除する方法は、ディレクトリ名「sys crypto cert」、「sys crypto key」で削除すれば完了となります。作業前には必ずSSL ProfileがVirtual Serverに紐づいていないことから確認しましょう。...

まとめ

最後にまとめになります!
  • bigipで自己証明書を発行する方法は2種類ある。bigipのコマンドで作成する、または、Opensshのコマンドで作成する
  • Opensshで作成する場合、ファイルからbigipにインストールする手順が必要になる
  • Linuxに慣れている方にとってはOpensshで設定する方法のがなじみやすいはず!

以上!

ABOUT ME
のこのこ
26歳フリーランスのネットワークエンジニア 文系第2新卒からSESに入社、2年目にフリーランスに転職 有益な資格試験の情報を主に提供していきます! ●保持資格 CCNP,LPIC level3,F5101,TOEIC820,AWSクラウドプラクティショナー ●目指す資格 ネットワークスペシャリスト,F5 201,AWSアソシエイトなど