Skip to content

Commit 2dabbc5

Browse files
Update WSL setup to incude Zscaler (#127)
1 parent a486d9b commit 2dabbc5

1 file changed

Lines changed: 69 additions & 6 deletions

File tree

docs/guides/privileged_devices.md

Lines changed: 69 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -130,17 +130,80 @@ In this case, you may need to allow WSL to modify the Windows file permissions -
130130
1. Restart WSL for changes to take effect.
131131
132132
#### Proxy
133-
You will need to configure WSL to work around the proxy to avoid network conflicts.
133+
You will need to configure WSL to work around the Zscaler proxy to avoid network conflicts.
134134
135-
1. Create a `.wslconfig` file in your Windows profile directory (`C:\Users\<username>`) with the following content:
135+
This can be configured in the **WSL Settings** app. Open the WSL Settings app and set the networking mode to `Mirrored` with `Auto proxy enabled` set to `false`. Restart WSL for changes to take effect.
136+
137+
#### Zscaler
138+
Install the Zscaler root certificate into the WSL trust store so that TLS inspection does not break package managers and other tools running inside WSL.
139+
140+
This is not mandatory, however it will likely reduce the number of support requests to bypass TLS inspection for specific endpoints.
141+
142+
**1. Export the Zscaler root certificate from Windows**
143+
144+
1. Press `Win + R` and run `certmgr.msc`.
145+
1. Navigate to **Trusted Root Certification Authorities → Certificates**.
146+
1. Find the Zscaler certificate (often named `Zscaler Root CA`, `Zscaler Intermediate Root CA`, or a company-specific name).
147+
1. Right-click → **All Tasks → Export**.
148+
1. Choose **Base-64 encoded X.509 (.CER)** and save it somewhere accessible, for example:
136149
137150
```
138-
[wsl2]
139-
networkingMode=mirrored
140-
autoProxy=false
151+
C:\Users\YOURNAME\Downloads\zscaler-root.cer
141152
```
142153
143-
1. Restart WSL for changes to take effect.
154+
**2. Copy the certificate into WSL**
155+
156+
Inside WSL, run:
157+
158+
```
159+
cp /mnt/c/Users/YOURNAME/Downloads/zscaler-root.cer ~/
160+
```
161+
162+
**3. Install into the Ubuntu/Debian trust store**
163+
164+
1. Rename the file to `.crt`:
165+
166+
```
167+
mv ~/zscaler-root.cer ~/zscaler-root.crt
168+
```
169+
170+
1. Copy it into the CA certificates directory:
171+
172+
```
173+
sudo cp ~/zscaler-root.crt /usr/local/share/ca-certificates/
174+
```
175+
176+
1. Update the certificate store:
177+
178+
```
179+
sudo update-ca-certificates
180+
```
181+
182+
You should see output similar to:
183+
184+
```
185+
1 added, 0 removed
186+
```
187+
188+
**4. Verify**
189+
190+
Test that TLS is working:
191+
192+
```
193+
curl https://example.com
194+
```
195+
196+
If the connection succeeds without certificate errors, your certificate is installed correctly.
197+
198+
##### Node.js
199+
200+
Node.js does not use the system certificate store by default. Add the following to your `~/.bashrc` (or `~/.zshrc` if using Zsh):
201+
202+
```
203+
export NODE_EXTRA_CA_CERTS=/usr/local/share/ca-certificates/zscaler-root.crt
204+
```
205+
206+
Reload your shell or run `source ~/.bashrc` (or `source ~/.zshrc`) to apply the change.
144207
145208
#### Quick links
146209
- [Setup Docker Desktop](https://docs.microsoft.com/en-us/windows/wsl/tutorials/wsl-containers)

0 commit comments

Comments
 (0)