For squirrels, I sprinkle ground cayenne pepper around the plants in the containers (and in the ground if they start digging there). They HATE the hot pepper, and usually learn to avoid that area. If they forget, I simply remind them with a bit more! If they are way to adamant about digging and destroying my plants, I cut chicken wire and put it in the pots. And I cut a couple of the wires and point them upward so the little bushy-tailed tree rats get poked in the nose when they decide to check it out!
As for rabbits, usually the stray cats and the redtail hawks have handled the situation for me. The few times they failed their duties, I sprayed some nasty, smelly, animal repellent around. I use Liquid Fence Deer & Rabbit Repellent...smells like disgustingly very rotten eggs! It works though!
And for stray cats that come around to try to prey on birds, or to use parts of my garden as a litterbox, I spray a little cider vinegar around those areas, and the cats stay away!