Well I tried finding scripts to prevent player camera going through the wall but no result.
The camera blocks at the walls always. So either you have turned collision off or put a script in it. The camera block at wall is a default setting.
A Camera with a Custom CameraType and a Humanoid as a CameraSubject automaticaly does what you want to visible and CanCollidable objects.