BuddyPress Private Community allows the site owner to lock the different BuddyPress components on the site for non-logged-in users.