さくらのクラウド Claude CodeでLet's EncryptのSSL証明書を取得してhttpsを設定する方法
前提条件
はじめに
本記事では、Claude Codeを使って日本語の指示だけでさくらのクラウドのサーバーに
Let's EncryptのSSL証明書を取得してhttpsを設定する手順を実機検証を交えて解説します。
動作環境
| 項目 | 説明 |
|---|---|
| 操作元サーバー | Rocky Linux 9.7(test-server) 1コア・1GB (Claude Codeを動かすサーバー) |
| 対象サーバー | Rocky Linux 9.7(test-server2) 1コア・1GB (Claude Codeで1コア・1GBで構築済み) |
| リージョン | tk1a(東京第1) |
ApacheとHTTP、パケットフィルタの設定
Apacheのインストール・パケットフィルタの設定、80番・443番の開放が
完了していることが前提です。詳細は以下の記事をご参照ください。
DNSの設定
対象サーバーのパブリックIPをドメインのAレコードに登録します。
Let's Encryptの証明書取得にはDNSが正しく設定されている必要があります。
| レコード | 値 |
|---|---|
| ホスト名 | www.d1j.jp |
| タイプ | A |
| 値 | サーバーのパブリックIP |
下記の内容を参考にClaude Codeをインストールしてください。
対象サーバーも作成してください。以下の内容を参考にしてください。
certbot SSL証明書を取得 https設定をする
Claude Code auto modeについて
| 項目 | 説明 |
|---|---|
| ⏵⏵ auto mode on (shift+tab to cycle) · ← for agents | CLAUDE.mdにSSH秘密鍵のClaude Code v2.1.195以降でauto modeが追加されました。起動時に以下のメッセージが表示されます。 auto modeが有効の場合はYesの確認なしで自動的にコマンドが実行されます。以前のバージョンでは多数のYes確認が必要でしたが、auto modeにより大幅にスムーズになりました。 |
下記のコマンドを実施してください。
| コマンド | 説明 |
|---|---|
| $ claude | claude codeを実行いたします。 |
| 「usacloudを使ってtest-server2にcertbotをインストールしてwww.d1j.jpのSSL証明書を取得してhttpsの設定をしてください。certbot --apacheで自動設定をお願いします。」 と入力してください。 | claude codeに指示をいたします。 サーバー名(ホスト名)を指定して指示をしてください。 ※TeraTerm、powershellの場合は貼り付けは「Shift + Insert」を使用してください。 |

「SSL証明書を取得 https設定」を完了いたしました。
(auto modeだっためYES確認ありませんでした。)

ブラウザーでドメイン名を入力して確認いたしましょう。
https://www.d1j.jp/と入力すると簡単に確認できます。

注意事項
| 項目 | 説明 |
|---|---|
| DNS設定 | 証明書取得前にDNSのAレコードを正しく設定すること。 |
| 80番・443番 | Let's Encryptの検証に80番と443番両方が必要。 |
| SSHユーザー | Rocky Linux 9.7 64bit版はrootユーザーでSSH接続。 |
| 自動更新 | certbot-renew.timerが有効化されていることを確認すること。 |
まとめ
・DNS設定とパケットフィルタ(80・443番)の開放が事前準備として必要。
・CLAUDE.mdにSSH設定を定義しておくことで指示がシンプルになる。
・certbot-renew.timerで90日ごとの証明書更新も自動化される。
・処理時間は約1分58秒。
以上で「さくらのクラウド Claude CodeでLet's EncryptのSSL証明書を取得してhttpsを設定する方法」を完了いたします。

