目次
何をするか
Webサイトを運営していると避けて通れないのが「SSL証明書(https化)の有効期限切れ」問題です。
今回、私が管理しているサーバー(AWS/Bitnami環境)でLet’s EncryptのSSL証明書が期限切れになってしまい、サイトが警告表示(保護されていません)になってしまいました。
通常なら「SSHでサーバーに入って、更新コマンドを調べて、Apacheの設定ファイルを書き換えて、再起動して…」と非常に面倒な作業が必要です。
しかし今回は、最強のAIアシスタント「Antigravity」に、SSHのログイン情報だけを渡して「完全AI主導」でSSL証明書の更新と自動化の設定をやってもらいました!
手順(Antigravityによる全自動更新プロセス)
1. Antigravityに「サーバー情報」と「お願い」を伝える
私がAntigravityのチャット画面に入力したのは、基本的に以下の情報だけです。
- 「xxx.xxx.xxx.xxx のサーバーのSSL証明書が切れたから更新したい」
- 「SSH接続用の秘密鍵(key.pem)はパソコンのこのフォルダにあるよ」
たったこれだけです。
するとAntigravityは、「承知しました。それでは私のほうでサーバーにログインして現状を調査します」と宣言し、勝手に私のパソコンのターミナル(コマンドライン)を立ち上げて、自動でSSH接続を開始したのです。
2. AIによる環境調査と「Lego」の特定
サーバーに入ったAntigravityは、迷うことなくLinuxコマンド(uname や ls、systemctl など)を打ち込み、現在の環境を調査し始めました。
数秒後、Antigravityから「このサーバーはBitnami環境であること、そしてLet’s Encryptの更新には『Lego』という専用ツールが使われていることが分かりました」という報告が。私はただ画面を見ているだけです。
3. 証明書の再取得を「AI主導」で実行
環境を把握したAntigravityは、「それでは、Legoツールを使って新しい証明書を取得します。実行してよろしいでしょうか?」とImplementation Plan(実行計画)を提示してくれました。
私が「Approve(承認)」ボタンを押すと、Antigravityは次々とコマンドを打ち込みます。
|
1 2 3 |
# AIが自動で叩いたコマンドの一部 sudo /opt/bitnami/letsencrypt/lego --tls --email="hoge@example.com" --domains="example.com" --path="/opt/bitnami/letsencrypt" renew |
さらに、新しく取得した証明書をApache(Webサーバー)に適用するためのシンボリックリンクの張り替えまで、手際よくあっという間に完了させてしまいました。
4. Webサーバーの再起動と、今後の「自動更新(cron)」の設定まで
証明書の差し替えが終わると、Antigravityは自動でApacheを再起動し、「ブラウザでサイトを確認してみてください。新しい証明書が適用されているはずです!」と教えてくれました。
確認すると、見事に「保護された通信」が復活!!
また、
「今後また期限が切れないように、Cron(定期実行)で自動更新されるように設定しておきましょうか?」と、根本的な解決策まで自発的に提案・設定してくれたのです。
|
1 2 3 |
# AIが自動で設定したCronジョブ 0 0 1 * * sudo /opt/bitnami/letsencrypt/lego ...(略)... renew && sudo /opt/bitnami/ctlscript.sh restart apache |
まとめ
これまでのサーバー運用は、エラー画面とGoogle検索のにらめっこでした。
しかし、Antigravityを使えば「鍵を渡して目的を伝えるだけ」。
あとはAIが勝手にサーバーに入り込み、環境を調査し、最適なコマンドを打ち込んでミッションを完遂してくれます。
インフラエンジニアがいなくても、AIさえいればサーバーの保守・運用ができてしまう時代が来たことを肌で感じた体験でした。