iptables entrada de porta NAT e Apache log IPs

2

Graças ao quanta, agora posso usar o iptables para encaminhar o SSH para servidores atrás do firewall usando um único IP e várias portas - pergunta original aqui .

No entanto, se eu usar essa técnica para encaminhar o tráfego HTTP para um servidor Apache fora da LAN do firewall, o IP que é carimbado no log do Apache é o firewall, não o IP do PC que fez a solicitação original.

Existe alguma para mudar isso, ou existe outro campo que eu preciso no log do Apache para capturar esta informação?

    
por jetboy 01.11.2011 / 23:15

1 resposta

2

Você precisa de um dispositivo da Camada 4 (como o squid, o apache no modo proxy ou um balanceador de carga dedicado, como F5 ou Netscaler), se desejar obter informações sobre o host original que está fazendo a solicitação. Se você fizer uma conversão NAT direta, todas as solicitações aparecerão (corretamente) como sendo do host com o endereço IP público que está se conectando ao servidor.

Um dispositivo ou servidor da Camada 4 pode adicionar um Via: , X-Forwarded-For: ou outro cabeçalho arbitrário à solicitação HTTP para o servidor. O servidor pode então (se desejar) usar essa informação sobre o cliente original. O Netscaler (Citrix) publica um plugin Apache que permite reescrever o pedido do apache com o valor do cabeçalho HTTP arbitrário, por exemplo.

Consulte o link para obter mais informações sobre o cabeçalho Via: e quais informações reais estão anexadas.

    
por 01.11.2011 / 23:32