Findados meus testes, achei interessante publicar aqui também um artigo de minha autoria explicando como fazer a instalação do
Shibboleth Service Provider no
Gentoo.
O procedimento ainda é experimental e os ebuilds ainda não estão na árvore do portage. No entanto, tenho tido casos de sucesso nesta instalação e caso alguém esteja tentando algo parecido, talvez possa ser útil.
Segue meu artigo na íntegra [salvo pequenas correções], como em:
O
Shibboleth Service provider (shibboleth-sp) é uma interessante ferramenta para sistemas que utilizam o procedimento de exportação de atributos, conhecido como
single sign-on. Vejamos como podemos instalá-lo no Gentoo.
Não podemos contar ainda com o shibboleth-sp na árvore do portage, o que significa - em poucas palavras - que não possuímos ainda ebuilds oficiais do shibboleth-sp [nem de suas dependências] na árvore oficial do portage.
Como forma de contornar esta situação, submeti junto aos desenvolvedores do Gentoo uma proposta de inclusão do shibboleth-sp versão 2.3 e suas dependências, que pode ser visualizada e acompanhada à partir
desta entrada no
bugs.gentoo.org.
A ideia desta proposta é incluir suporte ao Shibboleth Service Provider à partir da versão 2.3 que é a mais recente até agora. Para isto, foi necessário submeter também três outras dependências que não constavam na árvore do portage:
- dev-libs/log4shib-1.0.4
- dev-libs/xmltooling-1.3.3
- dev-libs/opensaml-2.3
Além do próprio shibboleth-2.3.
Aos interessados em utilizar estes ebuilds em caráter de teste apenas apresento os procedimentos necessários para fazê-lo.
O primeiro passo é certificar que existe uma
estrutura de overlay para a árvore do portage definida no sistema. Podemos conferir isto observando a seguinte entrada no arquivo
/etc/make.conf.
# cat /etc/make.conf | grep PORTDIR_OVERLAY
Caso este comando não retorne nenhum resultado, é necessário adicionar uma entrada no arquivo /etc/make.conf que pode ser feita via o seguinte comando:
# echo "PORTDIR_OVERLAY=/usr/local/portage-overlay"
E então, cria-se o diretório de overlay da seguinte maneira:
# mkdir -p /usr/local/portage-overlay
Uma vez criada a estrutura [caso não exista], o procedimento para se instalar o shibboleth-2.3 é bastante simples.
Assumindo o diretório overlay em /usr/local/portage-overlay, primeiro criamos os diretórios necessários para a instalação:
# mkdir -p /usr/local/portage-overlay/dev-libs/log4shib
# mkdir -p /usr/local/portage-overlay/dev-libs/xmltooling
# mkdir -p /usr/local/portage-overlay/dev-libs/opensaml
# mkdir -p /usr/local/portage-overlay/www-misc/shibboleth
# mkdir -p /usr/local/portage-overlay/www-misc/shibboleth/files
Agora, é necessário baixar os ebuilds dos respectivos pacotes e dois arquivos extras para o shibboleth.
Como estes arquivos estão sujeitos à modificação, não os referenciarei diretamente aqui. Eles devem ser obtidos no endereço
http://bugs.gentoo.org/show_bug.cgi?id=309051 e colocados na estrutura overlay da seguinte maneira:
- log4shib-1.0.4.ebuild -> dev-libs/log4shib
- xmltooling-1.3.3.ebuild -> dev-libs/xmltooling
- opensaml-2.3.ebuild -> dev-libs/opensaml
- shibboleth-2.3.ebuild -> dev-libs/shibboleth
- shibd.conf -> dev-libs/shibboleth/files
- shibd.init -> dev-libs/shibboleth/files
Agora, precisamos obter os arquivos fontes dos respectivos programas:
# cd /usr/portage/distfiles
# wget 'http://shibboleth.internet2.edu/downloads/log4shib/1.0.4/log4shib-1.0.4.tar.gz'
# wget 'http://shibboleth.internet2.edu/downloads/opensaml/cpp/2.3/xmltooling-1.3.3.tar.gz'
# wget 'http://shibboleth.internet2.edu/downloads/opensaml/cpp/2.3/opensaml-2.3.tar.gz'
# wget 'http://shibboleth.internet2.edu/downloads/shibboleth/cppsp/2.3/shibboleth-sp-2.3.tar.gz'
Feito isto, precisamos criar os hashes dos ebuilds:
# cd /usr/local/portage-overlay/dev-libs/log4shib
# ebuild log4shib-1.0.4.ebuild manifest
# cd /usr/local/portage-overlay/dev-libs/xmltooling
# ebuild xmltooling-1.3.3.ebuild manifest
# cd /usr/local/portage-overlay/dev-libs/opensaml
# ebuild opensaml-2.3.ebuild manifest
# cd /usr/local/portage-overlay/www-misc/shibboleth
# ebuild shibboleth-2.3.ebuild manifest
Criada esta estrutura, podemos proceder com a instalação propriamente dita:
# ACCEPT_KEYWORDS="~x86" emerge log4shib
# ACCEPT_KEYWORDS="~x86" USE="icu" emerge =xerces-c-3.0.1
# ACCEPT_KEYWORDS="~x86" USE="-xalan" emerge xml-security-c
# ACCEPT_KEYWORDS="~x86" USE="log4shib xerces xmlsec" emerge xmltooling
# ACCEPT_KEYWORDS="~x86" USE="log4shib xerces xmlsec zlib" emerge opensaml
# ACCEPT_KEYWORDS="~x86" USE="apache22" emerge shibboleth
Ao final do processo, ainda é necessário configurar o shibboleth mas, o processo de instalação em si, se bem sucedido termina aqui.
Este procedimento ainda é experimental. No entanto, tenho tido bastante sucesso na instalação do shibboleth no Gentoo em meus testes.
Comentários são sempre bem vindos e, em caso de algum erro, por favor não se esqueça de postá-lo.