Bathing ferrets is sometimes necessary but is often over practised by owners. Owners of particularly smelly ferrets may think that by bathing their ferret regularly they can eliminate any odours. All that this normally does is make the problem worse as bathing tends to dry out the skin and coat, leading to the ferret producing more oils to compensate. If your ferret hasn't been neutered then that will likely be the cause of most of the smell.
Unless your ferret rolls/steps in something unpleasant then it shouldn't really be necessary to bath your ferret more than twice a year. Some people do say that every couple of months is fine, but personally I think this is far too frequent.
You need to have a gentle shampoo, one designed specifically for ferrets if possible. I'm currently using 'Beaphar squeaky clean Rodi shampoo' suitable for small animals including guinea pigs, hamsters (personally I've never bathed any of my hamsters but there you go) rabbits and ferrets. You will also need a suitable object to bath them in such as a sink or bathtub. Personally I wouldn't use the sink as they are very skilled climbers, mine can climb out of the bathtub so can certainly climb out of a sink! Obviously sinks are fairly high, which would create a fall hazard. I bath mine in the tub, with a couple of inches of warm water in the bottom. If you have a non slip mat then that would help the ferret feel safer and reduce the risk of accidents.
If you are bathing your ferret(s) for the first time then I would try to make it as fun as possible with toys, perhaps buy a waterproof toy just for bath time? It's handy to place something in there for your ferrets to stand on if they want to come out of the water at any point, I use a large Tupperware container. Adding some kind of weight to the container will make for a more stable 'raft'.
Particularly if you have a longer coated ferret such as an angora you will be best to gently brush your ferret before the bath using a brush designed for small animals (soft bristle brushes are best, please don't use slicker brushes as these are best for dogs and can cause injury if used improperly) as any knots that are in the coat will tighten on contact with water (just the same as our hair) and be even harder to remove after the bath! This is a valuable piece of information I've learnt from my time working as a dog groomer.
To start, place the ferret (I would do this one ferret at a time) in the bath, and give it a couple of minutes to check everything out. I would then start to gently scoop water onto its back. For my two older boys I use the shower head to wet them and to rinse as it is far quicker, but this can be a scary experience so you may need to build up to this gradually. My boys enjoy sticking their heads underneath the spray before running off, then returning to do the same again a few minutes later!
Whether you are scooping water onto them or using a shower hose I would start at the back, the same as you would with a dog. This is far less stressful than if you were to start at the head, your ferret wouldn't know what was going on! Starting from the back gives them time to gradually get used to the feeling and the sounds.
Once your ferret's coat is completely saturated you can then work a small amount of shampoo into a lather on their coat. With ferrets I don't tend to wash the head as such. I may dampen it with water but I certainly don't shampoo it. Their heads are far too small I believe to bath without getting soap in their eyes, ears and mouth, so usually only shampoo up to the neck. Aside from the worry about the shampoo, having water splashed in your face cannot be a terribly nice experience! Gentle baby wipes are useful for wiping over a mucky face.
Once your ferret has been lathered up you can rinse it off. This is the most important part of the bath, you need to remove all that soap to prevent irritation and even skin problems that may occur if left in. It may be helpful to do a water change or two so that you can easily see when the bubbles stop appearing in the rinse water and when the water starts to run clear. Another way to check if the coat has been rinsed thoroughly is if it 'squeaks' when you run your hand down it. If you're unsure as to what I mean run your hands over your rinsed hair the next time you wash it, it should sound squeaky, which is normally an indication that all the soap has been removed.
Have plenty of towels ready as your ferret will try to roll in/on anything available to dry off! I've had them try to climb up my trouser leg to dry off before! Try to bath your ferret on a warm day/when you have the heating on to prevent it getting a chill. If you have outdoor ferrets then I wouldn't suggest putting them back until they have dried off thoroughly, which doesn't take too long.
Hopefully I've provided you with enough information, of course if you do have any questions then please feel free to comment below and I will try to answer them for you!