Re: only for logged in members
You could look at using functions like:
groups_is_user_member( $user_id, $group_id )
To test if the user is in a specific group, and only show the page if they are in the appropriate group. This is defined in bp-groups.php.
bp_is_member()
To simply check whether the current user is a member (and logged in). This is defined in bp-core-templatetags.php
There is also a group blogs plugin: https://buddypress.org/community/groups/bp-groupblog/
I don’t know if this can be adapted to implement the private pages for your group members.
Cheers, Roger