Apache tiene la solución:
Código apache:
Ver originalOrder deny,allow
Deny from all
Allow from XXX.XXX.XXX.XXX
ErrorDocument 403 /mantenimiento.html
<Files mantenimiento.html>
Allow from all
</Files>
Donte XXX.XXX.XXX.XXX sería tu IP (puedes agregar más) que sería la única a la que permitiría navegar libremente. Todo lo demás se va a
mantenimiento.html