Skip to content

社内プロキシ・企業ネットワークでClaude Codeを使う方法

  • Error: connect ECONNREFUSED または ENOTFOUND api.anthropic.com
  • SSL certificate verification failed または certificate has expired
  • Request failed with status code 407 (プロキシ認証エラー)
  • Claude Codeが起動するが、APIへの接続がタイムアウトする
  • npm install はできるのに、Claudeだけつながらない
API: Application Programming Interface の略。外部サービスとプログラム間でデータをやりとりするための接続口。npm: Node.jsのパッケージ管理ツール。`npm install` でライブラリをインストールする。

原因1: プロキシサーバーの設定が必要

Section titled “原因1: プロキシサーバーの設定が必要”

企業ネットワークでは、外部への通信がプロキシサーバーを経由します。Node.jsアプリケーション(Claude Codeを含む)はOS設定のプロキシを自動的に使わない場合があります。

原因2: SSL/TLS証明書のインターセプト

Section titled “原因2: SSL/TLS証明書のインターセプト”

企業のセキュリティソフトウェアがSSL通信を「検査」するために、独自の証明書を挿入します。これを「SSL Inspection(SSLインスペクション)」と言います。Claudeがその証明書を信頼しないとエラーになります。

原因3: 特定のドメイン・ポートがブロックされている

Section titled “原因3: 特定のドメイン・ポートがブロックされている”

ファイアウォールで api.anthropic.com への通信がブロックされている場合があります。

プロキシサーバーがユーザー名とパスワードの認証を要求している場合があります。

環境変数でプロキシを設定する

Section titled “環境変数でプロキシを設定する”

Claude Codeはシステム環境変数のプロキシ設定を使います。

macOS / Linux(bash/zsh):

Terminal window
# ~/.bashrc または ~/.zshrc に追加
export HTTP_PROXY="http://proxy.company.com:8080"
export HTTPS_PROXY="http://proxy.company.com:8080"
export NO_PROXY="localhost,127.0.0.1,*.company.internal"
# 認証が必要な場合
export HTTP_PROXY="http://username:password@proxy.company.com:8080"
export HTTPS_PROXY="http://username:password@proxy.company.com:8080"

Windows(PowerShell):

Terminal window
# ユーザー環境変数として設定(永続化)
[System.Environment]::SetEnvironmentVariable("HTTP_PROXY", "http://proxy.company.com:8080", "User")
[System.Environment]::SetEnvironmentVariable("HTTPS_PROXY", "http://proxy.company.com:8080", "User")
[System.Environment]::SetEnvironmentVariable("NO_PROXY", "localhost,127.0.0.1", "User")
# セッション内のみ
$env:HTTP_PROXY = "http://proxy.company.com:8080"
$env:HTTPS_PROXY = "http://proxy.company.com:8080"

設定後の確認:

Terminal window
# Claude Codeを再起動して確認
claude --version
# 接続テスト
curl -v https://api.anthropic.com/v1/messages \
--proxy http://proxy.company.com:8080 \
-H "x-api-key: test"

方法1: 企業のルート証明書を信頼させる(推奨)

IT部門から「会社のルート証明書」を取得して、Node.jsに信頼させます。

Terminal window
# 証明書ファイル(.crt または .pem)を取得したら
export NODE_EXTRA_CA_CERTS="/path/to/company-certificate.crt"
# Windowsの場合
$env:NODE_EXTRA_CA_CERTS = "C:\certs\company-root-ca.crt"

方法2: 証明書の検証を無効にする(非推奨・一時的な対処)

Terminal window
# セキュリティリスクがあるため、本番環境では使わない
export NODE_TLS_REJECT_UNAUTHORIZED=0

プロキシの自動設定(PAC ファイル)

Section titled “プロキシの自動設定(PAC ファイル)”

企業では自動プロキシ設定(PAC: Proxy Auto-Config)ファイルを使っている場合があります。Node.jsは PAC ファイルを直接サポートしていないため、別の方法が必要です。

Terminal window
# pac-proxy-agent を使う方法
npm install -g pac-proxy-agent
# または、IT部門に直接プロキシのホスト:ポートを確認する

ファイアウォールのドメイン許可申請

Section titled “ファイアウォールのドメイン許可申請”

以下のドメインへのアクセスをIT部門に申請してください:

ドメインポート用途
api.anthropic.com443Claude API
statsig.anthropic.com443機能フラグ・統計
sentry.io443エラー報告(任意)
Terminal window
# macOS: ネットワーク設定からプロキシを確認
scutil --proxy
# Windows: システムのプロキシ設定を確認
netsh winhttp show proxy
# または
reg query "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" | findstr Proxy
環境変数: APIキーやデータベース接続情報など、コードに直接書きたくない値をOSやサーバーに設定する仕組み。

以下をIT部門への申請書として使えます:

【Claude Code 利用申請】
概要: Anthropic社のAIコーディングアシスタント「Claude Code」をローカルPCで使用したい
必要なネットワークアクセス:
- api.anthropic.com:443 (HTTPS) — Claude AIとのAPI通信
使用目的: 開発業務の効率化(コード生成・レビュー・デバッグ)
情報セキュリティについて:
- コードはAnthropicのサーバーに送信されます
- 機密情報(APIキー・個人情報・顧客データ)は送信しないよう徹底します
- 詳細なプライバシーポリシー: https://www.anthropic.com/privacy
APIキー: APIを利用するための認証情報。外部に漏れると不正利用されるため厳重に管理が必要。

設定を .env や起動スクリプトにまとめる

Section titled “設定を .env や起動スクリプトにまとめる”
~/.config/claude-code/env.sh
export HTTP_PROXY="http://proxy.company.com:8080"
export HTTPS_PROXY="http://proxy.company.com:8080"
export NO_PROXY="localhost,127.0.0.1,*.company.internal"
export NODE_EXTRA_CA_CERTS="/etc/ssl/certs/company-ca.crt"
# .bashrc/.zshrc に追加
source ~/.config/claude-code/env.sh

テスト環境で動作確認してから本格利用する

Section titled “テスト環境で動作確認してから本格利用する”
Terminal window
# 簡単な接続テスト
claude "Hello, connection test"