GERENCIADOR DE CORREIO ELETRÔNICO (V. 2 26/04/2010)



Documentos relacionados
GERENCIADOR DE TRANSFERÊNCIA DE ARQUIVO (V. 3 17/03/2010)

SIMULADOR DE ROTEAMENTO DE PACOTES (V. 3 20/05/2010)

DESCRIÇÃO DO TRABALHO - VERSÃO DE 29/04/ :00.

Ao ligar o equipamento, você verá a mensagem abaixo, o objetivo dela é fazer a configuração mínima para LOGAR ao servidor da Internet.

Omega Tecnologia Manual Omega Hosting

GUIA INTEGRA SERVICES E STATUS MONITOR

Configurações necessárias para emissão de NF-e no sistema Lojamix

SAD Gestor Gerenciador de Backup

Instalando software MÉDICO Online no servidor

TRBOnet MDC Console. Manual de Operação

Configuração do da UFS no Outlook 2007

Este Procedimento Operacional Padrão define as etapas necessárias de como fazer o Cadastro de Avisos Automáticos no Sistema TOTVS RM.

Universidade Federal do Vale do São Francisco Programa de Assistência Estudantil

EAI Manual do Administrador

Permite o acesso remoto a um computador;

GUIA PRÁTICO DE INSTALAÇÃO

TRANSMISSOR ECF. Sistema de transmissão de arquivos Nota Fiscal Paulista. Manual de Utilização

Departamento de Tecnologia da Informação DTI Coordenadoria de Relacionamento com o Cliente CRC. Treinamento Básico do Correio Eletrônico

Atualizado em 9 de outubro de 2007

Capítulo 7 CAMADA DE TRANSPORTE

Simulador ITIL Exame de Certificação da EXIM

FTP Protocolo de Transferência de Arquivos

e-nota C Consulta de Nota Fiscal eletrônica

MANUAL DO INSTAR-MAIL 1.0. Pagina de login e senha do Instar-Mail

CONTRA CONTROLE DE ACESSOS E MODULARIZADOR DE SISTEMAS

OCOMON PRIMEIROS PASSOS

SIM Sistema de Informação Monitorada Ltda. Vise Pedidos

MANUAL DE UTILIZAÇÃO Aplicativo Controle de Estoque Desktop

UNIVERSIDADE FEDERAL DE GOIÁS CERCOMP (CENTRO DE RECURSOS COMPUTACIONAIS) TUTORIAL DE USO DO WEBMAIL - UFG

Portal do Senac: Área Exclusiva para Alunos Manual de Navegação e Operação

BLACKBERRY - PME e PL Passo a Passo Registro Site BIS BlackBerry PME e Profissional Liberal

Manual de Instalação (TEF LOJA)

Easytrade Admin Client

EDITORA FERREIRA MP/RJ_EXERCÍCIOS 01

MANUAL DE UTILIZAÇÃO SISTEMA DE CADASTRO INTRANET

IMPLEMENTAÇÃO DE SOCKETS E THREADS NO DESENVOLVIMENTO DE SISTEMAS CLIENTE / SERVIDOR: UM ESTUDO EM VB.NET

CONFIGURAÇÃO DE REDE SISTEMA IDEAGRI - FAQ CONCEITOS GERAIS

Manual de Operação do Sistema de Tickets Support Suite

Fundação Universidade Federal do Rio Grande Colégio Técnico Industrial Prof. Mário Alquati Divisão de Ensino de Eletrotécnica Módulo III Automação

FERRAMENTAS DE Usada para visualizar s (correio eletrônico).

Manual de Instalação ( Client / Server ) Versão 1.0

FTP - Protocolo. O protocolo FTP é o serviço padrão da Internet para a transferência de arquivos entre computadores.

O que você precisa entender:

Kerio Exchange Migration Tool

Procedimento para instalação do OMNE-Smartweb em Raio-X

Curso técnico: Informática Disciplina: Aplicativos computacionais

