I’m assuming that you’re talking about water leaking in during a rain while the port is open and not water leaking in around the port. If so then they need to be re-bedded with butyl tape, not silicone. I think butyl tape is best and I’ve had great success with the stuff but then every sailor seems to have his or her own “religion” when it come to sealing port lights.
If however your talking about rain leaking in though an open port then, yes, I installed slightly smoked acrylic shields above all of the opening ports years ago and they worked out very well. They are the kind that glue on to the cabin exterior wall with special tape. The only time a little water has come in was during a pounding rain when the water was bouncing off the deck and up under the shields but that is very rare. Otherwise in most rain storms they keep the water out but let the air in. I even keep my head port open when I leave the boat to air it out when I’m gone. I included the link below but not sure if this is the exact brand I installed although it looks just like it. I found them in an ad at the back of SAIL magazine. If you do install them keep two things in mind. One, the exterior cabin wall needs to be really clean so the tape will adhere well. Second, when using the special tape you reall get only one shot at it. That stuff sticks fast and is difficult to pull off if you want to re-position the shield.
Here’s the link:
https://seaworthygoods.com/collections/portvisor
Also attached a phot of them on my 32-3.