← Quay lại cơ sở kiến thức

Trình duyệt dùng được nhưng Claude Code không kết nối? Cấu hình proxy cho terminal

Sun Oct 25 2026

Claude mở được trong trình duyệt, nhưng lệnh claude trong terminal hết thời gian chờ hoặc không đăng nhập xong? Trước tiên, hãy kiểm tra terminal có thực sự dùng proxy hay không. Tiện ích trình duyệt, proxy hệ thống và biến môi trường của shell là các thiết lập riêng.

Bài này dành cho Claude Code CLI chạy độc lập, không phải Claude Desktop. Bạn vẫn cần tài khoản đủ điều kiện và vị trí được hỗ trợ chính thức; kết nối thành công không thay đổi các yêu cầu đó.

Thiết lập tạm thời này dành cho CLI chạy ở tiền cảnh từ terminal hiện tại. Với --bg hoặc tác tử nền, hãy theo cấu hình chính thức riêng: tiến trình giám sát chạy lâu dài không bảo đảm kế thừa thay đổi shell về sau.

1. Kết nối ứng dụng máy khách trước

Gói đăng ký JMS dùng để cấu hình các nút trong máy khách. Đường đi thực tế của yêu cầu là:

Claude Code → cổng HTTP/mixed cục bộ của máy khách → nút JMS đã chọn → dịch vụ Anthropic.

Nhập đăng ký hiện tại vào máy khách hỗ trợ đúng giao thức của nút. JMS đã thay đổi giao thức trong năm 2026; đừng mặc định máy khách cũ chỉ hỗ trợ Shadowsocks vẫn dùng được. Xem hướng dẫn xử lý VLESS/Reality hoặc cấu hình Clash Verge trước.

Tìm cổng lắng nghe HTTP hoặc mixed cục bộ và giữ máy khách chạy. Đây không phải cổng máy chủ từ xa, URL đăng ký, UUID hay khóa công khai Reality. Chỉ lắng nghe trên máy cục bộ; không cần bật chia sẻ qua LAN.

Theo tài liệu mạng chính thức, Claude Code hỗ trợ proxy HTTP/HTTPS nhưng không hỗ trợ SOCKS trực tiếp. Hãy bật cổng HTTP/mixed hoặc dùng máy khách tương thích.

2. Cấu hình đúng terminal sẽ khởi chạy Claude

Dùng một terminal riêng cho lần thử đầu. Kiểm tra cục bộ xem đã có https_proxy, HTTPS_PROXY, http_proxy, HTTP_PROXY, all_proxy, ALL_PROXY, no_proxy hay NO_PROXY chưa. Không công khai giá trị: URL proxy có thể chứa mật khẩu.

Claude Code lấy giá trị đầu tiên được đặt theo thứ tự https_proxy, HTTPS_PROXY, http_proxy, HTTP_PROXY. Biến chữ thường cũ có thể được ưu tiên hơn biến chữ hoa mới. Công cụ khác có quy tắc riêng; ALL_PROXY không khiến Claude hỗ trợ SOCKS. Lưu riêng giá trị cũ và xử lý xung đột trước khi ghi đè.

macOS hoặc Linux: Bash/Zsh

7890 chỉ là ví dụ. Trước khi chạy, thay bằng cổng HTTP/mixed thực tế hiển thị trong máy khách:

JMS_PROXY_PORT=7890
export HTTPS_PROXY="http://127.0.0.1:${JMS_PROXY_PORT}"
export HTTP_PROXY="$HTTPS_PROXY"
export NO_PROXY="localhost,127.0.0.1,::1"
claude

Windows: PowerShell

Ở đây cũng thay 7890 bằng cổng HTTP/mixed thực tế. Chạy trong PowerShell, không phải Command Prompt:

$JmsProxyPort = 7890
$env:HTTPS_PROXY = "http://127.0.0.1:$JmsProxyPort"
$env:HTTP_PROXY = $env:HTTPS_PROXY
$env:NO_PROXY = "localhost,127.0.0.1,::1"
claude

http:// mô tả kết nối tới proxy cục bộ, không biến HTTPS của đích thành HTTP không mã hóa. NO_PROXY giữ yêu cầu cục bộ đi trực tiếp, giúp callback đăng nhập từ trình duyệt tới được CLI.

Các biến chỉ áp dụng cho terminal này và tiến trình được nó khởi chạy. Phiên Claude Code đang mở không đọc lại thay đổi shell về sau. Thoát, đặt biến rồi chạy lại claude trong cùng terminal đó. Chỉ lưu cấu hình vào hồ sơ shell sau khi thử thành công.