SUMÁRIO CARTÃO USP SOLICITAÇÃO DE 1ª VIA... 2 CARTÃO USP SOLICITAÇÃO DE 2ª VIA... 12

Manual de Instalação e Configuração do SQL Express

Procedimentos para configurar o Monitoramento Agendado no D-viewCam

Área de Administração de Pagamento de Pessoal. Elsa dos Anjos Simões Diretora de Serviços

Manual do Sistema de Apoio Operadores CDL

Manual de Instalação do Hábil Enterprise NFC-e Gratuito. Hábil Enterprise NFC-e Gratuito by Koinonia Software Ltda.

Manual Comunica S_Line

MANUAL DE UTILIZAÇÃO Aplicativo Controle de Estoque Mobile

Sistema de Chamados Protega

Guia de instalação. Versão 1.10

Satélite. Manual de instalação e configuração. CENPECT Informática cenpect@cenpect.com.br

MANUAL DO ANIMAIL Terti Software

Curso de Informática Básica

SMTP, POP, IMAP, DHCP e SNMP. Professor Leonardo Larback

Módulo e-rede Prestashop v1.0. Manual de. Instalação do Módulo. estamos todos ligados

Manual de Instalação e Operação RECIP

NetEye Guia de Instalação

TRBOnet Standard. Manual de Operação

Compartilhamento de recursos de forma a racionar e otimizar o uso de equipamentos e softwares. Servidores e Workstations. Segurança é um desafio, por

INDICE 1. INTRODUÇÃO CONFIGURAÇÃO MÍNIMA INSTALAÇÃO INTERLIGAÇÃO DO SISTEMA ALGUNS RECURSOS SERVIDOR BAM...

PORTAL B2B USUÁRIO FORNECEDOR

Introdução Contratando o produto Link2NFe Assistente de configuração de emissor Configurações Avançadas do Emissor...

Manual de Administração

Manual de utilização do módulo NSE METH-8RL/Exp

Sistema de Consulta ECD1200

Temas para a Primeira Avalição

Despachante Express - Software para o despachante documentalista veicular DESPACHANTE EXPRESS MANUAL DO USUÁRIO VERSÃO 1.1

Como acessar o novo webmail da Educação? Manual do Usuário. 15/9/2009 Gerencia de Suporte, Redes e Novas Tecnologias Claudia M.S.

Obs: É necessário utilizar um computador com sistema operacional Windows 7.

ECD1200 Equipamento de Consulta de Dados KIT DE DESENVOLVIMENTO

TRANSMISSÃO DE DADOS Prof. Ricardo Rodrigues Barcelar

MANUAL DO ADMINISTRADOR

GRUPO ARESTO E-CRM CONTÁBIL. Rua: Farjalla Koraicho, 49 sl

AULA 6: SERVIDOR DNS EM WINDOWS SERVER

Um Driver NDIS Para Interceptação de Datagramas IP

Manual do módulo Hábil NFS-e Emissor de Nota Fiscal de Serviço Eletrônica

S I S T E M A I R I S. Alarmes e Gestão de Serviços. Versão

Manual do Instar Mail v2.0

TUTORIAL DO ALUNO. Olá, bem vindo à plataforma de cursos a distância da Uniapae!!!

1 Sumário O Easy Chat Conceitos Perfil Categoria Instalação O Aplicativo HTML...

Software de gerenciamento de impressoras

LINX POSTOS AUTOSYSTEM

Apresentação. Nossa sugestão é que você experimente e não tenha medo de clicar!!!

NetEye Guia de Instalação

Construtor de sites SoftPixel GUIA RÁPIDO - 1 -

Manual do Usuário. E-DOC Peticionamento Eletrônico TST

Seu manual do usuário SONY ERICSSON K550I

Tutorial Ouvidoria. Acesso, Utilização, Visualização das Manifestações e Resposta ao Manifestante

