SOCKS Proxy Setup for macOS
Complete guide to configuring SOCKS proxy on macOS using Terminal.
📋 Before You Begin
Ensure you have your username and SSH password ready. You’ll need your SSH server hostname (provided via email when you requested SOCKS access), username, and password to connect to our secure SOCKS proxy servers.
Important: All SOCKS proxy servers are under the cotse.net domain. The codamail.com domain is exclusively for email services. SOCKS access must be requested separately from your email account.
💻 Step 1: SSH is Pre-installed on macOS
macOS (based on FreeBSD) includes SSH by default, so no additional software installation is required. You’ll use the built-in Terminal application to create your SOCKS proxy tunnel.
Accessing Terminal
- Press ⌘ + Space to open Spotlight search.
- Type “Terminal” and press Enter.
- Alternatively: Applications → Utilities → Terminal.
- Or: Launchpad → Other → Terminal.
🔐 Step 2: Create SOCKS Proxy Tunnel
Open a Terminal window and type the command below. Make sure to substitute your account name and the SSH server you were assigned:
ssh -L 5000:127.0.0.1:1080 youraccount@yourassignedsocksserver
SOCKS Configuration: This command creates a SOCKS proxy tunnel on port 5000, forwarding to port 1080 on the server. Unlike HTTP tunnels, SOCKS works at a lower network level.
🚀 Step 3: Establish SOCKS Connection
First Connection
- Paste the command into Terminal and press Enter.
- On first connection, you’ll see a host key verification prompt similar to:
The authenticity of host 'sp1.cotse.net (67.159.26.71)' can't be established. DSA key fingerprint is 88:f6:bc:71:bf:6f:1f:be:85:a0:81:4d:ed:3c:d7:dc. Are you sure you want to continue connecting (yes/no)? - Type yes to accept the server key.
- Enter your password when prompted (typing may not echo, just type and press Enter).
- Important: Leave the Terminal window open. This maintains your SOCKS tunnel.
Connection Success: Once connected, you’ll see a shell prompt or the connection will appear to “hang”. This is normal and means your SOCKS tunnel is active.
🦊 Firefox Configuration (Recommended)
Configure Firefox SOCKS Proxy
- Run Firefox.
- Click menu (☰) → Settings.
- Scroll to Network Settings and click Settings.
- Select Manual proxy configuration.
- Enter
127.0.0.1and port5000in the SOCKS Host field only. - Select SOCKS v5.
- Important: Every other field must be blank for SOCKS.
- Click OK, then OK again.
Recommendation: We recommend Firefox with the NoScript and uBlock Origin addons for your best protection with a SOCKS proxy.
🌐 Other Browser Configuration
Safari Configuration
Note: Safari uses system proxy settings and may have compatibility issues with SOCKS proxies. Firefox is strongly recommended.
- If you must use Safari: Safari → Preferences → Advanced.
- Click Change Settings next to Proxies.
- In System Preferences → Network → Advanced → Proxies.
- Check SOCKS Proxy.
- Server:
127.0.0.1, Port:5000. - Click OK and Apply.
Chrome Configuration
- Chrome uses system proxy settings on macOS.
- Follow the Safari system preferences steps above.
- Alternatively, launch Chrome with command line flags:
google-chrome --proxy-server="socks5://127.0.0.1:5000".
🍎 macOS-Specific Features
Terminal Enhancements
- Background Connection: Use
nohupto keep connection alive:nohup ssh -L 5000:127.0.0.1:1080 youraccount@yourassignedsocksserver & - SSH Config File: Create
~/.ssh/configfor permanent settings:Host cotse-socks Hostname yourassignedsocksserver User youraccount LocalForward 5000 127.0.0.1:1080 ServerAliveInterval 60 - Then connect with:
ssh cotse-socks.
Automation Options
- Automator Script: Create an app to launch SOCKS tunnel automatically.
- LaunchAgent: Set up automatic connection on login.
- Shell Alias: Add shortcuts to your
.bash_profileor.zshrc.
Understanding SOCKS vs HTTP
- SOCKS Proxy: Works at lower network level, supports more protocols.
- Port 1080: Standard SOCKS port (vs HTTP ports 8888/8080/9999).
- Application Support: Works with more applications beyond browsers.
- SOCKS v5: Preferred version with authentication and UDP support.
🔧 Troubleshooting
Common macOS SOCKS proxy issues and solutions:
- Connection Refused: Verify your SOCKS server hostname is correct.
- Permission Denied: Check username is lowercase, password is case-sensitive.
- Host Key Verification Failed: Remove old key with
ssh-keygen -R hostname. - Terminal Window Closes: Connection dropped, restart the SSH command.
- Port Already in Use: Kill existing connection with
lsof -ti:5000 | xargs kill. - Browser Not Using Proxy: Verify SOCKS settings and restart browser.
macOS System Issues
- Firewall Blocking: System Preferences → Security → Firewall, allow Terminal.
- Network Changes: Wi-Fi switching may break connection, restart tunnel.
- Sleep Mode: SOCKS tunnel may disconnect when Mac sleeps.
- VPN Conflicts: Disable other VPN software while using SOCKS tunnel.
- System Proxy Conflicts: Other proxy settings may interfere.
📞 Need Help?
If you need additional assistance with SOCKS proxy setup on macOS or encounter any issues not covered in this guide, please contact our support team at helpdesk@codamail.com.
We’re here to help ensure your SOCKS proxy works perfectly and keeps your Mac browsing secure and private.
