1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【2026年01月版】AI時代の自己防衛、仮想環境でAIエージェントを安全に使う環境構築メモ【macOS + Ubuntu】

Last updated at Posted at 2026-01-27

はじめに

昨今、AI・AIエージェントといっしょにプログラミングをする流れになりました。気づけば、プログラミングの現場にはAIエージェントが当たり前のように入り込んできています。

でも、AIエージェントがどんどん高機能になるにつれて、ちょっと怖くなってきました。知らないうちに、

  • AWSのAPIキーをGitHubにアップロードされていて高額請求。。。
  • PC上の家族写真をアップロードされていた。。。

みたいな不安感が押し寄せてきます。

image.png

どんなに賢くても相棒のAIには安全管理が必要では?というわけで、AIエージェントを隔離して安全に作業できる環境を作ることにしました。VM(仮想マシン)でサンドボックスを組んで、AIとの適度なソーシャルディスタンスを確保する作戦です。

今回は、macOS上でのAIエージェントとの協業を想定しています。構成はこんな感じです。

ゴールは以下です。

  • 日本語入力環境のインストール
  • ブラウザのインストール
  • VSCodeのインストール
  • Cursorのインストール

この記事では、VMの実行環境に、Parallels 26 を利用しています。

VM実行環境のインストール

おすきなものをご用意下さい。

  • VirtualBox (無料)
  • VMWare Fusion (個人利用には無料)
  • Parallels Desktop
  • UTM (無料)

Ubuntu 24.04 Desktop のインストール

ISOをダウンロードして、インストール、または、VMのイメージを取得してインストールしてください。

image.png

Ubuntu 24.04 Desktopでのツールの準備

日本語入力環境の準備

sudo apt update
sudo apt install ibus-mozc 
ibus restart 
sudo apt install mozc-utils-gui

詳しくは、こちらを参考にしてください。

わたしは、shift + control + space で IMEの ON/OFF を設定しています。

ブラウザのインストール

Chrome

Chromium Browserをインストール

sudo apt update
sudo apt install chromium-browser

詳しくは、こちらを参考にしてください。

インストールしても起動しない場合は、後述のトラブルシューティングを参考にしてください。

Firefox

Ubuntu24.04 Desktop にはデフォルトで入ってます。

VSCodeのインストール

VSCode公式から、ダウンロードします。

ここでは、code_1.108.2-1769004889_arm64.deb がダウンロードできたとします。

sudo dpkg -i ./code_1.108.2-1769004889_arm64.deb

ターミナルからは、code で起動できます。

Cursorのインストール

Cursor公式から、ダウンロードします。

ARMを選択しましょう。

image.png

ここでは、cursor_2.4.21_arm64.deb がダウンロードできたとします。

以下のコマンドで起動します。

mv cursor_2.4.21_arm64.deb /tmp/
sudo apt install /tmp/cursor_2.4.21_arm64.deb

ターミナルからは、cursor で起動できます。

トラブルシューティング

Chromiumが起動しない

デスクトップでアイコンをクリックしても、Chromiumが起動しないことがあります。
その場合は、ターミナルで以下を実行してみたください。

Chromiumをターミナルで起動して動作を確認

GNOME 関連 snap の確認

$ chromium
Content snap command-chain for /snap/chromium/3351/gnome-platform/command-chain/desktop-launch not found:
ensure slot is connected

Chromium snap の確認

$ snap list | grep chromium
chromium                   144.0.7559.96                   3351   latest/stable    canonical** 

Chromium と GNOME runtime の snap 状態を確認

$ snap list | grep gnome
gnome-42-2204              0+git.837775c-sdk0+git.7b07595  228    latest/stable/…  canonical**     -

Chromium の snap interface 接続状況を確認