Instalação: permite baixar o pacote de instalação do agente de coleta do sistema.

SUMÁRIO Acesso ao sistema... 2 Atendente... 3

Institucional

Transcrição:

GERENCIADOR DE CORREIO ELETRÔNICO (V. 2 26/04/2010) OBJETIVO GERAL Este trabalho possui o objetivo de exercitar a lógica de programação dos alunos do Terceiro ano do Curso de BSI e também desenvolver aplicações utilizando o paradigma Cliente/Servidor. OBJETIVO ESPECÍFICO. A aplicação a ser desenvolvida será um gerenciador de Correio Eletrônico. Deverá ser desenvolvida em ambiente Linux, Linguagem C e Sockets. O armazenamento de informação deverá ser implementado em BDB (Berkeley DataBase) A aplicação será dividida em duas partes: Cliente e Servidor DESCRIÇÃO DE UMA CONTA DE e mail Uma conta de e mail possui a seguinte estruturação: identificação_abreviada@dominio <identificação por extenso> Exemplo: airton@dominio_a <Airton Kuada> Toda mensagem enviada para qualquer destino deverá possuir a identificação abreviada do emissor e também a identificação por extenso. DESCRIÇÃO DO CLIENTE O cliente é parte do programa que será utilizado pelo usuário final. Ele deve ser amigável o suficiente para facilitar a interação entre o usuário final e a máquina. Através do cliente, o usuário final irá gerenciar a sua caixa postal e o administrador irá cadastrar os usuários. Requisitos do Cliente: Solicitar autenticação para o usuário (identificação abreviada) Mostrar as mensagens que foram recebidas Mostrar as mensagens que foram enviadas Escrever nova mensagem Remover mensagens Ler mensagens recebidas Quando o usuário for admin será mostrado a tela de gerenciamento de contas de email Tela de autenticação

Gerenciador de Correio Eletrônico User: Senha: > Senha Errada / Usuário não existe Menu Inicial E Ler Caixa de Entrada S Ler Caixa de Saida D Deletar mensagens L Ler Mensagem F Fim de Sessão ==> Entrada Número! Data! De! Assunto! Status 1 12/12/2010 Marina Silva Cuidados com Meio Ambiente Nova 2 12/12/2010 Chico Xavier Cuidados com a Alma Lida 3 12/12/2010 Fenomeno Cuidados com a Gordura Lida 4 12/12/2010 Maradona Tecnicas de gol Nova 5 12/12/2010 Pelé Filhos mal Criados Nova Opção: E Ler Caixa de Entrada S Ler Caixa de Saida D Deletar mensagens L Ler Mensagem F Fim de Sessão ==> Saida Número! Data! Para! Assunto! Status 1 12/12/2010 Carlos@dominio_A Pescaria Não Enviado 2 12/12/2010 Xuxa@dominio_B Festa das crianças Enviado 3 12/12/2010 FHC@dominio_C Palestra Lido em xx/xx/xx 4 12/12/2010 Pelé@dominio_B Futebol arte Removido em xx/xx/xx Opção: Se o usuário teclar uma letra deverá chamar uma função correspondente a ação a ser executado, como por exemplo D irá chamar a função para apagar mensagens. Se for escolhido um número, então deverá ser mostrado o conteúdo correspondente a mensagem selecionado conforme a tela

abaixo: ==> Mensagem Recebida De: Carlos@Dominio_A <Carlos Alberto Parreira> Assunto: Pescaria Corpo da Mensagem: Olá Airton, Vamos pescar no dia 1/5 em Mato Grosso? Abraços Carlos Aberto Parreira ==> Mensagem Enviada Para: Carlos@Dominio_A Assunto: Pescaria Corpo da Mensagem: Olá Parreira. Confirmo a data da pescaria para o dia dia 7/5. Abraços Airton Kuada Tela do usuário admin

