Gerencia automaticamente a lista de permissões (por exemplo, em tinyproxy) de IPs dinâmicos?

1

Eu tenho um VPS que executa o tinyproxy para uso privado e outro que executa o nginx para desenvolvimento. Existe um protocolo / daemon que eu possa usar para automatizar a lista de permissões do meu IP dinâmico ? Então, o tinyproxy só aceita conexões de e o nginx só serve para o meu IP.

Agora eu uso um subdomínio, como 123.123.0.0/16 , mas isso ainda parece vulnerável, e às vezes meu ISP, apenas para mexer comigo, muda o segundo quad.

Estou a pensar que posso fazê-lo através de um script bash, iptables e noip, mas estas são as minhas preocupações:

  • Dependência de serviços de terceiros.
  • Precisarei de vários nomes IP dinâmicos (e, portanto, possivelmente, uma conta paga) para vários dispositivos (residencial, comercial, celular, tablet).
  • Ponto adicional de falha; se o noip cair, ficarei sem acesso.

Eu tive a ideia hoje de escrever um daemon para automatizar isso, acho que poderia ser um exercício divertido, mas não quero reinventar a roda.

Veja como eu estava pensando que deveria funcionar. Se não houver uma única solução, talvez parte disso já esteja concluída:

  • Uma seção entre colchetes nos arquivos de configuração que é reservada pelo programa. Por exemplo, em tinyproxy.conf :

#!-autowhitelist section-do not change anything below this--

allow 123.123.123.123 allow 123.123.123.124

#-!-autowhitelist section-do not change anything above this--

  • O servidor é executado em uma porta, aceitando todas as conexões. .
  • O cliente se conecta a essa porta, solicita o registro.
  • O servidor executa a autenticação (via desafio-resposta de chave pública pré-armazenada)
  • Se autenticado, varre o tinyproxy.conf e substitui as linhas de permissão com os últimos clientes únicos n (configuráveis) a serem registrados.
  • Executa service tinyproxy reload (o que deve honrar as conexões existentes que eu acho).
  • Como alternativa, poderia modificar as regras para iptables , mas ainda não considerei qual seria a melhor solução. A lista de permissões no nível do sistema é provavelmente mais segura e robusta, mas o nível de configuração é mais flexível e permite o registro em log, etc.

O programa do servidor pode ter scripts dinâmicos que podem lidar com diferentes formatos de arquivos de configuração (um para tinyproxy, um para nginx, talvez até um para sshd se eu estiver me sentindo aventureiro, etc.).

Quaisquer pensamentos, falhas de segurança que você possa ver nisto?

    
por joe_dohn 21.03.2016 / 19:23

0 respostas