Howto: Make Hudson HTTPS (Windows)

August 16, 2010

I am assuming you have installed hudson as a service in windows and that hudson lives in C:\hudson

Use a tool called Portecle to import your valid cert and export it as a java keystore file (.jks).  Remember to use THE SAME PASSWORD FOR ALL PROMPTS IN THAT PROGRAM (or you will run in to issues down the road). Save your .jks file (and any other files it generates like .keystore, etc) to the same path as hudson.xml is located (in this example i saved it to C:\hudson\mycert.jks)

To modify the hudson windows service to use https you must modify hudson.xml and then restart the hudson service in windows, below is what the hudson.xml file looks like in My environment:

(this file was located at C:\hudson\hudson.xml on a sever i am hosting)

… from line 31


hudson
Hudson
This service runs Hudson continous integration system.


java
-Xrs -Xmx256m -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle -jar "%BASE%\hudson.war" --httpsPort=9999 --httpsKeyStore="%BASE%\mycert.jks" --httpsKeyStorePassword=(PASSWORD REMOVED)


rotate

Obviously replace “(PASSWORD REMOVED)” with whatever password you used in Porticle.  Please note, in this example i was running hudson https on port 9999.