Sei sulla pagina 1di 46

MATHEUS BARRETO MEIRELES VIANNA

Autenticao de Usurios Utilizando MySQL Aliado um Processo de Unificao de Senhas

Monografia apresentada ao Curso de Administrao em Redes Linux (ARL) da Universidade Federal de Lavras como parte das exigncias da disciplina Monografia para obteno do ttulo de Especialista em Administrao em Redes Linux.

Orientador Prof. Samuel Pereira Dias

LAVRAS MINAS GERAIS BRASIL 2007

MATHEUS BARRETO MEIRELES VIANNA

Autenticao de UsuriosUtilizando MySQL Aliado um Processo de Unificao de Senhas

Monografia apresentada ao Curso de Administrao em Redes Linux (ARL) da Universidade Federal de Lavras como parte das exigncias da disciplina Monografia para obteno do ttulo de Especialista em Administrao em Redes Linux. Aprovada em ____ de Setembro de 2007.

Prof. _________________________________

Prof.

_________________________________

_________________________________ Prof. Samuel Pereira Dias (Orientador)

LAVRAS MINAS GERAIS BRASIL 2007

Dedico este trabalho minha famlia por ter me apoiado em mais este importante passo da minha vida profissional.

Agradeo toda a equipe da Assessoria de Informtica do Instituto de Estudos Superiores da Amaznia por ter tornado este projeto realidade.

ii

RESUMO
Este projeto tem como objetivo a unificao das senhas de vrios servios que a rede de uma instituio de ensino superior oferece aos seus alunos. A dificuldade em memorizar inmeras senhas motivaram a criao de um sistema em PHP que gerencie a alterao simultnea das senhas de acesso aos servios. Outro foco deste projeto a configurao do Squid para ser utilizado de forma autenticada em uma base de dados MySQL. De forma que cada aluno da instituio possua um nome de usurio e senha pessoais para o acesso internet nos laboratrios. Assim, quando houver necessidade, a instituio poder indicar exatamente qual usurio utilizou de forma incorreta o seu acesso internet

iii

SUMRIO
1.Introduo........................................................................................................ 1 2.Definies........................................................................................................ 3 2.1. Mais Escola ....................................................................................... 3 2.1.1.GEOL - Gerenciamento Escolar Online...................................... 4 2.1.2.Acesso dos Discentes ................................................................. 4 2.1.3.Acesso Tcnico Administrativo............................................... 5 2.2.Squid.............................................................................................. 6 2.2.1.Funcionamento do Squid............................................................. 6 2.2.2.Proxy Convencional (Standard).................................................. 7 2.2.3.Proxy Transparente..................................................................... 8 2.3.Banco de dados................................................................................... 8 2.4.SGBD Sistema de Gerenciamento de Banco de dados..................... 9 2.5.Mdulo mysql_auth........................................................................... 10 2.6.Apache.............................................................................................. 10 2.7.PHP: Hypertext Preprocessor........................................................... 11 2.8.Moodle.............................................................................................. 11 2.9.Firewall iptables............................................................................... 12 3.Estudo de caso................................................................................................ 13 3.1.A Instituio...................................................................................... 13 3.2.O Moodle, Postfix e a Autenticao no Squid.................................. 13 3.3.Topologia da Rede Antes da Implementao.................................... 14 3.3.1.Servidor Bragana..................................................................... 14 3.3.2.Servidor Marituba..................................................................... 14 3.3.3.Servidor Salinas........................................................................ 15 3.3.4.Servidor Algodoal..................................................................... 15 3.4.Novos campos no Banco de Dados do GEOL................................... 16 3.5.A Base Principal............................................................................... 16 3.6.Lgica do Funcionamento................................................................. 17 3.6.1.Atualizao da Base de Dados do GEOL.................................. 17 3.6.2.O Primeiro Acesso.................................................................... 17 3.7.A Programao.................................................................................. 19 3.8.O Processo de Instalao e Configurao.......................................... 22 3.8.1.O Squid .................................................................................... 22 3.8.2.O Mdulo mysql_auth para o Squid.......................................... 22 iv

3.8.3.Software para gesto de aprendizagem: Moodle........................ 23 4.Resultados e discusso................................................................................... 24 4.1.Problemas Ocorridos Durante a Implementao do Trabalho........... 24 4.1.1.Acesso Remoto ao MySQL........................................................ 24 4.1.2.Firewall..................................................................................... 24 4.1.3.Criptografia das Senhas............................................................. 25 4.1.4.Alterao da Senha do Moodle.................................................. 25 4.2.Anlise dos Resultados..................................................................... 25 5.Concluso....................................................................................................... 29 BIBLIOGRAFIA............................................................................................... 32 ANEXOS........................................................................................................... 35

LISTA DE FIGURAS
Figura 1: Interface do Software Mais Escola........................................................ 4 Figura 2: GEOL - Acesso para alunos atravs da Internet................................... 5 Figura 3: GEOL: Acesso administrativo atravs da Intranet................................ 6 Figura 4: Funcionamento do servidor proxy (JUC, 2005)................................. 7 Figura 5: Configurando um servidor proxy no Mozilla Firefox. .......................... 8 Figura 6: Market Share do Apache ao longo dos anos (Fonte: Netcraft imagem adaptada)............................................................................................................ 11 Figura 7: Topologia da Rede.............................................................................. 16 Figura 8: Instrues para o processo de unificao de senhas e cadastro de email.................................................................................................................... 18 Figura 9: Pgina de definio do e-mail institucional e unificao de senhas... 19 Figura 10: Fluxograma do funcionamento da unificao das senhas.................. 21 Figura 11: Criao da base de dados do mysql_auth.......................................... 22 Figura 12: Comando para alterar a configurao da base de dados.................... 24 Figura 13: Grfico representativo da aceitao do projeto de unificao de senhas por parte dos alunos da instituio. Fonte: Secretaria Acadmica do IESAM............................................................................................................... 28 Figura 14: Grfico referente aos pedidos de suporte s senhas por ms no ano de 2006 (antes do processo de unificao). Fonte: Secretaria Acadmica do IESAM............................................................................................................... 30 Figura 15: Grfico referente aos pedidos de suporte s senhas por ms, at o ms de agosto de 2007. Fonte: Secretaria Acadmica do IESAM. Fonte: Secretaria Acadmica do IESAM....................................................................................... 30

