# TSL x509 Zertifikatsfehler in WSL beheben

## Worum geht es

Wenn innerhalb eines Linux-Systems unter WSL (Windows Subsystem for Linux) Daten
heruntergeladen werden und eine Fehlermeldung ähnlich dieser erscheint:

```
tls: failed to verify certificate: x509: certificate signed by unknown authority
```

liegt die Ursache häufig darin, dass der Windows-Host in einem Firmennetzwerk
(Corporate LAN) betrieben wird. Dort kommen oft Proxy- oder
SSL-Inspection-Technologien (z. B. Zscaler, Cisco Umbrella, Palo Alto,
Cloudflare etc.) zum Einsatz, die den gesamten HTTPS-Verkehr prüfen.

Dabei ersetzt der Proxy die originalen Zertifikate durch ein
unternehmenseigenes Root-Zertifikat. Windows vertraut diesem in der Regel
automatisch – WSL bzw. das darin laufende Linux jedoch nicht.  
Die Verbindung wirkt dadurch wie eine klassische Man-in-the-Middle-Situation,
ist in diesem Kontext jedoch beabsichtigt.

## Fehler beheben

Damit Befehle wie `npm install`, `go install` oder `curl` wieder funktionieren,
muss das Unternehmens-Root-Zertifikat aus Windows exportiert und in den
Linux-Trust-Store importiert werden.

### 1. Zertifikat unter Windows exportieren

Zertifikatsmanager öffnen:

```
Win + R → certmgr.msc
```

Dann navigieren zu:

```
Trusted Root Certification Authorities → Certificates
````

[![](https://wiki.zn80.net/uploads/images/gallery/2026-02/scaled-1680-/image-1771416419927.png)](https://wiki.zn80.net/uploads/images/gallery/2026-02/image-1771416419927.png)

Das Unternehmenszertifikat auswählen →  
**Rechtsklick → All Tasks → Export → Click Next → Base-64 encoded X.509 (.CER)**

[![](https://wiki.zn80.net/uploads/images/gallery/2026-02/scaled-1680-/image-1771416460242.png)](https://wiki.zn80.net/uploads/images/gallery/2026-02/image-1771416460242.png)

Die Datei beispielsweise unter `C:\temp\corp-root.cer` speichern.

### 2. Zertifikat in WSL installieren

In WSL ist das Windows-Laufwerk unter `/mnt/c` erreichbar:

```bash
sudo cp /mnt/c/temp/corp-root.cer \
        /usr/local/share/ca-certificates/corp-root.crt
````

> Wichtig: Die Datei sollte die Endung `.crt` haben.

Anschließend den Trust-Store aktualisieren:

```bash
sudo update-ca-certificates
```

### 3. Funktion prüfen

```bash
curl https://proxy.golang.org
```

Wenn hier viel Text ausgegeben wird und keine Zertifikatsfehler mehr erscheinen, sollte auch die Installation von Paketen wieder problemlos funktionieren.