Well, they do and don't. Depends on your point of view. Here's the story.
Quantum field theory requires for consistency reasons that every charged particle has its antiparticle. It also tells you what properties will the anti-particle have: it will have the same characteristic from the point of view of space-time (i.e. Poincaré group) which means equal mass and spin. And it will have all charges of opposite sign than a matter particle.
If the particle is not charged then QFT doesn't impose any other constraint and so you don't need antiparticles for photons (since they are not charged). But you can still consider the same operation of keeping mass and spin and swapping charges and since this does nothing to photon, you can decide to identify it with an antiphoton. Your call.