vi

LISTA DE TABELAS
Tabela 1: Pesquisa realizada entre os alunos da instituio sobre a aprovao do sistema de unificao de senhas. Fonte: Secretaria Acadmica do IESAM........28

vii

LISTA DE ABREVIAES
GEOL - Gesto Escolar Online. GNU - General Public License. HTTP - HyperText Transfer Protocol. IESAM - Instituto de Estudos Superiores da Amaznia. LDAP Lightweight Directory Access Protocol. MSN - Microsoft Service Network. NAT - Network Address Translator. P2P - Peer-to-Peer. PHP - PHP: Hypertext Preprocessor. SQL - Structured Query Language. SSH Secure Shell. TCO Total Cost of Ownership.

viii

1. INTRODUO
A necessidade de se investir em segurana de redes cresce a cada ano e justificada quanto mais a Internet utilizada por instituies que dependem do sigilo de suas informaes (NETO, 2004). A segurana tambm est diretamente ligada ao contedo trafegado atravs da instituio, uma vez que os crimes passveis de serem cometidos atravs da internet tambm crescem enormemente. Implementar aes que reduzam a incidncia de abusos na rede da instituio o objetivo geral desta monografia. O ambiente onde o trabalho est inserido, uma instituio de ensino superior, tinha grande necessidade de poder se resguardar em relao s aes realizadas atravs de seus terminais. Atravs dessas necessidades foram se delineando os objetivos especficos do trabalho: criar uma forma de monitoramento de todas as aes realizadas dentro de determinada rede, possibilitando a identificao do usurio autor da infrao. Com a implantao desse sistema, foi possvel atender outra questo: eliminar o excesso de senhas por usurio para a utilizao das diversas ferramentas oferecidas pela instituio. Servios de e-mail, acesso aos terminais, e ambientes virtuais, entre outros, geravam uma quantidade de senhas desnecessria. Isso gerava um alto nvel de dependncia dos usurios em relao ao setor de suporte, j que o esquecimento das senhas era freqente. Optou-se pela unificao de grande parte dessas senhas, facilitando o dia-a-dia dos usurios e tambm da equipe de suporte, delineando assim o segundo objetivo especfico deste trabalho. Atravs das necessidades encontradas em seu ambiente de trabalho, o

autor encontrou uma possibilidade de ampliar seus conhecimentos, uma vez que essas questes podem surgir em empresas dos mais diversos seguimentos. Para a elaborao desta monografia o autor se baseou em consultas bibliografia especializada, assim como artigos, textos e fruns online mantidos pelas organizaes responsveis por cada ferramenta utilizada. O andamento do projeto incluiu diversos testes em laboratrios da instituio que permitiram criar um ambiente real de simulao. A metodologia adotada para a implantao do projeto foi decidida em reunies entre os setores da assessoria de informtica da instituio, para que ocorresse da melhor maneira possvel. Ficou sob responsabilidade da gerncia de redes a configurao de todas as ferramentas utilizadas no projeto. J a programao do projeto ficou sob responsabilidade do setor de desenvolvimento. O texto est organizado da seguinte forma: no Captulo 2 so apresentadas todas as definies necessrias para o bom entendimento do projeto (software, linguagens de programao, etc.); o Captulo 3 descreve o estudo de caso; o Captulo 4 mostra os resultados alcanados pelo projeto e inclui uma sesso com uma anlise crtica do mesmo; no Captulo 5 se desenvolve a concluso do trabalho.

2. DEFINIES
Neste captulo so descritas as definies necessrias das ferramentas que de forma direta ou indireta fizeram parte do desenvolvimento do trabalho. 2.1. Mais Escola Software proprietrio, desenvolvido pela empresa Path Informtica1 em Visual FoxPro, utilizado pela instituio para realizar o gerenciamento acadmico e financeiro dos alunos. A Figura 1 mostra uma das interfaces do software. Seu banco de dados no em formato SQL (Structured Query Language) o que dificulta a integrao do sistema com outros utilizados na instituio, uma vez que as linguagens de programao so distintas. Para facilitar essa integrao a equipe da Path Informtica desenvolveu um mdulo para que as informaes acadmicas fossem exportadas em formato SQL, permitindo o uso em conjunto com outros sistemas, como por exemplo, o GEOL (Gesto Escolar Online) definido na Seo 2.2.

1 Mais Escola - http://www.pathinformatica.com.br

Figura 1: Interface do Software Mais Escola.

2.1.1. GEOL - Gerenciamento Escolar Online Software elaborado pela equipe de desenvolvimento do Instituto de Estudos Superiores da Amaznia IESAM2. O GEOL faz a interao entre os alunos e as suas informaes acadmicas que so exportadas diariamente do sistema Mais Escola boletins, situao financeira, protocolos, certificados, declaraes, atestados, etc. podero ser solicitados online. O sistema dividido em duas partes, apresentadas nas Sees 2.1.2 e 2.1.3. 2.1.2. Acesso dos Discentes Consulta de notas, faltas, ficha financeira e solicitao de documentao acadmica, sua tramitao e seus resultados. Aps a finalizao do projeto o
2 IESAM - http://www.iesam-pa.edu.br

GEOL, se tornou a nica ferramenta responsvel pela alterao das senhas de acesso aos sistemas institucionais (Figura 2).

Figura 2: GEOL - Acesso para alunos atravs da Internet.

2.1.3. Acesso Tcnico Administrativo Consulta a situao dos discentes em relao s notas, faltas, ficha financeira e solicitao diria de documentao acadmica, sua tramitao e seus resultados. Emisso de listagens de avaliaes e provas substitutivas, por curso, turma ou professor (Figura 3). 5

