Posso restringir o acesso a um site da apache a um cliente cujo endereço IP esteja em um ISP que aloca endereços IP via DHCP?

2

Eu tenho um site que quero usar para fins administrativos. Eu preciso ter certeza de que apenas pessoas de certas máquinas podem fazer logon. O problema é que eles estão em redes ISP. Eu vou realmente obter o endereço IP correto para usar a partir de um comando ip / ifconfig, ou devo me preocupar com NAT sendo usado pelo provedor?

    
por Excalibur2000 12.02.2014 / 23:35

2 respostas

6

Você está Fazendo errado meu amigo.

Além do NAT local e do "Carrier-Grade NAT" (que significa as informações que você recebe de ifconfig em sistemas clientes pode ser um endereço privado que você não pode usar nas listas de acesso do seu servidor), a segurança baseada em IP é uma farsa: ISPs podem mudar atribuições de rede pública, usuários finais podem estar em IPs dinâmicos, ou alguém pode falsifique o BGP e passe pela sua segurança.

Se você quiser proteger adequadamente seu site, minhas recomendações serão:

  1. SSL com autenticação de certificado mútuo
    Muito seguro, suportado por praticamente todos os navegadores, mas um pouco difícil de administrar porque você precisa emitir certificados de clientes para todos os seus usuários e explicar como instalá-los (e os certificados estão vinculados às máquinas que você instalou para que os usuários não consigam fazer login na casa da vovó).
    Vale a pena se você precisar de segurança.

  2. SSL e autenticação de dois fatores
    Usando algo como o Google Authenticator, além de um nome de usuário / senha, dando aos seus usuários autenticação real de dois fatores (algo que você sabe - nome de usuário / senha e algo que você tem - o dispositivo com o autenticador sendo executado). Isso pode exigir um pouco de trabalho de sua parte, seja em seu aplicativo ou no servidor com algo como mod_auth_external , mas é uma segurança muito boa: não sofre as limitações da autenticação de certificado mútuo e é quase impossível para a força bruta.

  3. SSL e nome de usuário / autenticação de senha
    Apenas tão seguro quanto o nome de usuário / senha, mas é por isso que temos boas políticas de senha.
    Isso é suscetível a ataques de força bruta, portanto, as técnicas de mitigação precisariam ser empregadas.

por 13.02.2014 / 00:00
0

A maneira mais fácil de determinar isso é executar o seguinte no sistema que você planeja permitir o acesso.

lynx ipchicken.com

Se corresponder ao seu ifconfig, você deve estar pronto. Se não, e é um roteador doméstico, você estará confiando nas máquinas atrás do roteador de indivíduos. Outra maneira de fazer isso é exigir vpn com credenciais e disponibilizar apenas esse site dentro de sua rede. Então você poderia exigir chaves ou um certificado.

    
por 13.02.2014 / 00:01