Serverless Operations, inc

>_cd /blog/id_4j7amkb71

title

Amazon Lightsail OpenClaw インスタンスで AWS CLI を使う

https://serverless.co.jp/blog/v0dz9baxe/

今日は前回に引き続き Amazon Lightsail Openclaw インスタンスを試していきます。

OpenClawをAWS上で起動させるのであれば、どうせならAWS CLIを使ってAWSをいろいろ操作したいところです。しかしデフォルトではAWS CLIがインストールされていないため設定を行う必要があります。

OpenclawはLightsailの中でコンテナとして起動しています。コンテナ内部からLightsailにインストールしたAWS CLIを操作することはそのままでは行えないため権限昇格を行う必要があります。そして前回のブログの手順でLightsailインスタンスにアタッチされているIAM Instance RoleにBedrockの呼び出し権限を付与しましたが、追加でAWSの様々なリソースを操作する権限を付与します。

さっそくやってみる

Openclawの初期設定

https://serverless.co.jp/blog/v0dz9baxe/

まずは前回の記事の内容を終わらせてChatが行えるようにします。

最後のStepでCloudshellからスクリプトを実行しLightsailにアタッチされているIAM Instance Roleに権限を付与しますが、いかが表示されますので手元にメモしておきます。

Role ARN: arn:aws:iam::917561075114:role/LightsailRoleFor-i-0284deddddf9b5fb3

後程AWS CLIがこの権限で動作することになりますので、ポリシーを追加します。

Chatが成功すればこのステップは完了です。

AWS CLI のインストール

Lightsailのターミナルで以下を実行しAWS CLIをインストールします。

curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o http://awscliv2.zip unzip http://awscliv2.zip && sudo ./aws/install

Openclaw コンテナの権限昇格

openclaw config set tools.elevated.allowFrom.webchat '["*"]' 
openclaw config set tools.elevated.allowFrom.exec-event '["*"]' 
openclaw gateway install 
openclaw gateway start

これらのコマンドは、OpenClawがWebチャットや外部イベントから高権限なツール(シェルコマンドの実行など)を呼び出せるようにするための設定です。

openclaw config set tools.elevated.allowFrom.webchat '["*"]'

WebチャットのUIからelevated(昇格)権限を持つツールの呼び出しを許可するソースを設定します。["*"]はすべての送信元からの呼び出しを許可することを意味します。デフォルトでは安全のためWebチャットからの高権限ツール実行は制限されており、このコマンドでその制限を解除しています。

openclaw config set tools.elevated.allowFrom.exec-event '["*"]'

exec-eventはAPIやプログラムからOpenClawを呼び出す際のイベントトリガーです。上記と同様に["*"]を指定することで、あらゆる送信元からのイベント経由での高権限ツール実行を許可します。これにより外部システムやスクリプトからOpenClawを介してシェルコマンドを実行できるようになります。

openclaw gateway install

OpenClawのゲートウェイをシステムに登録するコマンドです。ゲートウェイはWebチャットや外部リクエストを受け付けてOpenClawのエージェントに橋渡しする役割を担います。このコマンドはサービスとしての登録やシステム起動時の自動起動設定などを行います。

Gatewayはelevated権限のツールを外部から呼び出すための追加のプロセス・サービスとして別途動作します。elevated権限の設定を変更した後にgatewayを再インストール・再起動することで、新しい設定(allowFromの変更)をゲートウェイに反映させる必要があります。

openclaw gateway start

インストールしたゲートウェイを実際に起動するコマンドです。このコマンドを実行することでOpenClawがリクエストを受け付けられる状態になり、WebチャットからAWS CLIなどの外部コマンドを実行できるようになります。

IAM Instance Role へ必要権限の付与

AWS CLI は IAM Instance Role に権限を自動で読み取り動作します。このためすでに付与されているBedrock呼び出し権限に加えて操作したい必要権限を付与します。

例えば請求情報を管理したいなら以下の権限を付与します。

テスト

では実際にAWSの請求をChatから確認してみます。

途中何度か実行してよいか確認ダイアログが出ますので `Allow` をクリックします。

無事実行できました。

Written by
編集部

亀田 治伸

Kameda Harunobu

  • Facebook->
  • X->
  • GitHub->

Share

Facebook->X->
Back
to list
<-