Making the Shell
The main part of the punching bag is the shell. You have a couple of options about obtaining one. If you are going for a more finished looks, you can purchase an actual punching bag shell from a sports equipment store. If you are trying to save money, an army rucksack can be bought at an army surplus store. They will be different textures (leather vs. the linen rucksack), but you shouldn't feel much difference in its use.
Weighting the Bag Down
The next step is to weight your bag. The easiest thing for this is to get play sand from any home improvement store. Place your sand on plastic tarp, and roll it into a ball that will fill the bottom of your casing. Make sure you roll it in several layers as you don't want it to rupture from use and spill sand all over the casing. Also, do not use concrete mix in lieu of sand. Though it starts out the same consistency, eventually the humidity around the concrete will cause it to harden, making the bag heavier.
Filling the Bag
After you add the weight the bag, you will want to fill it to give you a punching surface. There are a few ways to do this. The best way is to get a piece of foam from a fabric store and line the edge of the bag with it. This will give you a nice, even surface to punch. Once you have the foam in place, fill the rest of the bag with as many old shirts and rags as the bag will hold. Once you have packed the bag tightly and closed it, weigh it again. If the bag is too light, meaning it will move very easily, add another ball of sand to the bottom.
Hanging the Bag
Find a beam in your ceiling that will support the weight, and attach a hook to it. Then attach a heavy-gauge chain to the bag, and hang it from the hook. The top of the bag should be at your eye level, and you should be able to hit the bag if you punch straight out.