Fácil. Basta definir algo como isso na sua configuração principal ou na sua configuração virtual:
<Directory /var/www/path/to/your/web/documents>
Order Deny,Allow
Deny from all
Allow from 127.0.0.1 ::1
Allow from localhost
Allow from 192.168
Allow from 10
Satisfy Any
</Directory>
A <Directory></Directory>declaração basicamente diz: “Use essas regras para qualquer coisa neste diretório. E por "este diretório" que se refere ao /var/www/path/to/your/web/documentsque defini neste exemplo, mas deve ser alterado para corresponder ao caminho do diretório local do seu site.
Em seguida, na <Directory></Directory>área em que você está alterando o comportamento padrão do Apache, que Allowé tudo por padrão para Order Deny,Allow. Em seguida, você define Deny from allde nega acesso de todos. Seguem as Allow frominstruções que permitem o acesso de 127.0.0.1 ::1(endereço IP do host local), localhost(o próprio host local). Esse é todo o material padrão. Como o acesso a partir localhosté necessário para muitos processos internos do sistema.
O que segue é o que importa para você.
O Allow fromfor 192.168e também 10permitirá o acesso de qualquer / todos os endereços de rede dentro do intervalo de rede prefixado por esses números.
Portanto, indicando 192.168que basicamente significa se um usuário tem um endereço como 192.168.59.27ou 192.168.1.123ele poderá ver o site.
E da mesma forma usando o Allow frompara os 10assegura prefixo que, se alguém tem um endereço IP de 10.0.1.2ou até mesmo 10.90.2.3que eles serão capazes de ver o conteúdo.
Praticamente todas as redes internas do mundo usam o 192.168alcance ou algo assim 10. Nada externo. Portanto, o uso dessa combinação alcançará seu objetivo de bloquear o acesso ao mundo exterior, mas apenas permitir o acesso a partir da sua rede local.