Can I block an entire site from public and only allow confirmed members to access a site?

I want to block entire site to public but have just from page have a sign up "request permission for access" and some type of log in for others who i authorize access to. I can't seem to figure this out with the membership plugin. should i be doing this another way?