Figura 3: GEOL: Acesso administrativo atravs da Intranet.

2.2. Squid O Squid gratuito e mantido como um projeto open source. Ele permite que os administradores implementem um servio de caching proxy para web, acrescentem controles de acesso (regras), e armazenem at mesmo consultas de DNS (STANGER, LANE & DANIELYAN, 2002). Proxies como o Squid so utilizados para agilizar o acesso web para os usurios e tambm para registrar os sites que foram visitados. importante citar que o Squid apenas um servidor de caching proxy e que no suporta funes como NAT (Network Address Translator) que normalmente executado pelo iptables. 2.2.1. Funcionamento do Squid O principal papel de um servidor proxy intermediar a comunicao entre um cliente qualquer e o servidor de destino responsvel pelo servio 6

solicitado (JUC, 2005). As requisies feitas para os clientes sero destinadas ao servidor proxy que processa o pedido verificando as permisses da lista de acesso e retorna a resposta adequada. Resumidamente:

cliente solicita conexo na porta 3128 do servidor proxy; proxy recebe solicitao e verifica nas listas de acesso as

permisses. Em caso de pgina autorizada, o servidor proxy estabelece a conexo com o servidor real de destino, obtm a pgina solicitada pelo cliente e o retorna a pgina solicitada, conforme ilustra a Figura 4. Caso exista alguma proibio em alguma lista de acesso, possvel fazer uma pgina personalizada de acesso proibido.

Cliente

Proxy
<permite> <nega>

Servidor

Figura 4: Funcionamento do servidor proxy (JUC, 2005).

2.2.2. Proxy Convencional (Standard) Utilizando o modelo convencional de proxy necessrio configurar manualmente em todos os computadores o endereo IP (Internet Protocol) e a porta do proxy para que as solicitaes sejam intermediadas pelo proxy (JUC, 2005). A Figura 5 ilustra a configurao do proxy no Mozilla Firefox. Neste modelo possvel fazer com que o Squid seja utilizado de forma autenticada, ou seja, capaz de ser fornecida uma senha individual por usurio e saber exatamente qual usurio acessou um determinado site.

Figura 5: Configurando um servidor proxy no Mozilla Firefox.

2.2.3. Proxy Transparente Neste modelo de configurao, os clientes no necessitam e nem devem configurar o uso do proxy, pois as conexes web sero redirecionadas ao proxy de forma transparente (automaticamente) (JUC, 2005). necessrio utilizar o iptables para que basicamente as portas 80 e 443 sejam redirecionadas para a porta do proxy (geralmente, 3128). Dessa forma, diferente do modelo convencional no necessrio configurar o proxy manualmente em todos os computadores para navegar. 2.3. Banco de dados basicamente um sistema computadorizado de manuteno de registros. Em outras palavras, um sistema cuja finalidade geral armazenar informaes e permitir que os usurios busquem e atualizem as mesmas quando as solicitar (DATE, 2003). As informaes podem ser quaisquer dados que sejam 8

necessrios para um indivduo ou organizao. 2.4. SGBD Sistema de Gerenciamento de Banco de dados Um SGBD (Sistema Gerenciador de Bancos de Dados) um software que coordena e organiza um banco de dados. As funes bsicas de um SGBD so: - prover mtodos de acesso ao banco de dados; - assegurar integridade sinttica dos comandos disponveis e integridade semntica de uma forma geral; - estabelecer regras de segurana; - disponibilizar vrias outras facilidades, de acordo com cada modelo e verso adotados. (CALDEIRA, 2006) 2.4.1. PostgreSQL O PostgreSQL um Sistema Gerenciador de Banco de Dados (SGBD) objeto-relacional. Traz todas as caractersticas de um SGBD essencialmente relacional (integridade referencial, tabelas, vises, gatilhos e etc), acrescido de funcionalidades de carter de orientao a objetos (PostgreSQL, 2007). 2.4.2. MySQL a mais popular distribuio SGBD de padro SQL disponvel para uso comercial. Desenvolvido e distribudo pela empresa MySQL AB, o MySQL suportado por inmeros sistemas operacionais, estvel e possui baixo TCO (Total cost of ownership), ou seja, possui um baixo custo total de posse.

Uma caracterstica importante a possibilidade de escolher o tipo da tabela durante a sua criao. O formato de armazenamento de dados, bem como alguns recursos do banco dependem do tipo de tabela escolhida (CALDEIRA, 2006). 2.5. Mdulo mysql_auth Mdulo de autenticao de usurios para o Squid, armazena os nomes dos usurios e as senhas que so salvos em um banco de dados no MySQL. possvel utilizar senhas sem criptografia e senhas criptografadas. O mdulo utilizado para armazenar o nome de usurio dos alunos (matrcula) e as senhas para que os acessos internet sejam autenticados. 2.6. Apache Desenvolvido pela Apache Software Foundation, o Apache o servidor HTTP (HyperText Transfer Protocol) mais popular da internet desde abril de 1996. A Netcraft web server survey constatou que mais de 70% dos sites da internet esto sendo hospedados por um servidor Apache. A Figura 6 ilustra a utilizao do Apache em servidores web. O projeto Apache HTTP Server desenvolvido e mantido como um projeto open source e suporta diversas plataformas como Unix e Windows NT.

10

Figura 6: Market Share do Apache ao longo dos anos (Fonte: Netcraft imagem adaptada).

2.7. PHP: Hypertext Preprocessor Originalmente desenvolvido por Rasmus Lerdof, sua primeira verso foi lanada em 1994 e tinha como objetivo rastrear os visitantes de seu currculo online. O PHP uma linguagem de script, licenciada como software livre, de uso geral, muito utilizada e especialmente guarnecida para o desenvolvimento de aplicaes web embutidas dentro do HTML (ACHOUR et al, 2007). O PHP tem uma grande importncia neste trabalho, pois o GEOL e o processo de unificao de senhas foram desenvolvidos atravs dessa linguagem de programao. 2.8. Moodle Software livre, Moodle distribudo sob GNU GPL (GNU General Public License). Foi desenvolvido por Martin Dougiamas nos anos 90, durante o 11