Trong WSL, container hoặc SSH, 127.0.0.1 là môi trường thực thi lệnh, chưa chắc là máy đang chạy ứng dụng proxy. Kiểm tra khả năng truy cập mà không mở proxy ra Internet.

3. Thử kết nối mà không gửi thông tin bí mật

Thoát Claude Code rồi chạy phép thử trong terminal đã cấu hình. Lệnh chỉ định rõ proxy cục bộ và truy cập máy chủ API công khai, không gửi khóa API.

macOS/Linux:

curl --proxy "$HTTPS_PROXY" --noproxy "localhost,127.0.0.1,::1" --connect-timeout 10 --max-time 20 --output /dev/null --silent --show-error --write-out 'HTTP %{http_code}\n' https://api.anthropic.com/

Trên Windows, dùng curl.exe để tránh bí danh curl của PowerShell cũ:

curl.exe --proxy $env:HTTPS_PROXY --noproxy "localhost,127.0.0.1,::1" --connect-timeout 10 --max-time 20 --output NUL --silent --show-error --write-out "HTTP %{http_code}\n" https://api.anthropic.com/

Thời gian chờ kết nối tối đa là 10 giây, toàn bộ yêu cầu là 20 giây. HTTP 401, 403 hoặc 404 vẫn có thể cho thấy đã nhận được phản hồi HTTP; địa chỉ gốc API không phải lệnh gọi mô hình đã xác thực. Đọc nội dung lỗi: mã ngoài 2xx không tự chứng minh proxy hỏng, và nhận được phản hồi không chứng minh tài khoản có quyền sử dụng.

HTTP 000 kèm lỗi kết nối hoặc hết thời gian chờ nghĩa là chưa có phản hồi HTTP bình thường. Lỗi chứng chỉ cần kiểm tra riêng. Giữ xác minh TLS; không thêm -k hoặc tắt kiểm tra chứng chỉ. Không đăng công khai URL đăng ký, mã đăng nhập, token hay nhật ký chẩn đoán riêng tư.

4. Chọn bước kiểm tra theo triệu chứng

Triệu chứngKiểm tra tiếp theo
Kết nối cục bộ bị từ chốiMáy khách đang chạy, đúng cổng HTTP/mixed và địa chỉ
Hết thời gian chờ hoặc kết nối bị đặt lạiNhật ký máy khách, nút, DNS, tường lửa và đường truyền
Trình duyệt đăng nhập được nhưng CLI chưa xongCallback cục bộ, NO_PROXY, khởi động lại CLI và hướng dẫn đăng nhập chính thức
HTTP 401/403 trong yêu cầu đã xác thựcCách đăng nhập, thông tin xác thực, chính sách tổ chức và vùng hỗ trợ
HTTP 429 hoặc giới hạn sử dụngHạn mức tài khoản và tần suất yêu cầu; đổi nút không tăng hạn mức
Nhiều thiết bị cùng lỗiXem trạng thái Anthropic trước khi đổi cấu hình

Xem claude --version, chạy claude doctor, rồi cập nhật theo cách cài đặt của bạn trong hướng dẫn chính thức. Lỗi phiên bản, đăng nhập hết hạn hoặc sự cố nền tảng cũng có thể giống lỗi mạng.

5. Xóa thiết lập tạm thời

Nếu các biến chưa tồn tại trước phép thử, chỉ xóa những giá trị vừa thêm:

Bash/Zsh:

unset HTTPS_PROXY HTTP_PROXY NO_PROXY JMS_PROXY_PORT

PowerShell:

Remove-Item Env:HTTPS_PROXY, Env:HTTP_PROXY, Env:NO_PROXY -ErrorAction SilentlyContinue
Remove-Variable JmsProxyPort -ErrorAction SilentlyContinue

Lệnh này xóa giá trị hiện tại, không khôi phục giá trị cũ đã bị ghi đè. Tự khôi phục riêng nếu cần và khởi động lại Claude Code. Cấu hình lâu dài trong hệ thống hoặc hồ sơ shell phải kiểm tra riêng.

Chọn dịch vụ kết nối

JMS cung cấp nút cho máy khách tương thích; máy khách và cấu hình terminal nối CLI tới các nút đó. JMS không cung cấp gói Anthropic, không bảo đảm tài khoản được duyệt hay tránh đình chỉ. Proxy cục bộ cũng không đổi đường ra của trình kết nối MCP chạy trên đám mây.

Đối chiếu các gói và hướng dẫn tải máy khách với thiết bị, giao thức hiện tại. Nếu phù hợp nhu cầu, bạn có thể xem dịch vụ Just My Socks.

Công bố liên kết tiếp thị: chúng tôi có thể nhận hoa hồng nếu bạn mua qua liên kết này.