post acces for guests / unregistered users only

You’ll definitely need custom code for this. Understanding how to create custom queries via WP_Query() will be immensely helpful. You will also need to modify the ‘perm’ parameter for WP_Query() to change the results based on user permissions.

https://codex.wordpress.org/Class_Reference/WP_Query
https://codex.wordpress.org/Class_Reference/WP_Query#Permission_Parameters

If the native WP_Query parameters still don’t give you exactly what you’re looking for you may need a custom filter to run after the query to remove posts from the result set based on an is_user_logged_in() check.