perodo em que trabalhou como webmaster na Curtin University of Technology. A documentao oficial descreve o Moodle como um software para gesto de aprendizagem e de trabalho colaborativo, permitindo a criao de cursos online, pginas de disciplinas, grupos de trabalho e comunidades de aprendizagem (DOUGIAMAS, 2007). 2.9. Firewall iptables O iptables um filtro de pacotes e funciona baseado em regras que analisam o endereo e a porta de origem e destino dos pacotes. o firewall nativo do Linux a partir da verso 2.4 do Kernel. O iptables utiliza a infraestrutura do Kernel atravs do Netfilter para saber como filtrar os pacotes corretamente (RIBEIRO, 2004).

12

3. ESTUDO DE CASO
Neste captulo so abordados os tpicos necessrios para o bom entendimento do funcionamento do projeto, bem como a antiga topologia de rede na qual ser demonstrada a necessidade de execuo deste trabalho. 3.1. A Instituio O IESAM (Instituto de Estudos Superiores da Amaznia) iniciou suas atividades no ano de 2000 com a misso de formar profissionais de nvel superior comprometidos com as questes ambientais e a tecnologia. Busca proporcionar aos seus discentes conhecimento necessrio ao desenvolvimento de suas potencialidades e qualificao para o trabalho e o exerccio da cidadania. Localizada em Belm, estado do Par, o IESAM atende atualmente a mais de 3 mil alunos. Com o seu crescimento ao longo dos anos, a sua estrutura tanto administrativa, quanto discente, foi aumentada e melhorada. Foram implantados mais laboratrios de informtica, sistemas para atender demanda de alunos, entre outros aspectos. Dessa forma, a instituio sentiu a necessidade de melhorar a eficincia desses sistemas, demonstrando a tecnologia na prtica para o seu alunado e para a sociedade em geral. 3.2. O Moodle, Postfix e a Autenticao no Squid Antes da implantao do presente trabalho, os alunos utilizavam o TelEduc. A senha era nica para todos os alunos que poderiam somente fazer o download das apostilas de suas aulas. A partir de 2007 a instituio passou a oferecer o e-mail institucional para facilitar o intercmbio entre seus alunos e os de outras universidades, uma

13

vez que eles tm participado de congressos e seminrios, divulgando trabalhos realizados na instituio. O Squid era utilizado de forma transparente, sendo assim, com a grande rotatividade dos alunos nos laboratrios, a instituio de ensino necessitou se precaver de qualquer crime virtual que pudesse ser cometido. Atravs da autenticao dos mesmos para o uso dos terminais, tornou-se possvel a sua identificao. 3.3. Topologia da Rede Antes da Implementao desenvolvida nesta Seo a finalidade dos servidores utilizados no andamento do trabalho. So descritos detalhadamente quais servios esto em execuo nos servidores de forma isolada e ser demonstrada a necessidade do processo de unificao das senhas de acesso. A organizao da rede est identificada na Figura 7. 3.3.1. Servidor Bragana o servidor responsvel pelo armazenamento do software Mais Escola. Este servidor possui basicamente o Samba instalado para compartilhar o banco de dados das informaes financeiras e acadmicas dos alunos da instituio. 3.3.2. Servidor Marituba o servidor web principal da instituio, onde todas as principais pginas esto hospedadas e onde se encontra a base de dados principal da instituio com todas as informaes acadmicas dos alunos que foi importada do software Mais Escola. Este servidor possui configurado o Apache, PHP, MySQL, PostgreSQL, Postfix e regras de iptables para controlar o acesso ao servidor.

14

3.3.3. Servidor Salinas o servidor responsvel por manter as aplicaes de educao a distncia. Em janeiro de 2007 foram migrados todos os dados acadmicos do TelEduc para o Moodle. Foi feita essa opo porque o Moodle possui mais recursos e maior interatividade. O servidor possui configurado o Apache, PHP, MySQL, Postfix e algumas regras de iptables. Com esses servios instalados o Moodle est apto para utilizao. 3.3.4. Servidor Algodoal o servidor caching proxy da rede acadmica. Este servidor utilizado para restringir o acesso dos alunos a alguns sites e proibir a utilizao de alguns softwares como o MSN (Microsoft Service Network) e outros P2P (Peer-toPeer). Este servidor possui configurado um Squid transparente, DNS e algumas regras no iptables para para fazer o NAT e bloquear algumas portas para que os alunos no consumam todo o link de internet com downloads de arquivos utilizando softwares P2P. importante informar que um dos objetivos deste trabalho migrar o proxy transparente para uma implementao autenticada.

15

Figura 7: Topologia da Rede.

3.4. Novos campos no Banco de Dados do GEOL O processo de unificao de senhas fez com que surgisse um problema: como o sistema detectaria a realizao do processo por cada usurio e obrigaria a sua execuo. Como soluo foi criado um novo campo na base de dados do GEOL denominado e-mail (referente ao e-mail institucional) associado ao nmero de matrcula do aluno, sendo assim, todos os alunos que no possussem um e-mail institucional, automaticamente seriam obrigados a preencher o formulrio de unificao das senhas. Como nenhum aluno possua o e-mail at ento, todos foram obrigados a realizar o processo. 3.5. A Base Principal Com exceo do GEOL, os demais sistemas utilizados na instituio so desenvolvidos por terceiros. Caso houvesse a necessidade de alguma mudana, poderia ser necessrio reescrever parte de seus cdigos para adequao. Por isso 16

o processo de unificao de senha foi totalmente centralizado na base de dados do GEOL, permitindo maior liberdade para as adaptaes necessrias. 3.6. Lgica do Funcionamento Esta seo contm todos os processos necessrios para o funcionamento do sistema de unificao das senhas. Desde a atualizao diria do banco de dados do GEOL at a inicializao da base de dados do Moodle e da autenticao no Squid. 3.6.1. Atualizao da Base de Dados do GEOL A necessidade de expor os dados acadmicos para os alunos fez com que a instituio iniciasse o desenvolvimento do GEOL. Entretanto, deparou-se com um problema: o software Mais Escola desenvolvido em FoxPro. No possua um banco de dados e necessitou da colaborao de seus desenvolvedores para criar um mdulo chamado transferncia de arquivos que tem como finalidade exportar os dados para formato SQL. Diariamente, em um processo manual, so geradas vrias tabelas em formato SQL que so enviadas por FTP para o servidor Marituba. O usurio conecta-se via SSH (Secure Shell) no servidor Marituba e executa o script atualizar.sh, escrito em shell script, que tem como finalidade inserir no banco de dados PostgreSQL do GEOL as atualizaes acadmicas que foram realizadas no dia anterior. 3.6.2. O Primeiro Acesso No incio do ano letivo do ano 2007, os alunos foram orientados a acessar o GEOL para realizar a unificao das senhas. Ao se autenticar no GEOL, o usurio redirecionado a uma pgina onde constam todas as

17

orientaes referentes ao processo de unificao da senha (Figura 8). Ao clicar no link de unificao, o usurio redirecionado para uma pgina onde o sistema previamente informa o sub-domnio do e-mail referente ao curso do aluno. Na seqncia necessrio informar um nome de usurio, uma senha de acesso e um e-mail alternativo para que o ajude na recuperao da senha quando houver necessidade (Figura 9). Ao confirmar a criao da conta de e-mail, o aluno indiretamente estar criando uma senha de acesso personalizado com o seu nmero de matrcula e a senha de acesso ao GEOL, para acesso internet e ao novo sistema educacional, o Moodle.

Figura 8: Instrues para o processo de unificao de senhas e cadastro de e-mail.

18

Figura 9: Pgina de definio do e-mail institucional e unificao de senhas.

3.7. A Programao Conforme mencionado na Seo 3.6.2, primeira vez no GEOL em 2007. O acesso feito atravs do site da instituio e todo o sistema de gerenciamento escolar, GEOL, escrito na linguagem de programao PHP. Para fazer a autenticao no GEOL, o aluno necessita inserir o seu nmero de matrcula e a sua senha de acesso. Sendo assim, esses dados ficam gravados na sesso, pois sero utilizados posteriormente. Durante o primeiro acesso, ao se autenticar no GEOL, feita uma 19 esta Seo descreve todo o

processo lgico da unificao de senhas executado pelo usurio ao entrar pela

verificao na base de dados procurando a associao entre a matrcula do aluno e o e-mail institucional. Como o aluno ainda no o possui, so mostradas todas as instrues necessrias para que o mesmo preencha corretamente os formulrios. Ao confirmar, o aluno d seguimento unificao. recuperado na sesso qual curso da instituio o aluno pertence, para que automaticamente j informe o formato do sub-domnio referente ao e-mail institucional. Nesse caso, o aluno insere somente qual o nome de usurio para o e-mail, a senha para acesso, a confirmao da senha e um e-mail alternativo que utilizado para um processo automtico de recuperao da senha em caso de perda. Ao fim do preenchimento do formulrio, verificada na base de dados do Postfix a existncia de nome de usurio referente ao sub-domnio do curso do aluno. Caso j exista o nome de usurio, o aluno orientado a escolher um novo nome de usurio. No existindo o nome, so recuperadas atravs da sesso a matrcula e a senha do aluno. A senha ento criptografada para o mtodo criptogrfico de cada servio detalhado no Seo 3.7.3 e inserida atravs de conexes remotas no MySQL do servidor Salinas, responsvel pelo Moodle e no servidor Algodoal, onde est a base de dados para ser utilizada para a autenticao do Squid (Figura 10). Nesse contexto, um dos objetivos do trabalho foi atingido: a unificao das senhas. O aluno tem a mesma senha para acesso ao GEOL, Moodle e autenticao em terminais. A nica senha que poder ser diferente a senha do e-mail institucional, pois caso o aluno esquea a senha de acesso ao GEOL ele conseguir recuperar sem auxlio da Assessoria de Informtica atravs do e-mail.

20

Figura 10: Fluxograma do funcionamento da unificao das senhas.

21

3.8. O Processo de Instalao e Configurao Nesta Seo comentado o processo de instalao e configurao dos principais servios que diretamente influenciaram no sucesso deste projeto. 3.8.1. O Squid Conforme citado na subseo 3.3.4 o servidor Algodoal ser o responsvel pela autenticao dos usurios utilizando o mdulo mysql_auth para que seja utilizado o SGBD MySQL em conjunto com o Squid. Foi necessrio alterar o arquivo de configurao do Squid localizado no diretrio /etc/squid. O arquivo squid.conf utilizado na realizao do projeto pode ser melhor visualizado no anexo A. 3.8.2. O Mdulo mysql_auth para o Squid Este mdulo o responsvel por intermediar a conexo entre o Squid e o MySQL para verificar na base de dados o nome de usurio, a senha e validar a conexo do usurio para a internet. O arquivo no possui verso pr-compilada para o Debian, por este motivo, foi necessrio utilizar a verso em cdigo-fonte. Ao descompactar o arquivo mysql_auth-0.8 foi verificado que o mantenedor do projeto disponibilizou um script para criao da base de dados do mysql_auth no MySQL. A criao dessa base utilizando o script simples. Foi necessrio conectar localmente ao MySQL utilizando o usurio root e redirecionar como entrada de comando o prprio script, como na Figura 11.
mysql -u root -p < create_script Figura 11: Criao da base de dados do mysql_auth.

22

