O site de negócios hospedado publicamente (para APIs, etc) precisa ser acessível APENAS de dentro do escritório?

1

Agradecemos sua paciência com essa pergunta; ainda aprendendo muitas coisas.

A minha start-up de reserva da Taxi tem um website (CakePHP) hospedado na EC2 (para confiabilidade), que é um tipo de ERP usado apenas por funcionários internos. Essa ferramenta também interage com os receptores GPS da Cabs / Taxis, pois essas máquinas GPS enviam alguns dados para o servidor público por meio de algumas APIs que ajudam a decidir a lógica do processo de Reserva. E como não temos uma rede muito strong nas instalações, mantivemos tudo no EC2.

Agora, estamos cada vez mais preocupados em deixar informações (dados de clientes, informações sobre veículos) como essas, de domínio público, e acessíveis pela internet e fora das instalações por um funcionário mal-intencionado. Para nossa implementação, a replicação do MySQL já foi considerada quando lemos de um escravo local, escrevemos para o mestre e etc. O único problema é que não há como funcionários não técnicos saberem se os dados são novos ou se a replicação está quebrada . Além disso, preferimos nossos servidores on-line, pois não queremos investir em segurança física para esse hardware.

Estamos pensando no seguinte:

  1. autenticação baseada em endereço IP; aqueles que pertencem ao NAT local seriam permitidos. O problema é que temos um IP dinâmico.

  2. Autenticação baseada em nome de computador / MacID; quase sem segurança, uma vez que o usuário descobre. Além disso, podemos ler esses parâmetros do Chrome?

  3. Armazenando uma lista de endereços IP que fazem login e, como há apenas 6 funcionários, poderíamos monitorá-lo quanto a IPs estranhos. Não escalável ou mesmo seguro.

  4. A configuração do arquivo de hosts no PC do funcionário e esse "host" seriam configurados no apache2, portanto, atingir diretamente o endereço IP não seria bom. Mais uma vez, precisa de um funcionário inteligente.

  5. Roteamento baseado em SSH para o servidor principal com acesso apenas a partir do host local no servidor principal ... mas não é possível configurar isso.

Ajude-nos!

    
por kouton 25.12.2011 / 07:57

2 respostas

1

Como alguém o indicou, use um serviço VPN e a autenticação baseada em endereço IP pode ajudar.

    
por 25.12.2011 / 10:09
0

Aqui está como eu faria isso. Eu obteria duas interfaces de rede, digamos eth0 e eth1 (ou crie uma interface virtual eth0: 1). A eth0 terá um IP público, enquanto a eth1 terá ip da VPN. Agora você pode configurar o iptables ou qualquer outro firewall que você esteja usando para permitir tudo, desde eth1, mas eth0 deve ter todas as portas bloqueadas, exceto para a API.

    
por 28.12.2011 / 12:56

Tags