Chuyển đến nội dung chính

Cấu hình proxy và các ngoại lệ trên MacOS

Hướng dẫn này giải thích cách cấu hình cài đặt proxy và các mục loại trừ trên MacOS khi sử dụng proxy dựa trên IP, bao gồm danh sách loại trừ cho các ứng dụng phụ thuộc vào WebSockets, chẳng hạn như:

  • Slack
  • Lucidchart
  • Figma

Các ứng dụng này thường không hoạt động khi chạy sau các proxy như Squid, vốn không hỗ trợ WebSockets theo mặc định.

Phương pháp thủ công (cài đặt hệ thống)

  1. Đi tới System SettingsNetwork.
  2. Chọn giao diện đang hoạt động của bạn (ví dụ: Wi-Fi).
  3. Nhấp vào DetailsProxies.
  4. Under web proxy (HTTP) and secure web proxy (HTTPS):
    • Thay proxy.company.com bằng IP proxy của bạn (ví dụ: 192.168.1.10)
    • Đặt cổng (thường là 8080)
  5. Trong bypass domains, thêm các miền bắt buộc (xem bên dưới).
  6. Nhấp vào OK, sau đó Apply.

Script này thực hiện những gì

  • Áp dụng cài đặt proxy cho tất cả giao diện mạng
  • Thiết lập proxy HTTP và HTTPS
  • Cấu hình danh sách miền bỏ qua sẽ không sử dụng proxy
  • Lý tưởng để sử dụng vớinetworksetupvà các thiết bị được quản lý bằng MDM

Phương pháp dùng script (bash)

#!/bin/bash

# Define proxy server and port
PROXY="192.168.1.10"
PORT="8080"

# Domains to exclude from proxy — especially for WebSocket-based apps
EXCLUSIONS="localhost,127.0.0.1,*.microsoftonline.com,*.core.windows.net,*.slack.com,*.figma.com,*.lucidchart.com,*.lucid.app"

# Get all active network services
services=$(networksetup -listallnetworkservices | tail +2)

# Apply settings per service
for service in $services; do
echo "Setting proxy for: $service"
networksetup -setwebproxy "$service" "$PROXY" "$PORT"
networksetup -setsecurewebproxy "$service" "$PROXY" "$PORT"
networksetup -setproxybypassdomains "$service" $(echo $EXCLUSIONS | tr "," " ")
done