O script criou a base de dados mysql_auth com acesso atravs do usurio Squid somente para localhost e durante o projeto foi necessrio a conexo de forma remota. Este problema foi solucionado conforme descrito na Seo 4.1.1. Para garantir a segurana na senha dos usurios, foi necessrio habilitar a criptografia na senha, entre o Squid e o MySQL, atravs da edio do arquivo /etc/squid/mysql_auth.conf, encrypt_password_form. 3.8.3. Software para gesto de aprendizagem: Moodle Ao longo da existncia da instituio, o software de gesto de com a habilitao da varivel

aprendizagem utilizado era o TelEduc, com uma senha nica de acesso para todos os alunos. A motivao para a alterao do software foi principalmente porque o Moodle possui mais recursos de interatividade. O processo de unificao motivou a criao de senhas pessoais para acesso ao Moodle, pois era necessrio que cada aluno fosse identificado. Para iniciar o processo de instalao e configurao foi necessrio fazer o download da ltima verso do software no site Moodle.org3. O arquivo foi descompactado no diretrio principal do Apache para que facilitasse a visualizao da pgina na web. Optou-se pela utilizao do Moodle com o SGBD MySQL, sendo assim, foi necessria a criao de um usurio associado uma base de dados para que fossem armazenadas as suas informaes. O processo de instalao bastante intuitivo e pode ser realizado completamente atravs da web. O processo considerado um pouco mais complicado a criao do usurio e da base de dados no MySQL.

3 http://moodle.org

23

4. RESULTADOS E DISCUSSO
4.1. Problemas Ocorridos Durante a Implementao do Trabalho 4.1.1. Acesso Remoto ao MySQL Durante o processo de configurao foi necessrio configurar os servidores MySQL onde so armazenados os bancos de dados do Moodle e da autenticao para permitir que a base de dados aceite conexes externas, pois o padro aceita somente conexes locais. Nesse caso, foi preciso alterar o /etc/mysql/my.cnf e alterar o bind-address para os endereos IP das interfaces de rede referentes a cada servidor. Foi necessrio ainda permitir que a base de dados aceitasse conexes externas, nesse caso, foi necessrio conectar-se ao MySQL e autenticar-se como root para alterar a configurao da base atravs do comando ilustrado na Figura 12.
GRANT ALL PRIVILEGES ON

`squid`.*TO'squid*@'10.255.255.157' WITH GRANT OPTION ; Figura 12: Comando para alterar a configurao da base de dados.

4.1.2. Firewall O servidor Marituba o responsvel por manter as trs bases de dados com as mesmas senhas: Moodle, GEOL e mysql_auth. Conforme mencionado anteriormente, ele se conecta remotamente ao servidor MySQL do Moodle e realiza a autenticao. Entretanto, o firewall do servidor Marituba possui o padro DROP para INPUT e OUTPUT. Nesse caso, foi necessrio incluir nas regras do Firewall o acesso porta TCP 3306 dos servidores Algodoal e Salinas.

24

4.1.3. Criptografia das Senhas Outro problema encontrado foi que cada sistema possui um mtodo de criptografia particular das senhas, ou seja, antes de armazenar a senha na base de dados, cada aplicao utiliza um algoritmo de hash4 diferente para cifr-la. Foi necessrio, antes de inserir as senhas na base de dados de cada sistema, cifr-las utilizando a mesma maneira do seu sistema de origem. 4.1.4. Alterao da Senha do Moodle Outro problema encontrado foi que os alunos estavam conseguindo alterar a senha de acesso do Moodle atravs da edio do perfil de acesso, via link de esquecimento de senha. Com a alterao somente da senha de acesso ao Moodle, um dos objetivos deste projeto a unificao das senhas no seria atingido. A soluo encontrada foi o bloqueio da alterao da senha atravs do Moodle utilizando a funo die() do PHP, ou seja, ao tentar acessar as pginas responsveis pelas alteraes da senha, o usurio receber a orientao de como proceder para a alterao da senha atravs da funo echo() e logo em seguida ir parar de interpretar os cdigos PHP ao deparar-se com a funo die(). 4.2. Anlise dos Resultados Os resultados obtidos foram bastante satisfatrios, uma vez que os objetivos traados inicialmente foram plenamente atingidos. O processo de unificao das senhas e a autenticao dos usurios no Squid utilizando o
4 Uma frmula matemtica que converte uma mensagem com qualquer comprimento em uma mensagem com comprimento fixo de dgitos em string que representa a mensagem original. (PACHECO, 2007).

25

mdulo mysql_auth esto em funcionamento desde o incio de 2007. Durante a primeira semana de aulas, a instituio organizou a semana do cadastramento digital que consistiu no cadastro biomtrico para acesso s dependncias da instituio e o processo de unificao de senhas. Os alunos foram levados at os laboratrios de informtica onde realizaram a unificao, assistiram a uma palestra sobre os benefcios e foram alertados de que todos os passos realizados estavam sendo monitorados. Ao trmino da palestra, responderam a um questionrio sobre a opinio referente aos novos procedimentos (Tabela 1). O resultado dessa pesquisa foi satisfatrio pois demonstra que mais de 85% dos alunos concordam com a unificao das senhas, como mostra a Figura 13. Os alunos foram questionados qual o motivo da escolha de satisfao ou de insatisfao. Os principais motivos de satisfao foram a independncia em recuperar e trocar as senhas sem depender do protocolo e a senha nica para todos os sistemas institucionais. O motivo principal de insatisfao o monitoramento dos alunos atravs dos logs do Squid, ou seja, todo o acesso que os alunos realizam gravado em um log para anlise, quando necessrio. Outro ponto importante a ser citado a questo da segurana, ao vazar a senha de um usurio, pelo fato das senhas serem unificadas o infrator ter acesso aos sistemas institucionais do aluno. Apesar de ter sido amplamente comunicado na instituio que a senha de acesso pessoal e intransfervel, caso a senha tenha vazado, os seguintes impactos podero ocorrer:

Moodle: O infrator poder se passar pelo usurio e enviar

mensagens para outras pessoas alm de participar das disciplinas do usurio e escrever nos fruns de discusso.

26

