概要
Claude Code on the web(クラウド環境)では、セキュリティのためネットワークアクセスに制限がある。 本記事では、スマホアプリ版のClaude Codeで作業しようとした際に遭遇した問題とその解決策を解説する。
環境構成
Claude Codeクラウド環境は以下の構成で動作している。
| 項目 | 設定 |
|---|---|
| ネットワーク | HTTPプロキシ経由(JWT認証付き) |
| DNS | /etc/resolv.conf が空(DNSサーバー未設定) |
| 許可ホスト | ホワイトリスト方式(開発ツール関連サイト) |
問題1: apt updateが失敗する
症状
1 | W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/noble/InRelease |
原因
/etc/resolv.confが空でDNSサーバーが設定されていない- aptがプロキシを使用する設定になっていない
診断コマンド
1 | # DNS設定確認 |
解決策
プロキシ環境変数からaptの設定を作成する。
1 | # プロキシURLを取得 |
ポイント: プロキシURLにはJWT認証トークンが含まれているため、完全なURLを使用する必要がある。
問題2: GitHubリリースのダウンロードが403エラー
症状
1 | $ curl -L "https://github.com/quarto-dev/quarto-cli/releases/download/v1.4.549/quarto-1.4.549-linux-amd64.deb" |
原因
GitHubリリースはCDN(objects.githubusercontent.com等)にリダイレクトされるが、
リダイレクト先がホワイトリストに含まれていない場合がある。
解決策: conda-forge経由でインストール
1 | # Minicondaをダウンロード(repo.anaconda.comは許可されている) |
問題3: 外部サイト(zotero.org等)へのアクセスがブロック
症状
1 | Could not fetch https://www.zotero.org/styles/ieee |
原因
ホワイトリストに含まれていないホストへのアクセスは403 Forbiddenで拒否される。
解決策: ローカルファイルを使用
1 | # GitHubのraw.githubusercontent.comは許可されている |
許可されている主要ホスト
プロキシのJWTトークンに含まれるallowed_hostsから抜粋。
| カテゴリ | ホスト |
|---|---|
| パッケージ管理 | pypi.org, registry.npmjs.org,
repo.anaconda.com, conda.anaconda.org |
| GitHub | github.com, api.github.com,
raw.githubusercontent.com,
gist.github.com |
| Ubuntu | *.ubuntu.com, archive.ubuntu.com,
security.ubuntu.com |
| その他開発ツール | crates.io, rubygems.org,
golang.org, hub.docker.com |
conda-forge版Quartoの追加設定
conda-forgeからインストールしたQuartoは、パス設定に追加作業が必要な場合がある。
1 | # QUARTO_SHARE_PATHを設定 |
まとめ
| 問題 | 解決策 |
|---|---|
| apt失敗 | プロキシ設定を/etc/apt/apt.conf.d/proxy.confに追加 |
| GitHubリリースのブロック | conda-forge経由でインストール |
| 外部サイトのブロック | GitHubのraw URLからダウンロードしてローカル参照 |
推奨ワークフロー
- 開発・プレビュー: ローカル環境で実施(ネットワーク制限なし)
- ビルド・品質チェック: クラウド環境で実施(上記対策を適用)
- 外部依存ファイル: 事前にローカルにダウンロードしてリポジトリに含める