Slackware e BIND - Corrigindo erro em chroot após upgrade

Publicado por krum em 10/03/2014

[ Hits: 3.778 ]

 


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

Redimensionar imagens VDI (VirtualBox) no GNU/Linux

Logs do Squid de forma legível

PHP - Fatal error: Allowed memory size of bytes exhausted [Resolvido]

Como descobrir seu IP externo com cURL

Corrigir Heartbleed OpenSSL no Slackware

Leitura recomendada

Acessando o site Livemocha no GNU/Linux

Instalando e configurando o no-ip no Linux

VirtualBox sem conexão Wireless [Resolvido]

Internet Giro Embratel no Linux

Como instalar JDownloader 2 no Linux

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts