Configurações do Linux VPS para permitir que o $ _SERVER ['REMOTE_ADDR'] obtenha o ip do cliente [fechado]

1

Eu tenho o servidor VPS não gerenciado. Estou tentando obter o formulário IP do cliente PHP $_SERVER['REMOTE_ADDR'] mas sempre me dá o mesmo para todos os usuários que é o IP interno do servidor.

Eu fiz alguns R & D e tenho firewall no servidor fazendo isso, então eu verifiquei mesmo no meu outro servidor VPS, mas aqui está dando IP cliente correto. Agora eu tenho certeza que haverá algumas definições de configuração no meu primeiro VPS também que podem me dar o IP do cliente correto.

Por favor, deixe-me saber qual configuração eu tenho que fazer no servidor para obter isso.

EDITAR

Uma vez que a diferença eu notei -

No VPS 1, onde ele está tendo porta ssh não padrão 27560. Outros podem ser acessados pela porta 22.Não tenho certeza se isso está criando problema aqui. Por favor sugira.

    
por Hello Python 13.11.2014 / 07:39

1 resposta

1

Não tenho certeza sobre qual firewall você está usando, mas parece que ele está intermediando o tráfego da web por conta própria. Se estiver atuando como proxy, pode estar configurando a variável $ _SERVER ['HTTP_X_FORWARDED_FOR']. Se esse for o caso, você pode verificar se está definido e, se for, use isso. Caso contrário, volte para o REMOTE_ADDR.

Note também que o IP do cliente pode ser falsificado com bastante facilidade, então espero que não seja crítico obter o IP correto em todos os casos (ou seja, espero que a segurança em particular não dependa somente disso).

    
por 13.11.2014 / 07:58