Acesso internet: Todo o contedo acessado monitorado e no

caso de ocorrer uma infrao, o aluno responsvel por essa senha de acesso ser punido, ainda que ela tenha sido utilizada por terceiros. Da a necessidade de sigilo total da senha.

GEOL: O infrator poder visualizar toda a vida acadmica e

financeira do aluno. Alm de poder solicitar qualquer servio burocrtico atravs do protocolo, como por exemplo, solicitao de prova de segunda chamada. O regimento da instituio prev o uso inadequado dos sistemas computacionais, bem como, o uso indevido de senhas de terceiros. A confirmao do uso indevido das senhas facilitada, pois os laboratrios so equipados com cmeras e atravs de uma anlise dos logs em paralelo com o uso das imagens possvel confirmar o uso indevido da senha por terceiros. A confirmao do uso indevido da senha por terceiros pune o infrator com a suspenso das atividades acadmicas em 5 dias. A reincidncia do caso ser julgado pela direo acadmica e dependendo da gravidade do ocorrido poder terminar em cancelamento da matrcula. Outro fator importante relacionado segurana que os servios no esto criptografados, ou seja, possvel que as senhas de acesso sejam interceptadas atravs do uso indevido de sniffer. Entretanto, esta ao reduzida pelo fato dos alunos no possurem acesso como root ou administrador nos terminais de acesso, o que impede a instalao de quaisquer aplicativos. Apesar do aluno no possuir acesso de administrador nos terminais, isso no isenta um estudo futuro para que todos os servios institucionais possuam ao menos o acesso criptografado para eliminar o possvel uso de sniffer. 27

Tabela 1: Pesquisa realizada entre os alunos da instituio sobre a aprovao do sistema de unificao de senhas. Fonte: Secretaria Acadmica do IESAM.
No No aprovam Opinaram 35 15 39 20 2 7 25 30 5 10 25 15 12 13 15 7 18 30 14 10 14 8 22 8 226 173 8,20% 6,28%

Curso Administrao Gesto Ambiental Contabilidade Economia Administrao em Agronegcios Sistemas de Informao Engenharia de Controle e Automao Turismo Engenharia de Telecomunicaes Engenharia de Computao Design Multimdia Relaes Pblicas TOTAL

Aprovam 251 290 28 212 214 286 102 177 295 78 195 229 2357 85,52%

Aprovao do Projeto
90,00% 80,00% 70,00% 60,00% 50,00% 40,00% 30,00% 20,00% 10,00% 0,00%
Aprovam No aprovam No Opinaram

Figura 13: Grfico representativo da aceitao do projeto de unificao de senhas por parte dos alunos da instituio. Fonte: Secretaria Acadmica do IESAM.

28

5. CONCLUSO
A implantao do processo de unificao de senhas permitiu instituio de ensino ter maior rastreabilidade em relao s aes realizadas por seus computadores, ligados internet, uma das questes mais importantes solucionada pelo projeto. Com o sistema implantado possvel identificar o usurio, o terminal utilizado, caso uma irregularidade seja cometida. Associado a este recurso, existe um sistema de segurana que, atravs de cmeras nos laboratrios, pode confirmar o uso da senha pelo proprietrio ou por terceiros. Esse monitoramento por si s j reduziu o nmero de aes irregulares nos terminais, uma vez que alunos e funcionrios esto cientes de que suas aes so monitoradas. Caso o usurio seja flagrado acessando sites indevidos ou tentado burlar o proxy, o seu acesso ser bloqueado e suspenso por at uma semana de acordo com o regimento da instituio. Outro aspecto solucionado pelo projeto foi a dificuldade causada pela grande quantidade de senhas a ser memorizada por cada aluno. Com o processo de unificao de senhas, elas foram reduzidas para apenas duas: e-mail institucional e demais servios. Com esse acesso nico aos diversos servios oferecidos pela instituio, a procura pelo servio de suporte para recuperao de senhas foi extremamente diminudo, otimizando o trabalho do departamento e facilitando a utilizao para os alunos. Dados fornecidos pela Secretaria Acadmica, setor responsvel pelo servio de protocolo da instituio, onde so realizados os pedidos de recuperao de senhas, confirmam os resultados do projeto. At o ms de agosto de 2006 j haviam sido atendidos 1217 pedidos de recuperao de senhas (Figura 14). At o ms de agosto, em 2007, j com o novo processo de unificao de senhas implantando, foram 296 atendimentos (Figura 15). Uma reduo de mais de 75%. 29

Suporte (Senhas) - 2006


250 225 200 175 150 125 100 75 50 25 0 Jan Fev Mar Abr Mai Jun Jul Ago Set Out Nov Dez

Figura 14: Grfico referente aos pedidos de suporte s senhas por ms no ano de 2006 (antes do processo de unificao). Fonte: Secretaria Acadmica do IESAM.

Suporte (Senhas) - 2007


250 225 200 175 150 125 100 75 50 25 0 Jan Fev Mar Abr Mai Jun Jul Ago

Figura 15: Grfico referente aos pedidos de suporte s senhas por ms, at o ms de agosto de 2007. Fonte: Secretaria Acadmica do IESAM. Fonte: Secretaria Acadmica do IESAM.

30