Manutenção do Cadastro de Usuário 1. Criar Conta 2. Remover Conta 3. Alterar Senha 4. Consultar Senha 5. Fim DESCRIÇÃO DO SERVIDOR O Servidor é parte do programa que fará o gerenciamento dos usuários e mensagens recebidas. Requisitos do Servidor: Geração de Log de sessão de Cliente, isto é, para cada usuário que se conecta com o Servidor um arquivo de log dever ser criado, Geração de Logs de Sessão entre Servidores, isto é, para conexão de um servidor que está enviado um mensagem, um arquivo de log deverá ser criado Autenticação de conexões de usuários em Banco de Dados BDB Autenticação de conexões de servidor em Banco de Dados BDB Controle do número de conexões de usuário Criação de uma Thread para cada Sessão de usuário que é iniciada, não deve ser utilizado a função fork para a criação de subprocessos Criação de uma Thread para cada Sessão de Servidor que é iniciada, não deve ser utilizado a função fork para a criação de subprocessos Não existe nenhuma interação com usuário na console, isto é, rodará em modo background. O usuário admin deverá ser criado no momento da criação da base de dados O acesso a base de dados será realizado exclusivamente pelo servidor com interação através do cliente CONCEITO DE PEER Um Peer é qualquer vizinho que envie e receba e mail. Cada Peer é responsável por um dominio. No exemplo abaixo temos três Peer que se relacionam. Cada dominio possui o seus usuários cadastrados em uma base de dados independente. Uma mesma identificação de usuário pode pertencer a diferentes dominios. Quando uma mensagem for entregue para um Peer, antes deverá ocorrer a autenticação de quem está entregando a mensagem. Uma mensagem só deve ser aceita de um Peer conhecido e autenticado. A conexão com um Peer é realizada no momento da transferência da mensagem, e desfeita ao final.

CONTROLE DE STATUS DAS MENSAGENS. Todas mensagens que são enviadas e recebidas possuem um controle de estados que são utilizados pelo usuário emissor/receptor para acompanhar o seu estado. Por exemplo, o usuário carlos@domino_a enviou uma mensagem para o mario@dominio_b, o sistema de correio eletrônico enviou até o seu destino, porém o usuário de destino ainda não leu a correspondencia; neste caso, na caixa posta de entrada do usuário mario@dominio_b apareceria uma mensagem no estado novo, e na caixa postal de saída do usuário carlos@dominio_a a mensagem apareceria no estado enviada. Quando a mensagem fosse lida pelo destinatário, em sua caixa postal de entrada o estado seria Lido enquanto para o emissor também seria Lida. Quando a mensagem fosse apagada no destino, a mensagem não mais aparece na caixa postal do destinatário, porém para o emissor a mensagem na caixa postal de saída, constaria o estado removido. STATUS DE MENSAGENS RECEBIDAS Nova Lida Removida (não aparece mais na tela) STATUS DE MENSAGENS ENVIADAS enviada/não enviada Lida Removida Quando uma mensagem não é enviada as seguintes situações podem ocorrer domínio desconhecido (não existe peer) servidor de destino não está disponível (possívelmente desligado)

destinatário não existe (Peer existe, mas usuário não) Falha de autenticação no Peer ARQUIVOS DE CONFIGURAÇÃO Para tornar os programas mais flexíveis, colocaremos alguns parâmetros de controle fora do arquivo fonte e desta forma evitar a recompilação do programa. Arquivo de configuração do Cliente (cliente.conf) server=teste.com.br ou server=10.1.1.1 port=1300 user=jose passwd=teste123 dominio=dominio_a Onde os parametros são: server: nome do host ou endereço IP onde o servidor está sendo executado port: porta de comunicação onde o servidor está esperando ser contactado user: usuário utilizado para estabelecer a sessão com o servidor passwd: senha da conta user utilizado para estabelecer a sessão com o servidor dominio: identificação do dominio a qual pertence o usuário. Arquivo de configuração do Servidor (server.conf) Port=1300 portpeer=1500 maxsession=5 domino=dominio_a db=database.dbd Onde os parâmetros são: port: porta de comunicação onde o servidor irá ser contactado por um cliente (usuário) portpeer: porta de comunicação onde o servidor irá ser contatado por um cliente (servidor) maxsession: número máximo de Threads que será criado no servidor db: Nome do arquivo criado pelo bdb para armazenar as informação Arquivo de configuração de Peer (peer.conf)

