Proxy https rápido e pequeno em C ++

1

Estou procurando um proxy https pequeno, rápido e confiável que eu possa estender para fazer o seguinte:

  1. Procure por solicitações de handshake https.
  2. Execute uma expressão regular no nome do host que está sendo solicitado.
  3. Se a expressão corresponder ao nome do host, não envie a solicitação, mas responda com um redirecionamento 302 para um site diferente.

Então, eu acho que tenho as seguintes perguntas sobre isso:

  1. Isso é possível? (Tenho certeza que o pedido de handshake não é criptografado, eu sei que posso fazer algum padrão de correspondência, a verdadeira questão é ... eu seria capaz de enviar um falso redirecionamento 302 para o cliente sem reclamar sobre não ter completado o aperto de mão?)

  2. Se for possível, existe um aplicativo linux lá fora que faz parte disso ou tudo isso? (Eu encontrei isto: link ) Eu estava pensando em construir os recursos restantes nele, mas não queria tentar se alguma outra coisa já faz isso.

  3. Você tem sugestões para outros proxies do C ++ Linux em que eu possa construir isso?

Agradecemos antecipadamente pelo seu feedback.

EV

    
por exvance 27.03.2012 / 08:52

2 respostas

1

3: Do you have suggestions for other C++ Linux proxies I might be able to build this into?

squid é um proxy de código aberto rápido que você pode estender ao conteúdo do seu coração

    
por 27.03.2012 / 15:27
0

Isso também não é possível, a menos que por "URL" você queira dizer "hostname". A extensão Indicação do nome do servidor permite que o cliente indique o nome do host ao qual está tentando se conectar. Muitos navegadores agora suportam o SNI . Mas o URL completo não é transmitido até que o handshake seja concluído.

Você pode dizer a diferença entre https://www.example.com/ e https://other.example.com/ , mas não entre https://www.example.com/one e https://www.example.com/another .

Talvez se você explicasse exatamente por que acha que precisa fazer isso, alguém poderia encontrar uma solução.

    
por 27.03.2012 / 09:09

Tags