With 123D Circuits.io you can generate a custom enclosure for your PCB.
Step 1: Make a PCB
First you have to design a PCB and add drill holes. At these locations, the tool will generate support points in the enclosure. If you resize your PCB, the enclosure will resize as well.
Step 2: Generating the enclosure
Go to your project page and click on "generate enclosure" button.
Step 3: Editing your enclosure
You will be redirected to the OpenJSCAD.org website which is used to turn the solid geometry in a file format you can use for 3D printing or CNC milling.
Step 4: Generate the STL
Click on "generate stl" to get a downloadable STL file that you can use for 3D printing or CNC milling.