Como enviar um script do servidor para ser executado no cliente?

Como enviar um script do servidor para ser executado no cliente?

Tenho um dispositivo ao qual não consigo mais me conectar (ssh, salt, ...), não tenho acesso físico fácil - mas que ainda abre uma sessão OpenVPN no meu servidor. Para tentar recuperá-lo, gostaria de:

  • no servidor força uma reconexão para este cliente
  • quando o cliente se reconectar - envie um script que o cliente executaria (primeiro eu daria uma olhada no que está acontecendo por meio de um despejo de logs e configurações e, em seguida, possivelmente recuperaria as configurações corretas)

Existem soluções parascripts a serem executados no cliente assim que ele se conectarmas todos assumem que esta é a escolha do cliente (= a configuração está no lado do cliente). Estou procurando o contrário.

Posso ver que existe um problema de segurança nessa abordagem (o provedor de VPN pode assumir o controle da máquina cliente), mas talvez haja uma maneira que não seja óbvia na documentação?

Responder1

Para forçar o cliente a se reconectar, você pode:

  • descarte o endereço IP de origem específico e a combinação de porta de origem usandotabelas de ipemSAÍDAcadeia, ou endereço de destino e porta de destino emENTRADApor um período de tempo maior que o intervalo de reinicialização do ping,
  • mate o cliente especificado na interface de gerenciamento do OpenVPN:Veja aqui
  • reinicie o serviço OpenVPN no servidor, todos os itens acima forçarão uma nova troca simétrica de chaves, novos soquetes e um novo número de porta dst.

Por que você não pode executar um script:

  • você está sem sorte aqui. Os scripts são configurados e devem estar localizados no lado do cliente, AFAIK, mesmo o ccd do OpenVPN não permite isso, a diretiva de configuração "pull" adequada também é necessária no lado do cliente - para permitir que o servidor extraia as opções de túnel mais básicas, como: cifra , tamanhos de buffer, compactação, rotas etc., mas não as diretivas de configuração de script.
  • na configuração padrão, o OpenVPN funciona sem privilégios de ninguém,
  • isso seria uma falha de segurança.

informação relacionada