Slackware e BIND - Corrigindo erro em chroot após upgrade
Após atualizar meu BIND (pacote bind-9.4.3_P4-x86_64-1.txz) no Slackware 13.1 para uma versão recente (bind-9.9.3_P2-x86_64-1), me deparei com o seguinte erro:
# tail /var/log/messages
named[9513]: error:25070067:DSO support
routines:DSO_load:could not load the shared library:dso_lib.c:244:
named[9513]: error:260B6084:engine routines:
DYNAMIC_LOAD:dso not found:eng_dyn.c:450:
named[9513]: error:2606A074:engine routines:
ENGINE_by_id:no such engine:eng_list.c:417:id=gost
Após pesquisar, percebi que ele procura a biblioteca do SSL libgost.so na jaula (chroot).
Vamos rodar os comandos para encontra-la:
# updatedb
# locate libgost.so
Deve retornar algo do tipo:
/usr/lib64/engines/libgost.so
O erro também mostra como seu BIND foi compilado, basta prestar atenção em /var/log/messages, e verá algo do tipo:
named[9513]: built with '--prefix=/usr' '--libdir=/usr/lib64' '--sysconfdir=/etc' '--localstatedir=/var' '--with-libtool' '--with-idn=/usr' '--mandir=/usr/man' '--enable-shared' '--disable-static' '--enable-threads' '--build=x86_64-slackware-linux' 'build_alias=x86_64-slackware-linux' 'CFLAGS=-O2 -fPIC' '--with-openssl=/usr'
Vejo que o meu SSL está em /usr, logo em lib64/engines/, então, devemos criar uma estrutura de diretórios parecida dentro da jaula (chroot).
Vá para dentro da sua jaula:
# mkdir -p usr/lib64/engines/
Agora, copie a biblioteca para a pasta engines na sua jaula:
# cp /usr/lib64/engines/libgost.so /jaula/named/usr/lib64/engines/
Após isso, é só reiniciar seu BIND e se tudo ocorrer bem, será exibida uma mensagem parecida com essa:
# sh /etc/rc.d/rc.bind restart
named[9535]: all zones loaded
named[9535]: running
Obs.: caso sua biblioteca seja encontrada em /usr/local/ssl/lib/engines, por exemplo, terá que criar a mesma estrutura que for encontrada.
Outras dicas deste autor
Atualizando microcódigo de processadores AMD
Corrigir Heartbleed OpenSSL no Slackware
Slackware com kernel 3.10 - Erro com driver NVidia [Resolvido]
Redimensionar imagens VDI (VirtualBox) no GNU/Linux
Como descobrir seu IP externo com cURL
Leitura recomendada
OpenVPN no Ubuntu Server - Instalação e configuração
Bloqueando conexões indesejadas (Lista de endereços nocivos)
Instalando o Firefox 2 no Fedora Core
Compartilhando internet com Ubuntu Linux
Google Chrome - Falhou ao buscar http://dl.google.com/linux/chrome/deb/dists/stable/Release [Resolvido]
Comentários
Nenhum comentário foi encontrado.