|
| 1 | +# Windows Client Setup |
| 2 | + |
| 3 | +This guide will help you set up your Windows device to connect to your Algo VPN server. |
| 4 | + |
| 5 | +## Supported Versions |
| 6 | + |
| 7 | +- Windows 10 (all editions) |
| 8 | +- Windows 11 (all editions) |
| 9 | +- Windows Server 2016 and later |
| 10 | + |
| 11 | +## WireGuard Setup (Recommended) |
| 12 | + |
| 13 | +WireGuard is the recommended VPN protocol for Windows clients due to its simplicity and performance. |
| 14 | + |
| 15 | +### Installation |
| 16 | + |
| 17 | +1. Download and install the official [WireGuard client for Windows](https://www.wireguard.com/install/) |
| 18 | +2. Locate your configuration file: `configs/<server-ip>/wireguard/<username>.conf` |
| 19 | +3. In the WireGuard application, click "Import tunnel(s) from file" |
| 20 | +4. Select your `.conf` file and import it |
| 21 | +5. Click "Activate" to connect to your VPN |
| 22 | + |
| 23 | +### Alternative Import Methods |
| 24 | + |
| 25 | +- **QR Code**: If you have access to the QR code (`wireguard/<username>.png`), you can scan it using a mobile device first, then export the configuration |
| 26 | +- **Manual Entry**: You can create a new empty tunnel and paste the contents of your `.conf` file |
| 27 | + |
| 28 | +## IPsec/IKEv2 Setup (Legacy) |
| 29 | + |
| 30 | +While Algo supports IPsec/IKEv2, it requires PowerShell scripts for Windows setup. WireGuard is strongly recommended instead. |
| 31 | + |
| 32 | +If you must use IPsec: |
| 33 | +1. Locate the PowerShell setup script in your configs directory |
| 34 | +2. Run PowerShell as Administrator |
| 35 | +3. Execute the setup script |
| 36 | +4. The VPN connection will appear in Settings → Network & Internet → VPN |
| 37 | + |
| 38 | +## Troubleshooting |
| 39 | + |
| 40 | +### "The parameter is incorrect" Error |
| 41 | + |
| 42 | +This is a common error that occurs when trying to connect. See the [troubleshooting guide](troubleshooting.md#windows-the-parameter-is-incorrect-error-when-connecting) for the solution. |
| 43 | + |
| 44 | +### Connection Issues |
| 45 | + |
| 46 | +1. **Check Windows Firewall**: Ensure Windows Firewall isn't blocking the VPN connection |
| 47 | +2. **Verify Server Address**: Make sure the server IP/domain in your configuration is correct |
| 48 | +3. **Check Date/Time**: Ensure your system date and time are correct |
| 49 | +4. **Disable Other VPNs**: Disconnect from any other VPN services before connecting |
| 50 | + |
| 51 | +### WireGuard Specific Issues |
| 52 | + |
| 53 | +- **DNS Not Working**: Check if "Block untunneled traffic (kill-switch)" is enabled in tunnel settings |
| 54 | +- **Slow Performance**: Try reducing the MTU in the tunnel configuration (default is 1420) |
| 55 | +- **Can't Import Config**: Ensure the configuration file has a `.conf` extension |
| 56 | + |
| 57 | +### Performance Optimization |
| 58 | + |
| 59 | +1. **Use WireGuard**: It's significantly faster than IPsec on Windows |
| 60 | +2. **Close Unnecessary Apps**: Some antivirus or firewall software can slow down VPN connections |
| 61 | +3. **Check Network Adapter**: Update your network adapter drivers to the latest version |
| 62 | + |
| 63 | +## Advanced Configuration |
| 64 | + |
| 65 | +### Split Tunneling |
| 66 | + |
| 67 | +To exclude certain traffic from the VPN: |
| 68 | +1. Edit your WireGuard configuration file |
| 69 | +2. Modify the `AllowedIPs` line to exclude specific networks |
| 70 | +3. For example, to exclude local network: Remove `0.0.0.0/0` and add specific routes |
| 71 | + |
| 72 | +### Automatic Connection |
| 73 | + |
| 74 | +To connect automatically: |
| 75 | +1. Open WireGuard |
| 76 | +2. Select your tunnel |
| 77 | +3. Edit → Uncheck "On-demand activation" |
| 78 | +4. Windows will maintain the connection automatically |
| 79 | + |
| 80 | +### Multiple Servers |
| 81 | + |
| 82 | +You can import multiple `.conf` files for different Algo servers. Give each a descriptive name to distinguish them. |
| 83 | + |
| 84 | +## Security Notes |
| 85 | + |
| 86 | +- Keep your configuration files secure - they contain your private keys |
| 87 | +- Don't share your configuration with others |
| 88 | +- Each user should have their own unique configuration |
| 89 | +- Regularly update your WireGuard client for security patches |
| 90 | + |
| 91 | +## Need More Help? |
| 92 | + |
| 93 | +- Check the main [troubleshooting guide](troubleshooting.md) |
| 94 | +- Review [WireGuard documentation](https://www.wireguard.com/quickstart/) |
| 95 | +- [Create a discussion](https://github.com/trailofbits/algo/discussions) for help |
0 commit comments