Why Configure Proxy Settings on Mac?
Configuring proxy settings on macOS is essential for privacy protection, bypassing geo-restrictions, web scraping workflows, network testing, and corporate network compliance. Unlike Windows, macOS manages proxy settings at the network service level — meaning Wi-Fi and Ethernet connections can have completely independent proxy configurations. This per-service approach provides granular control that is particularly useful for professionals who switch between different network environments.
macOS's Unix heritage also provides powerful command-line proxy management through the networksetup utility, making it ideal for automation and scripting. This comprehensive guide covers every aspect of proxy configuration on macOS Ventura, Sonoma, and later versions.
macOS System Proxy Settings (Ventura and Later)
System-level proxy settings on macOS are configured per network service. Each network interface (Wi-Fi, Ethernet, Thunderbolt Bridge) maintains its own independent proxy configuration.
Step-by-Step GUI Configuration
- Open System Settings from the Apple menu or click the System Settings icon in the Dock.
- Select Network from the left sidebar.
- Click your active network connection — Wi-Fi or Ethernet.
- Click the Details... button.
- Select the Proxies tab from the left sidebar.
- Enable the proxy type you need:
- Web Proxy (HTTP): Routes HTTP traffic through the proxy. Enter proxy IP and port.
- Secure Web Proxy (HTTPS): Routes HTTPS traffic through the proxy. Enter IP and port.
- SOCKS Proxy: Routes all TCP traffic through a SOCKS5 proxy server.
- If authentication is required, check "Proxy server requires password" and enter your username and password.
- In the bypass field, add local addresses:
*.local, 169.254/16, 192.168/16, 10.0/8 - Click OK to save.
Note for older macOS: On Monterey and earlier, these settings are found at System Preferences > Network > Advanced > Proxies. The interface differs but the configuration options are identical.
Automatic Proxy Configuration (PAC)
- In the Proxies tab, enable "Automatic Proxy Configuration".
- Enter the PAC file URL (e.g.,
http://proxy.company.com/proxy.pac). - Click OK. macOS will download the PAC file and route traffic according to its JavaScript rules.
Safari Proxy Settings
Safari, as macOS's built-in browser, directly uses the system proxy configuration. Safari does not have its own independent proxy settings — it fully inherits from macOS network settings. When you navigate to Safari's proxy configuration, it redirects to System Settings.
- Open Safari > Settings (or Preferences on older macOS).
- Go to the Advanced tab.
- Click "Proxies: Change Settings..."
- This redirects to macOS System Settings > Network > Proxies, where all proxy configuration happens.
To verify Safari is using the proxy, visit any IP checking website. The displayed IP should be your proxy's IP, not your real address.
Chrome Proxy Settings on Mac
Chrome on macOS also defaults to system proxy settings. However, you can run Chrome with an independent proxy using these methods:
Launch Parameters via Terminal
- HTTP proxy:
/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --proxy-server="http://proxy-ip:port" - SOCKS5 proxy:
/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --proxy-server="socks5://proxy-ip:port"
Save these as shell scripts or aliases in your .zshrc for easy access.
SwitchyOmega Extension
Install SwitchyOmega from the Chrome Web Store for full proxy management with multiple profiles and URL-based auto-switching rules. The extension works identically on macOS and Windows. See our SwitchyOmega Setup Guide for detailed instructions.
Terminal Proxy Configuration with networksetup
The networksetup command is macOS's powerful CLI tool for managing network settings, including proxy configuration. It's essential for automation and scripting.
Setting HTTP Proxy
sudo networksetup -setwebproxy "Wi-Fi" proxy-ip port
With authentication: sudo networksetup -setwebproxy "Wi-Fi" proxy-ip port on username password
Setting HTTPS Proxy
sudo networksetup -setsecurewebproxy "Wi-Fi" proxy-ip port
Setting SOCKS5 Proxy
sudo networksetup -setsocksfirewallproxy "Wi-Fi" proxy-ip port
Checking Current Proxy Status
networksetup -getwebproxy "Wi-Fi" — shows current HTTP proxy settings.
networksetup -getsocksfirewallproxy "Wi-Fi" — shows SOCKS proxy settings.
Disabling Proxy
sudo networksetup -setwebproxystate "Wi-Fi" off
sudo networksetup -setsecurewebproxystate "Wi-Fi" off
sudo networksetup -setsocksfirewallproxystate "Wi-Fi" off
Finding Network Service Name
The commands above use "Wi-Fi" as the network service name. To list all available network services: networksetup -listallnetworkservices
Shell Environment Variables
Many command-line tools (curl, wget, brew, pip, npm, git) respect environment variables for proxy configuration:
- Session-only:
export http_proxy="http://proxy-ip:port"andexport https_proxy="http://proxy-ip:port" - With auth:
export http_proxy="http://user:pass@proxy-ip:port" - Permanent: Add the export lines to
~/.zshrc(default macOS shell) or~/.bash_profile, then runsource ~/.zshrc. - Remove all proxies:
unset http_proxy https_proxy HTTP_PROXY HTTPS_PROXY all_proxy ALL_PROXY
macOS Native SOCKS5 Support
macOS provides built-in system-level SOCKS proxy support — no third-party software needed. This routes all TCP traffic from all applications through the SOCKS proxy, which is a significant advantage over Windows where Proxifier or similar tools are required.
Enable it through System Settings > Network > Wi-Fi > Details > Proxies > SOCKS Proxy, and enter your ProxyTurk SOCKS5 connection details to route all Mac traffic through the proxy.
Setting Up ProxyTurk on Mac
Configuring ProxyTurk's 131,072 ISP IP pool on macOS is straightforward. Retrieve your connection details from the Proxy Settings page and apply them using any method above. Our infrastructure supports both HTTP and SOCKS5 at 800-900 Mbps with real ISP IP addresses for maximum anonymity.
Troubleshooting
- No internet after proxy setup: Verify the IP address and port are correct. Use
networksetup -getwebproxy "Wi-Fi"to check current settings. - Safari not using proxy: Safari uses system proxy settings. Ensure the proxy is configured for the correct network service (Wi-Fi vs Ethernet).
- Terminal commands bypass proxy: Set
http_proxyandhttps_proxyenvironment variables in your shell.
Windows users should see our Windows Proxy Settings Guide. iPhone users can check our iPhone Proxy Settings Guide.
Frequently Asked Questions (FAQ)
Where are Safari proxy settings?
Safari has no independent proxy settings. Safari > Settings > Advanced > Proxies redirects to macOS System Settings. All proxy configuration happens at System Settings > Network > Wi-Fi/Ethernet > Details > Proxies.
How do I use SOCKS5 proxy on Mac?
macOS has built-in SOCKS proxy support. Enable it at System Settings > Network > Wi-Fi > Details > Proxies > SOCKS Proxy. Alternatively, use Terminal: sudo networksetup -setsocksfirewallproxy "Wi-Fi" proxy-ip port. No third-party software needed.
Why don't Terminal commands use the system proxy?
macOS system proxy settings don't automatically apply to Terminal applications. You must set http_proxy and https_proxy environment variables in your shell profile (~/.zshrc) for CLI tools to use the proxy.
How do I completely reset all proxy settings?
Run sudo networksetup -setwebproxystate "Wi-Fi" off, sudo networksetup -setsecurewebproxystate "Wi-Fi" off, and sudo networksetup -setsocksfirewallproxystate "Wi-Fi" off. Also unset all proxy environment variables from your terminal session and remove them from ~/.zshrc.