; Isto é um comentário ; Primeiro Peer Peer[1] ipaddress=10.1.1.2 portpeer=1234 user=teste pwd=teste123 domino=dominio_b ;Segundo Peer Peer[2] ipaddress=10.1.1.3 portpeer=5678 user=carlos123 pwd=mpb45& domino=dominio_c Onde os parametros são: peer[x] : identifica um determinado peer, onde x é um número qualquer que identifica uma ocorrencia de configuração de Peer. ipaddress: endereço IP do Peer portpeer: corresponde a porta de comunicação que o servidor está esperando a conexão com um Peer user: identificação a ser utilizado no momento da conexão com o Peer pwd: senha de autenticação a ser utilizado no momento da conexão com o Peer dominio: nome do dominio que o Peer é responsável PASSAGEM DE PARAMETROS PARA O CLIENTE O arquivo de configuração deverá ser buscado na pasta corrente onde o programa está sendo executado, porém podemos colocar o arquivo de configuração do cliente em qualquer outra pasta, para indicar a pasta onde se encontra o arquivo de configuração, utilizaremos o parametro c seguindo da localização no sistema de arquivo, como por exemplo:./cliente c /etc/client.conf Outro recurso que podemos utilizar é sobreposição de parametros do arquivo de configuração, utilizando parametros de linha de comando. s nome do servidor p porta de comunicação u usuário de autenticação w senha de autenticação d nome do dominio c local do arquivo de configuração

SEGURANÇA NA TRAVESSIA DA SENHA DE CONEXÃO A segurança da informação que transita pela rede é um ítem de muita importância. Para evitar que as informações de abertura de sessão (conta + senha) sejam interceptadas por qualquer software de monitoração, iremos utilizar a proteção de senha utilizando o algoritmo MD5 para cifrar as informações de autenticação. ANEXOS Os anexos que serão enviados através do email serão armazenados fora do Banco de Dados, bastando existir somente um ponteiro (no banco de dados) para a sua localização no sistema de arquivos. O Cliente deve estar preparado para enviar mais de um anexo. SITES PARA REFERENCIA EM SOCKETS http://www usr.inf.ufsm.br/~giovani/sockets/sockets.txt http://beej.us/guide/bgnet/ http://userpages.umbc.edu/~mabzug1/cs/md5/md5.html ENTREGA DE TRABALHO Data: 06/06/2010 até as 18:00 Penalidades: 2 pontos por minuto de atraso. Número máximo de componentes da equipe: 3 ÍTENS A SEREM AVALIADOS Funcionalidades (4,5 pontos) autenticação com MD5 (0,5) arquivo de configuração (cliente/servidor) (0,25) passagem de parâmetros (cliente) (0,25) implementação de funcionalidades (3,25) Debug (0,25) Codificação (0,5 ponto) Estruturação (0,25) Comentários (0,25) PRÉ REQUISITOS PARA DEFESA DO TRABALHO. O programa deve estar compilando sem erros. Desenvolvimento conforme especificação (cliente/servidor). O módulos de comandos (cliente/servidor) deve estar funcionando integralmente ou parcialmente no cliente e no servidor.

Não será aceita nenhuma correção no momento da defesa PRÉ REQUISITOS PARA RECEBIMENTO DA NOTA. Responder a questões que serão elaborados pelo professor, com o objetivo de comprovação da prova de autoria. O aluno que não souber responder as questões ou demonstrar insegurança nos questionamentos não terá direito a nota.