Atualmente estou instalando o ModSecurity em nossos servidores de desenvolvimento e o problema que estou enfrentando com a versão mais recente é que estamos utilizando RHEL 4 em nossos servidores. Eles não têm intenção de atualizá-los ainda mais (mesmo depois de várias tentativas de informá-los). Agora, com RHEL 4, a versão mais recente do libxml2 é 2.6.16 - É aí que reside o meu problema - Com as versões mais recentes do ModSecurity, é necessária uma versão posterior do libxml2 (2.6.29 ??)
Minha pergunta é: é possível portar a versão mais recente necessária do libxml2 para o RHEL 4 para que eu possa usar a versão mais recente do ModSecurity?
Por enquanto estou usando o ModSecurity versão 2.1.7 e parece que está funcionando, mas prefiro usar a versão mais recente.
Obrigado!
Responder1
é possível portar a versão mais recente necessária do libxml2 para o RHEL 4 para que eu possa usar a versão mais recente do ModSecurity?
Sim. A maneira ideal de fazer isso é instalá-lo no /usr/local
, provavelmente construindo a partir do código-fonte. Após a construção e instalação, você precisará (como root) executar ldconfig
para atualizar o cache do vinculador. As bibliotecas /usr/local/lib
devem, por padrão, ter precedência; você pode verificar isso com ldconfig -p | grep libxml2
o qual deve fornecer algo como:
libxml2.so.2 (libc6,x86-64) => /usr/local/lib/libxml2.so.2
Você precisará reiniciar o apache.
No entanto, você deve primeiro verificar se a libxml2 2.6.29 é compatível com versões anteriores da 2.6.16. É quase certo que sim, mas se não, você precisará instalá-lo em um caminho personalizado, por exemplo, /opt/libxml2
e iniciar o Apache com um script incluindo:
export LD_LIBRARY_PATH=/opt/libxml2:$LD_LIBRARY_PATH
Nesse caso, o cache do vinculador não precisa ser atualizado, pois você não deseja a versão alternativa lá. LD_LIBRARY_PATH
, se definido, é pesquisado pelo vinculador antes de verificar seus links armazenados em cache. Masnão use este método a menos que seja absolutamente necessário. Quase certamente 2.6.29 está bem no /usr/local
. Caso contrário, deve haver uma indicação clara disso no site e/ou no NEWS
arquivo do pacote fonte.