Blog

Konfigurieren Sie SSL für SonarQube unter Windows

Jesse Houwing

Aktualisiert Oktober 22, 2025
3 Minuten
In der Dokumentation zu SonarQube wird erklärt, wie Sie SSL konfigurieren, wenn Sie unter Linux arbeiten, und wie Sie die nativen Tomcat-Funktionen für eine einfache Testumgebung nutzen können. Es wird jedoch empfohlen, diese Funktionen nicht in einer produktionsähnlichen Umgebung zu verwenden.

SonarQube empfiehlt stattdessen die Verwendung eines Reverse Proxy, um Ihre Sonar-Installation zu sichern. Mit Hilfe von IIS und dem Url Rewrite-Modul ist die Einrichtung ein Kinderspiel.

Was Sie brauchen:

Nach der Installation und Aktivierung dieser Funktionen musste ich einen IIS-Reset durchführen und den IIS-Manager erneut öffnen, damit alle Funktionen funktionierten.

Als nächstes gehen wir die Schritte zur Konfiguration des Reverse-Proxys durch.
Der erste Schritt besteht darin, eine IIS-Website zu erstellen, die als Reverse Proxy fungieren wird.

addwebsite

Sofern Sie keine Kerberos-Authentifizierung vornehmen müssen, brauchen Sie keine Form der Authentifizierung auf Ihrem Reverse Proxy zu konfigurieren. Er sollte die Herausforderung von SonarQube weiterleiten, wenn Sie dort die Active Directory-Integration konfiguriert haben.  
Authentifizierung


Konfigurieren Sie die Bindung für die Verwendung von SSL und richten Sie die richtigen Hostnamen und das Zertifikat ein. Ich schummle ein wenig, indem ich das auf meinem Rechner installierte IIS Express Development Certificate verwende:
verbindlich

Als nächstes öffnen wir die URL-Umschreibungseinstellungen, um den Reverse-Proxy zu konfigurieren:
open-url-rewrite

Klicken Sie auf Regel hinzufügen, um eine neue Regel zu erstellen.
Regel hinzufügen

Und wählen Sie "Reverse Proxy" aus der Liste der Vorlagen:
selectreverseproxy

Geben Sie die URL des Zielservers ein (kann https://xebia.com/blog:9000 oder auch ein Remote-Server sein) und klicken Sie auf OK, um die Regel zu erstellen:
Unbetitelt

Hier müssen wir eine zusätzliche Servervariable hinzufügen, die wir zusammen mit der Anfrage an den anderen Server senden, um SonarQube mitzuteilen, dass er sich tatsächlich hinter einem Reverse Proxy befindet, der das SSL-Offloading für ihn durchführt:

Server-Variablen öffnen

Klicken Sie auf "Hinzufügen...", um die Servervariable zu erstellen:
Server-Variable hinzufügen

Fügen Sie die Servervariable"X_FORWARDED_PROTO" hinzu, damit das Rewrite-Modul diesen Header manipulieren kann:
Server-Variable hinzufügen

Die Variable sollte nun in der Variablenliste aufgeführt sein. Klicken Sie auf "Zurück zu den Regeln", um zur Liste der Regeln zurückzukehren:
zurück zu den Regeln

Bearbeiten Sie die URL-Rewrite-Regel, die Sie gerade erstellt haben:
Regel bearbeiten



Erweitern Sie den Abschnitt Servervariablen in der Regeldefinition:
Server-Variable bearbeiten

Fügen Sie den"X_FORWARDED_PROTO"-Header hinzu, den Sie im vorherigen Schritt zugelassen haben, und geben Sie ihm den Wert"https":
Kopfzeile hinzufügen

Wenden Sie die Änderungen an:
Änderungen anwenden

Jetzt sollten Sie in der Lage sein, über SSL auf SonarQube zuzugreifen. Möglicherweise möchten Sie die ursprüngliche SonarQube-Instanz so konfigurieren, dass sie nur Datenverkehr von Ihrem Reverse-Proxy oder nur Datenverkehr von localhost über die Windows Firewall akzeptiert.

Verfasst von

Jesse Houwing

Jesse is a passionate trainer and coach, helping teams improve their productivity and quality all while trying to keep work fun. He is a Professional Scrum Trainer (PST) through Scrum.org, Microsoft Certified Trainer and GitHub Accredited Trainer. Jesse regularly blogs and you'll find him on StackOverflow, he has received the Microsoft Community Contributor Award three years in a row and has been awarded the Microsoft Most Valuable Professional award since 2015. He loves espresso and dark chocolate, travels a lot and takes photos everywhere he goes.

Contact

Let’s discuss how we can support your journey.