webCalendar: a agenda e o PAM

Procuramos no presente artigo integrar a autenticação web por meio de módulos da infra-estrutura do PAM. Utilizamos como referência para esse procedimento a aplicação webCalendar e os módulos libapache2-mod-auth-pam e libapache2-mod-auth-sys-group com a finalidade de proteger a área de execução de script cgi do servidor web.

[ Hits: 36.257 ]

Por: lourival araujo da silva em 23/10/2008


Preparando o terreno para o webCalendar



O software WebCalendar é disponibilizado sob GPLv3 pela Universidade do Texas e deve ser baixado diretamente do link da instituição. Trata-se de uma aplicação desenvolvida em Perl e com capacidade de integração com o LDAP e com suporte a múltiplos idiomas, inclusive o português "brazileiro" .

Devemos, portanto, ter suporte a script perl no servidor Apache a fim de podermos realizar as operações de instalação e configuração do webCalendar.

Os desenvolvedores sugerem o uso do apache_mod_perl , perl 5 ou superior e cgi 2.79 ou superior. Inicialmente devemos verificar a existência dos pré-requisitos. Utilizamos como referência para o teste uma máquina com o sistema operacional Linux Debian 4.0 e apache2, sem mod_perl e outra máquina com sistema operacional Fedora Core 6, com apache 2.0, sem mod_perl.

Consultando o sistema:

# dpkg -l apache2
# perl -v
# apt-cache search libapache2-mod-auth-pam libapache2-mod-sys-group libapache2-mod-fastcgi perl


Caso não haja algum dos pré-requisitos devemos realizar a instalação correspondente:

# apt-get update
# apt-get install apache2 apache2-doc libapache2-mod-fastcgi libapache2-mod-auth-pam libapache2-mod-sys-group


A instalação do módulo "libpam-http" cria a entrada correspondente no diretório de administração do PAM (/etc/pam.d) para o serviço correspondente ao apache (/etc/pam.d/apache2). Esse arquivo deverá ser editado para que corresponda às necessidades da autenticação desejada. Comentaremos ou apagaremos as linhas iniciadas por "@include" e criaremos uma autenticação personalizada para o apache, utilizando somente usuários locais ("pam_unix.so"):

# apt-get install libpam-http

# vi /etc/pam.d/apache2


#@include common-auth
#@include common-account
auth required pam_unix.so
account required pam_unix.so

Habilitamos o suporte a script no servidor web e o suporte a perl no sistema, caso não esteja habilitado:

# a2enmod actions
# a2enmod rewrite
# a2enmod suexec
# a2enmod include

# apt-get install perl-base libperl-dev


Acrescentaremos o módulo pamtester, a fim de testar as configurações após a instalação:

# cd /usr/local/src
# wget -c
http://prdownloads.sourceforge.net/pamtester/pamtester-0.1.2.tar.gz
# tar xzvf pamtester-0.1.2.tar.gz
# cd pamtester-0.1.2
# ./configure --prefix=/usr/local
# make
# make install


    Próxima página

Páginas do artigo
   1. Preparando o terreno para o webCalendar
   2. Ajustes iniciais
   3. Cadastrando o administrador
   4. Passeando pelos menus do webCalendar e divulgando compromissos
   5. Fechando janelas
Outros artigos deste autor

Mudança de hábito: autenticando usuários em base de dados MySQL

Autenticação via hardware: o módulo pam_blue

Bom escudo não teme espada: o módulo pam_cracklib

Autenticação via hardware: o módulo pam_usb

Cliente "automágico" Linux logando no domínio NT/Samba

Leitura recomendada

A Arte de HACKEAR Pessoas

Cliente "automágico" Linux logando no domínio NT/Samba

Segurança com Iptables

O Kerberos não é um cachorro de 3 cabeças!

Usando HTTP autenticado no Apache

  
Comentários
[1] Comentário enviado por dailson em 23/10/2008 - 15:52h

Grande Lourival!!!
Parabéns por mais um artigo!
Este está show, vou ver se arrumo tempo para testar e lhe dou um retorno ;)

[2] Comentário enviado por araujo_silva em 24/10/2008 - 00:43h

Valeu professor !!!

Sou seu fã !!!!

Abraços.

[3] Comentário enviado por __FERNANDO__ em 28/10/2008 - 16:28h

Boa tarde!

Fiz o procedimento acima, porem meu Debian continua não abrindo arquivo .pl
Quando clico em um link onde direciona para uma pagina .pl me aparece uma mensagem dizendo se quero abrir ou salvar o arquivo.

O que eu faço ?

grato.

Fernando.

[4] Comentário enviado por araujo_silva em 28/10/2008 - 18:59h

Caro Fernando,

Peço desculpas por não haver documentado o arquivo de configuração do apache.
Verifique no arquivo de configuração do seu servidor web, se ele está configurado para executar script cgi e pl. Descomente a linha equivalente da que se segue ou modifique-a:

/etc/apache2/apache2.conf

#AddHandler cgi-script .cgi .pl

Caso persistar, verifique o log e informe.

Abraço,

Lourival


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts