Se você precisar restringir o conteúdo com base na origem dos visitantes do site, use essas informações como o controle de acesso primário (e não apenas o nome do recurso que você está tentando proteger).
Com o Apache 2.2, seria o Allow
Directiva.
<VirtualHost *:443>
ServerName private-foo
<Location />
Order Deny,Allow
Deny from all
# Allow from the internal subnet 10.1.2.0/24
Allow from 10.1.2
</Location>
...
Geralmente, em seu cenário, um servidor teria um endereço IP interno e um endereço IP público e, como os usuários internos só usariam esse endereço IP interno, você ligaria o host virtual apenas a esse IP interno, por exemplo, <VirtualHost 10.1.2.3:443>
em vez de ouvir todos os IPs
Além disso, sua observação em relação ao .htaccess acionou minha implicância, citada no manual no .htaccess arquivos:
You should avoid using .htaccess files completely if you have access to httpd main server config file. Using .htaccess files slows down your Apache http server. Any directive that you can include in a .htaccess file is better set in a
Directory
block in the main Apache configuration file(s), as it will have the same effect with better performance.