Redirecionamento e hostname

1

É possível, em uma máquina local linux, forçar todas as solicitações na porta 443 em direção a um nome de host (definido em / etc / hosts) para usar outra porta?

Exemplo: Se o meu navegador tentar obter o link , será host.domain.org:666 que será contatado.

Eu sei que existem algumas extensões de navegador, mas estou procurando uma solução no nível do sistema.

Devo usar o iptables?

UPDATE:
Esse host é um portal frontal da minha empresa e expõe uma dúzia de portas, cada uma delas é um redirecionamento em um servidor HTTPS de volta. Por exemplo:

  • link leva a um servidor zimbra
  • link leva a um servidor GLPI
  • etc

Até agora, eu costumava usar uma extensão para o cromo (chamado switcheroo) que redireciona um URL de acordo com o padrão. Então escrevi uma linha no meu / etc / hosts assim:

ip_of_the_portal    zimbra.mydomain.org glpi.mydomain.org

E nas minhas extensões, escrevi algumas regras como esta:

"https://zimbra.mydomain.org" -> "https://zimbra.mydomain.org:1001"
"https://glpi.mydomain.org" -> "https://glpi.mydomain.org:1002"

Assim, toda vez que um colega me fornece uma URL para o Zimbra, meu navegador concatena automaticamente ": 1001" e tudo está funcionando bem.

O problema que encontro é sobre um complicado servidor web (digamos, disponível na porta 1002 do portal PAT público) que fornece alguns redirecionamentos HTTP em respostas a solicitações, e minha pequena extensão é incapaz de lidar com isso e ignora minhas regras .

    
por Guid 01.12.2014 / 14:08

1 resposta

1

Ok, em vez de fazer algo muito complicado ou impossível, eu escrevi uma extensão do cromo que altera o cabeçalho HTTP "Host" de cada solicitação.

O problema é que o servidor Apache lê o cabeçalho HTTP "Host" para tomar alguma decisão. Como estou vindo do lado de fora da empresa via um PAT, esse cabeçalho é "host: port" e quando o Apache vê uma porta desconhecida nesse campo, ele envia um 302 para redirecionar ao invés da página solicitada.

Para contornar esse problema, minha extensão remove a ": port" do cabeçalho HTTP do host e o servidor Apache retorna a página correta.

Obrigado a todos que leram e responderam a minha pergunta inicial idiota:).

    
por 01.12.2014 / 17:32