O cabeçalho 'Servidor' serve para algum propósito?

11

Por exemplo, quando despejo o cabeçalho de resposta do meu servidor, recebo:

Server: Apache/2.2.11 (Ubuntu) PHP/5.2.6-3ubuntu4.5 with Suhosin-Patch mod_ssl/2.2.11 OpenSSL/0.9.8g

Isso é usado para alguma coisa? É um risco de segurança (embora pequeno) transmitir a composição do servidor?

DisgruntledGoat
fonte

Respostas:

15

Não, não é usado para nada importante. ( As pesquisas de participação no mercado de servidores da Netcraft provavelmente a utilizam, como provavelmente outras pesquisas de terceiros.)

Sim, é um (muito) pequeno problema de segurança. É claro que seu servidor deve estar seguro e atualizado o tempo todo, mas ter uma camada extra de 'obscuridade' em cima de um servidor bem protegido é apenas benéfico. Se nada mais, se um invasor precisar realizar extensas ' impressões digitais ' antes de atacar, você poderá receber um aviso antecipado de um ataque se monitorar seus arquivos de log de perto.

Você pode diminuir com segurança o nível de detalhe que está sendo transmitido, se desejar . Por outro lado, não é grande coisa, e se você estiver em um servidor compartilhado onde não pode mudar isso, não se preocupe.

Jesper M
fonte
1

Com um cabeçalho de servidor tão longo, encurtá-lo ou se livrar dele completamente também pode fornecer um pequeno benefício de desempenho.

Como observa Jesper, esse não é um grande problema, mas se você estiver tentando extrair cada milissegundo extra do tempo de carregamento da página, isso pode fazer uma diferença - principalmente se você estiver carregando muitos arquivos pequenos, o que é ruim de um ponto de vista do desempenho em si, mas às vezes inevitável.

Eu suspeito que essa seja uma das razões pelas quais, por exemplo, os servidores da web do Google digam:

Server: gws

ou

Server: sffe

Certamente, eles poderiam ter escrito "gws" como "Google Web Server" sem divulgar mais informações, mas isso adicionaria 14 bytes completamente inúteis a cada resposta HTTP. Com o volume de solicitações do Google, esses poucos bytes podem adicionar mais largura de banda do que o pequeno site médio usa no total .

Ilmari Karonen
fonte
Os tamanhos dos pacotes costumam ter cerca de 1.000 bytes; portanto, salvar alguns bytes (literalmente) não afeta a velocidade. Somente se o total de todos os cabeçalhos derramar em um pacote extra.
usar o seguinte
Um cabeçalho de 100 bytes, como o citado na pergunta, pode fazer com que o comprimento combinado dos cabeçalhos de resposta e do conteúdo se espalhe em um pacote extra. Além disso, a contagem de pacotes conta toda a história apenas para conexões com limitação de latência puramente. Em situações (pelo menos parcialmente) com largura de banda limitada (como conexões móveis lentas ou grandes datacenters com um grande volume de solicitações), a quantidade total de bytes transmitidos também começa a importar.
Ilmari Karonen