1) Use a ACL incorporada do Joomla!
Eu recomendo colocar os visitantes em uma página de login e usar a ACL interna do Joomla! Usando usuários registrados.
Defina um item de menu de nível superior com permissões para usuários registrados - e cada item de menu nessa árvore estará visível e disponível apenas para usuários registrados.
Há um excelente tutorial sobre ACL no Joomla! Docs.
No entanto, arquivos e documentos ainda podem ser baixados por usuários não registrados (ou seja, se eles tiverem o link direto).
Nesse caso, você precisará usar uma extensão de terceiros, se desejar proteger esses documentos, como Akeeba Release Systems ou SobiPro.
2) Diretórios protegidos por senha
A maneira 'mais simples' de proteger seu site é Proteger com senha o seu diretório via .htaccess /
É deselegante, mas se você usar o cPanel, por exemplo, vá para Segurança -> Diretórios Protegidos por Senha e use o assistente para nomear diretórios, adicionar ou remover usuários e atribuir esses usuários ao Diretório Protegido por Senha - você pode dar a cada usuário um nome exclusivo e senha.
É deselegante, mas simples e usado com bastante frequência na prática - no entanto, reitero, provavelmente é melhor usar o ACL e, se proteger os documentos do download, uma extensão de terceiros.
Se você mantiver seus arquivos / documentos no diretório Protegido por Senha, eles também serão protegidos - exigindo que um usuário com permissões tentando acessar esse diretório faça login primeiro.