Para instalação das dependências do Kerberos, utilizei pacotes RPM da distribuição CentOS 5.7 convertidos para pacotes TGZ.
- keyutils-libs-1.2-1.el5.i386.rpm;
- krb5-client-1.6.3-1.i686.rpm;
- krb5-devel-1.6.1-62.el5.i386.rpm;
- krb5-libs-1.6.1-62.el5.i386.rpm;
- libselinux-1.33.4-5.7.el5.i386.rpm;
- libsepol-1.15.2-3.el5.i386.rpm.
Todos encontrados em:
http://rpm.pbone.net/
Convertendo os pacotes RPM, supondo que você já baixou os pacotes citados acima e os comandos sejam aplicados no diretório onde eles estão:
# rpm2tgz *.rpm
# installpkg *.tgz
Carregando as bibliotecas:
# ldconfig -v
Testando o kerberos:
# kinit -V
O comando acima deverá retornar uma mensagem do tipo:
kinit(v5): Cannot find KDC for requested realm while getting initial credentials
Pois ainda não configuramos o arquivo "/etc/krb5.conf".
Caso retorne algum erro de falta de bibliotecas, verificar se realmente as possui e se estão carregadas (ldconfig -v).
Baixando, configurando e instalando o Samba
Baixando o pacote do Samba:
# cd /usr/local/src
# wget http://www.samba.org/samba/ftp/stable/samba-3.6.1.tar.gz
# tar zxvf samba-3.6.1.tar.gz
Configurando e compilando o pacote do Samba:
# cd /usr/local/src/samba-3.6.1/source3
# ./configure --with-winbind --with-ads --with-krb5
# make
# make install
Caso não haja erro na configuração e instalação, os arquivos deverão ser encontrados em "/usr/local/samba".
Vamos configurar para que sejam carregadas as bibliotecas que foram instaladas junto com o Samba.
# echo "/usr/local/samba/lib" >> /etc/ld.so.conf
O comando acima acrescentará no arquivo, onde o comando 'ldconfig' busca os caminhos dos diretórios contendo as bibliotecas do sistema que devem ser carregadas, o
diretório onde estão localizadas as bibliotecas do Samba recém instalado .
# ldconfig -v
Ajustando a variável PATH para que sejam reconhecidos os binários do Samba.
# cd /usr/local/samba/bin
# export PATH=$PATH:`pwd`
# cd /usr/local/samba/sbin
# export PATH=$PATH:`pwd`
Lembrando que "pwd" deve estar entre crases, ou $(), para que seja utilizado o retorno do comando.
# echo $PATH
A saída do comando acima deverá mostrar o valor padrão da variável PATH acrescido dos diretórios onde se encontram os binários do Samba. Lembrando que esta configuração é perdida no logoff. Para isso é necessário que seja configurada no arquivo "/etc/profile", por exemplo.
Testando o funcionamento do Samba:
# smbd -i
O comando acima deverá retornar uma mensagem de erro do tipo:
smbd version 3.6.1 started.
Copyright Andrew Tridgell and the Samba Team 1992-2011
error opening config file
Por não termos ainda um arquivo "smb.conf" configurado. Caso a mensagem seja a respeito de bibliotecas, verifique se existem e se estão carregadas com o comando:
# ldconfig
Caso o retorno seja algo do tipo: 'command not found', verifique se os diretórios dos binários do Samba estão inclusos na variável de ambiente PATH com o comando:
# echo $PATH
Ou passe o caminho completo:
# /usr/local/samba/sbin/smbd -i
O mesmo é válido para os outros comandos, que também devem mostrar mensagens de erro devido a falta momentânea do arquivo de configuração "smb.conf":
# smbd -i
# nmbd -i
# winbindd -i