社内プロキシ・企業ネットワークでClaude Codeを使う方法
Error: connect ECONNREFUSEDまたはENOTFOUND api.anthropic.comSSL certificate verification failedまたはcertificate has expiredRequest 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 への通信がブロックされている場合があります。
原因4: プロキシの認証
Section titled “原因4: プロキシの認証”プロキシサーバーがユーザー名とパスワードの認証を要求している場合があります。
環境変数でプロキシを設定する
Section titled “環境変数でプロキシを設定する”Claude Codeはシステム環境変数のプロキシ設定を使います。
macOS / Linux(bash/zsh):
# ~/.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):
# ユーザー環境変数として設定(永続化)[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"設定後の確認:
# Claude Codeを再起動して確認claude --version
# 接続テストcurl -v https://api.anthropic.com/v1/messages \ --proxy http://proxy.company.com:8080 \ -H "x-api-key: test"SSL証明書エラーの解決
Section titled “SSL証明書エラーの解決”方法1: 企業のルート証明書を信頼させる(推奨)
IT部門から「会社のルート証明書」を取得して、Node.jsに信頼させます。
# 証明書ファイル(.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: 証明書の検証を無効にする(非推奨・一時的な対処)
# セキュリティリスクがあるため、本番環境では使わないexport NODE_TLS_REJECT_UNAUTHORIZED=0プロキシの自動設定(PAC ファイル)
Section titled “プロキシの自動設定(PAC ファイル)”企業では自動プロキシ設定(PAC: Proxy Auto-Config)ファイルを使っている場合があります。Node.jsは PAC ファイルを直接サポートしていないため、別の方法が必要です。
# pac-proxy-agent を使う方法npm install -g pac-proxy-agent
# または、IT部門に直接プロキシのホスト:ポートを確認するファイアウォールのドメイン許可申請
Section titled “ファイアウォールのドメイン許可申請”以下のドメインへのアクセスをIT部門に申請してください:
| ドメイン | ポート | 用途 |
|---|---|---|
api.anthropic.com | 443 | Claude API |
statsig.anthropic.com | 443 | 機能フラグ・統計 |
sentry.io | 443 | エラー報告(任意) |
企業のProxy設定確認方法
Section titled “企業のProxy設定確認方法”# macOS: ネットワーク設定からプロキシを確認scutil --proxy
# Windows: システムのプロキシ設定を確認netsh winhttp show proxy
# またはreg query "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" | findstr Proxy※環境変数: APIキーやデータベース接続情報など、コードに直接書きたくない値をOSやサーバーに設定する仕組み。
IT部門へ提出するドキュメント
Section titled “IT部門へ提出するドキュメント”以下を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 や起動スクリプトにまとめる”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 “テスト環境で動作確認してから本格利用する”# 簡単な接続テストclaude "Hello, connection test"