$ snap connections chromium
Interface                 Plug                                      Slot                            Notes
audio-playback            chromium:audio-playback                   :audio-playback                 -
audio-record              chromium:audio-record                     :audio-record                   -
bluez                     chromium:bluez                            :bluez                          -
browser-support           chromium:browser-sandbox                  :browser-support                -
camera                    chromium:camera                           :camera                         -
content                   chromium:gnome-46-2404                    -                               -
content[gpu-2404]         chromium:gpu-2404                         mesa-2404:gpu-2404              -
content[gtk-3-themes]     chromium:gtk-3-themes                     gtk-common-themes:gtk-3-themes  -
content[icon-themes]      chromium:icon-themes                      gtk-common-themes:icon-themes   -
content                   chromium:install-cups-runtime-dependency  -                               -
content[sound-themes]     chromium:sound-themes                     gtk-common-themes:sound-themes  -
cups                      chromium:cups                             cups:cups                       -
desktop                   chromium:desktop                          :desktop                        -
desktop-legacy            chromium:desktop-legacy                   :desktop-legacy                 -
gsettings                 chromium:gsettings                        :gsettings                      -
hardware-observe          chromium:hardware-observe                 :hardware-observe               -
hidraw                    chromium:hidraw                           -                               -
home                      chromium:home                             :home                           -
joystick                  chromium:joystick                         :joystick                       -
kerberos-tickets          chromium:kerberos-tickets                 -                               -
mount-observe             chromium:mount-observe                    -                               -
mpris                     -                                         chromium:mpris                  -
network                   chromium:network                          :network                        -
network-bind              chromium:network-bind                     :network-bind                   -
network-manager           chromium:network-manager                  -                               -
opengl                    chromium:opengl                           :opengl                         -
password-manager-service  chromium:password-manager-service         -                               -
pcscd                     chromium:pcscd                            -                               -
personal-files            chromium:chromium-config                  :personal-files                 -
personal-files            chromium:dot-local-share-applications     :personal-files                 -
personal-files            chromium:dot-local-share-icons            :personal-files                 -
raw-usb                   chromium:raw-usb                          -                               -
removable-media           chromium:removable-media                  :removable-media                -
screen-inhibit-control    chromium:screen-inhibit-control           :screen-inhibit-control         -
serial-port               chromium:serial-port                      -                               -
system-files              chromium:etc-chromium-browser-policies    :system-files                   -
system-packages-doc       chromium:system-packages-doc              :system-packages-doc            -
timezone-control          chromium:timezone-control                 -                               -
u2f-devices               chromium:u2f-devices                      :u2f-devices                    -
unity7                    chromium:unity7                           :unity7                         -
upower-observe            chromium:upower-observe                   :upower-observe                 -
wayland                   chromium:wayland                          :wayland                        -
x11                       chromium:x11                              :x11 

判断

  • Chromium は gnome-46-2404 を要求している
  • しかし実際にインストールされているのは gnome-42-2204
  • 表示は 接続先 slot が存在しないことを意味する

GNOME runtime の世代不一致が原因

この結果のように、ほとんどの場合が、gnomeと接続できていないなどのエラーなので、以下の解決方法をとります。

不足している GNOME runtime をインストール

sudo snap install gnome-46-2404

GNOME runtime と Chromium を明示的に接続

自動接続されないケースがあるため、手動で interface を接続。

sudo snap connect chromium:gnome-46-2404 gnome-46-2404:gnome-46-2404

snapd を再起動して反映

sudo systemctl daemon-reload
sudo systemctl restart snapd

リンク

さいごに

AIエージェントとの共存は、便利さとリスクが表裏一体であることを痛感させられます。高機能な相棒だからこそ、安全管理が何より重要です。今回は仮想環境を活用して、物理的にリスクを分離することで、安心してAIエージェントを活用できる環境を整えました。

今後も技術の進化に伴い、新たなリスクが発生するかもしれませんが、常にセキュリティ意識を持ち、柔軟に対応してい駆使性が大事かと思います。AIエージェントをより安全に、そして快適に使いこなしていくための一助になれば幸いです。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?