Conexões TCP Apache2 / Shibboleth presas em CLOSE_WAIT

2

Eu executo um servidor Apache2 que usa o daemon Shibboleth (shibd) como módulo de autenticação federada. Certas conexões de servidor usando o Shibboleth parecem permanecer permanentemente no estado CLOSE_WAIT.

tcp       38      0 blah.blah:57346 shib.server.:8443 CLOSE_WAIT 
tcp       38      0 blah.blah:45601 shib.server2:8443 CLOSE_WAIT
tcp       38      0 blah.blah:41737 shib.server3:5057 CLOSE_WAIT 

Pelo que eu posso descobrir, CLOSE_WAIT significa que quando o servidor remoto se desconecta, o aplicativo local não consegue fechar a conexão, como deveria. Eu suspeito que o shibd é responsável de alguma forma.

Escusado será dizer que, se houver conexões CLOSE_WAIT suficientes, tenho um problema.

Tentando se livrar das conexões CLOSE_WAIT usando simplesmente

/etc/init.d/networking restart

não funciona. Na verdade, a rede parece se recusar a fechar e reiniciar, e eu recebo um erro SIOCADDRT: File existe (ou seja, a rede está tentando iniciar sem ter parado primeiro). Mesmo problema com ifup -a

Então eu tenho duas perguntas - uma pode ser fácil e outra mais difícil.

  1. Qual é a melhor maneira de forçar a reinicialização da rede e forçar as conexões presas em CLOSE_WAIT a serem apagadas?
  2. Alguma idéia sobre como consertar o shibboleth e forçar o módulo shibd a se comportar?
por RJT 14.11.2011 / 02:09

1 resposta

0

A resposta para 1, infelizmente, é reiniciar o processo que ainda tem referências às conexões. Nada mais o forçará a close deles.

    
por 14.11.2011 / 02:16