A implantao desse projeto possibilitou tambm uma aproximao entre os alunos dos cursos ligados tecnologia com a Assessoria de Informtica da instituio. Diversas palestras realizadas em eventos acadmicos mostraram de forma didtica e simples todos os objetivos desse trabalho. Dessa forma, o projeto conseguiu atingir todos os seus objetivos e demonstrar a sua relevncia em termos de segurana e tambm como um sistema amigvel para os usurios. No entanto, a soluo executada no a melhor para o caso. Se fosse utilizada uma base LDAP (Lightweight Directory Access Protocol), muito do trabalho realizado atravs de programao em linguagem PHP no seria necessrio. Tanto os servios de autenticao, os acessos ao Moodle e os servios futuros poderiam utilizar essa base nica. Tambm importante ressaltar que muitos dos problemas encontrados durante a implementao do projeto citados na Seo 4.1 no existiriam se o projeto como um todo fosse desenvolvido utilizando base LDAP, ou seja, os artifcios utilizados para manter as senhas em sincronismo no seriam necessrios, pois ao alterar a senha em qualquer um dos servios, automaticamente seria alterado nos demais, pois a base de dados seria a mesma. Outra questo que parte da evoluo deste projeto a necessidade de remoo de todos os acessos de um determinado aluno, sem que seja necessrio exclu-lo individualmente em cada servio existente. Essa ferramenta seria til no caso de trancamento de matrculas ou transferncia de instituio de ensino. Como trabalhos futuros, vislumbra-se a unificao total de todas as bases de dados em uma nica base LDAP e a criptografia do processo de autenticao dos servios. 31

BIBLIOGRAFIA
ACHOUR, 2007. CALDEIRA, Bruno. Alta Disponibilidade: Replicao de Dados Via MySQL, com nfase em Identificao e Recuperao de Falhas. 2006. 71 f. Monografia (Ps-Graduao em Administrao de Redes Linux). Ps-Graduao Lato Sensu a Distncia em Administrao de Redes Linux, Universidade Federal de Lavras, Lavras, 2006. DATE, C. J. Introduo a Sistemas de Bancos de Dados. 8. ed. Rio de Janeiro: Elsevier, 2003. DOUGIAMAS, Martin. Sobre o Moodle [on line]. Disponvel em: Mehdi et al. PHP Manual [on line]. Disponvel em:

<http://www.php.net/manual/pt_BR/introduction.php>. Acesso em: 27 Ago

<http://docs.Moodle.org/pt/Sobre_o_Moodle>. Acesso em: 22 jul 2007. JUC, Humberto L. Tcnicas Avanadas de Conectividade e Firewall: em GNU/Linux. Rio de Janeiro: Brasport, 2005. NETO, Urubatan. Dominando Linux Firewall iptables. Rio de Janeiro: Cincia Moderna, 2004. PACHECO, Juliano. Glossrio Tecnolgico. Coordenao Eng. Juliano Anderson Pacheco, desenvolvida por Adm. Claudio Brancher Kerber, apresenta termos tecnolgicos na rea de telecomunicaes. Disponvel em: <http://www.digitro.com/glossario_digitro.php>. Acesso em: 14 dez 2007. POSTGRESQL. The world's most advanced open source database. [on-line] Disponvel em: <http://www.postgresql.org>. Acesso em: 7 set 2007. 32

RIBEIRO, Uir. Certificao Linux. Rio de Janeiro: Axcel Books, 2004. STANGER, James; LANE, Patrick &DANIELYAN, Edgar. Rede Segura Linux. Rio de Janeiro: Alta Books, 2002.

33

ANEXOS Arquivos de Configurao

34

ANEXO A: Squid.conf
Arquivo de configurao do Squid para ser utilizado com proxy autenticado aliado ao mdulo MySQL_Auth. As alteraes consideradas fundamentais para a realizao do projeto encontram-se em negrito.
http_port 3128 icp_port 0 htcp_port 0 hierarchy_stoplist cgi-bin ? acl QUERY urlpath_regex cgi-bin \? cache_mem 25 MB auth_param basic realm Autenticao: Entre com a sua matricula e senha do GEOL auth_param basic program /usr/lib/Squid/mysql_auth auth_param basic credentialsttl 20 minutes auth_param basic children 15 maximum_object_size 76800 KB minimum_object_size 0 KB maximum_object_size_in_memory 5960 KB no_cache deny QUERY refresh_pattern ^ftp: 1440 20% 10080 refresh_pattern ^gopher: 1440 0% 1440 refresh_pattern . 0 20% 4320 acl password proxy_auth REQUIRED acl all src 0.0.0.0/0.0.0.0 acl fun src "/etc/Squid/ipfun.txt" acl iesam src 10.0.0.0/8 acl manager proto cache_object acl localhost src 127.0.0.1/255.255.255.255 acl to_localhost dst 127.0.0.0/8 #acl liberafun url_regex "/etc/Squid/liberafun.txt" acl sitelib url_regex "/etc/Squid/liberado" acl siteblock url_regex dstdomain -i "/etc/Squid/bloqueado" acl html rep_mime_type text/html reply_body_max_size 0 allow html reply_body_max_size 10485760 allow all acl download urlpath_regex .avi$ .mp3$ .wav$ .dvix$ .wmv$ .wma$ .mpeg$ .divx$ .jar$ .mkv$ acl SSL_ports port 443 563 acl Safe_ports port 80 # http acl Safe_ports port 21 # ftp acl Safe_ports port 443 563 # https, snews

35

acl Safe_ports port 70 # gopher acl Safe_ports port 210 # wais acl Safe_ports port 1025-65535 # unregistered ports acl Safe_ports port 280 # http-mgmt acl Safe_ports port 488 # gss-http acl Safe_ports port 591 # filemaker acl Safe_ports port 777 # multiling http acl Safe_ports port 631 # cups acl Safe_ports port 873 # rsync acl Safe_ports port 901 # SWAT acl purge method PURGE acl CONNECT method CONNECT http_access allow manager localhost http_access allow fun http_access deny manager http_access allow purge localhost http_access deny purge http_access deny !Safe_ports http_access deny CONNECT !SSL_ports #http_access allow liberafun #http_access allow fun #http_access deny siteblock !liberafun http_access allow localhost http_access deny download http_access deny siteblock !sitelib http_access allow password iesam http_access allow iesam http_access deny all http_reply_access allow all icp_access allow all cache_mgr matheus@gr.iesam-pa.edu.br visible_hostname 10.255.255.253 #httpd_accel_host virtual #httpd_accel_port 80 #httpd_accel_with_proxy on #httpd_accel_uses_host_header on error_directory /usr/share/squid/errors/Portuguese/

36

Potrebbero piacerti anche