Administração de Serviços Internet Ana Paula Silva dos Santos [email protected] Deisilan Rocha Silva [email protected] Julho / 1997 Administração de Serviços Internet Roteiro Introdução Serviços de Informação na Internet Requisitos do Sistema e da Rede Requisitos Humanos Conceitos Básicos de WWW Montando um Servidor Web HTML Web: Gateways e Forms Web: Controle de Acesso e Segurança Conclusão Administração de Serviços Internet Introdução Necessidade da Internet – Ler revistas ou jornais – Efetuar pagamentos Serviços de Informação vs Custo da Implantação » Grande aceitação por parte das organizações em geral Administração de Serviços Internet Introdução (Cont) Estrutura dos Serviços Internet – Arquitetura Cliente/Servidor » Cliente: Interage com o usuário e solicita tarefas ao servidor » Servidor: Executa as tarefas solicitadas pelo cliente » Torna possível qualquer computador prover serviços para qualquer outro Administração de Serviços Internet Introdução (Cont.) Como Clientes e Servidores Conversam – Exemplo: servidor e cliente Gopher » O usuário solicita uma tarefa » O cliente Gopher traduz a consulta para uma linguagem aceitável para envio » O cliente “olha” em /etc/services para verificar a porta do servidor Gopher gopher 70/tcp » O cliente encapsula a consulta em pacotes TCP e envia para o servidor na porta 70 Administração de Serviços Internet Introdução (Cont.) Como Clientes e Servidores Conversam (cont.) » A máquina servidora traduz o número da porta para o nome, no caso, Gopher. Inicializa o servidor Gopher, gopherd, e faz a conexão com o cliente » O servidor processa o dado TCP recebido, interpreta a consulta e envia o resultado para o cliente » O cliente recebe a informação e armazena-a na memória ou no disco » A conexão é desfeita e o cliente decide o que exibir para o usuário Administração de Serviços Internet Introdução (Cont.) Como Clientes e Servidores Conversam (cont.) » A conexão é feita e desfeita para todas as requisições de documento » Não há conexão TCP quando o usário está lendo documentos » Em servidores Web cada gráfico em um documento Web cria uma conexão TCP » O FTP cria duas conexões: Controle da conexão Envio de dados Administração de Serviços Internet Serviços de Informação Correio Eletrônico Lista de Discussão FTP Telnet e Finger Gopher WAIS Archie WWW Administração de Serviços Internet Serviços de Informação (Cont.) Correio Eletrônico É um sistema com duas partes distintas: – Interface – Transporte O SMTP (Simples Mail Transfer Protocol) – Tem o objetivo de tranferir a mensagem com eficiência e segurança entre dois hosts – É um protocolo da família de protocolos TCP Administração de Serviços Internet Serviços de Informação (Cont.) Correio Eletrônico O SMTP é composto de: » Ambiente de comunicação de processos: utiliza o TCP para transferir mensagens » Agente de usuário: aplicação » Fila de submissão » Sender-SMTP: responsável por atender as filas de submissão dos usuários » Receiver-SMTP: recebe as mensagens e as coloca nas caixas postais dos usuários. » Caixa postal. Administração de Serviços Internet Serviços de Informação (Cont.) Lista de Discussão Cada lista possui seu próprio endereço eletrônico Tipos: Não-moderadas Moderadas Funcionam de forma automática Servidores: Listproc Listserv Mailbase Mailserv Majordomo Administração de Serviços Internet Serviços de Informação (Cont.) FTP, Telnet e Finger FTP – É o principal método de transferência de arquivos da Internet – Para disponibilizar informação de acesso público, devese criar um servidor ftp » FTP Anônimo » Referência: TCP Network Administration Telnet e Finger – Inclusos na maioria dos sistemas operacionais – Embora primitivos, são muito usados na administração de sistemas Administração de Serviços Internet Serviços de Informação (Cont.) Gopher Ferramenta de busca de informação As informações e serviços disponíveis no servidor são em forma de menus Pressupõe que o usuário sabe onde encontrar a informação Software cliente e servidor está disponível em: – boombox.micro.umm.edu/pub/gopher/UNIX Administração de Serviços Internet Serviços de Informação (Cont.) WAIS Ferramenta para procurar dados Não supõe que o usuário sabe onde encontrar os dados Serve como complemento para o WWW e Gopher A maioria dos clientes WAIS provêem viewers para alguns tipos de documentos » ASCII » LaTeX » PostScript » GIF etc Administração de Serviços Internet Serviços de Informação (Cont.) Archie Compilador de listas de nomes de arquivos disponíveis em áreas de ftp anônimo Particularmente usado para encontrar softwares de acesso público Software cliente disponível nos servidores Archie no diretório pub/archie/clientes Administração de Serviços Internet Serviços de Informação (Cont.) WWW Sistema de informação distribuída Disponibiliza texto, imagens e sons » É a rede em padrão multimídia ou hipermídia Utiliza programas (browsers) para a “navegação” Documentos multimídia e hipermídia são implementados na linguagem HTML. Administração de Serviços Internet Requisitos do Sistema e da Rede Tipo de conexão da rede – Tempo integral – Velocidade adequada ao tipo de serviço disponível Carga na rede – Fontes de tráfego: » Consultas enviadas para o servidor » Respostas das consultas enviadas para o cliente Administração de Serviços Internet Requisitos do Sistema e da Rede (Cont.) Carga computacional – Quão potente computacionalmente será o servidor – Deve se adequar ao serviço » Servidores FTP, Gopher e WWW consomem CPU na proporção do número de consultas » Servidores WAIS são os que mais exigem da CPU Espaço de disco – Armazenamento de dados oferecidos – Para cada serviço oferecido pode ser necessário uma cópia de um mesmo dado Administração de Serviços Internet Requisitos Humanos Familiaridade com o assunto Habilidade para encontrar novos recursos de informação na rede Experiência em projeto de interfaces para organizar os dados sensivelmente e intuitivamente Ser agradável e de procedimentos pacientes Ser organizado para manter as informações disponíveis sempre atualizadas (links, arquivos README etc) Administração de Serviços Internet Conceitos Básicos de WWW Características – Início do desenvolvimento no CERN, enfocando o protocolo HTTP (Cliente/Servidor) – Serviço Gráfico » Browser baseado em GUI » Ligação com outros Serviços de Informação da Internet Crescimento + Popularização Administração de Serviços Internet Conceitos Básicos de WWW (cont.) Conceitos Associados – Hyperlinking Conjunto de links que podem levar a documentos di rentes e esses podem está espalhados na Web – HTML (Hypertext Markup Language) Linguagem que descreve a estrutura de documentos e informação de hyperlinking – URL (Universal Resource Locator) Extensão do padrão de conceitos de nome de arquivo na rede » Descreve o protocolo usado para procurar o servidor alvo, o sistema de host no qual o documento reside Administração de Serviços Internet Conceitos Básicos de WWW (cont.) Conceitos Associados (cont) – Exemplo http://www.di.ufpe.br/~usuario/indice.html – Tipos de URLs » Absoluta http://www.di.ufpe.br/~drs/ais.html » Relativa <a href=“exemplo.html”>Link Text</a> Administração de Serviços Internet Conceitos Básicos de WWW (cont.) Conceitos Associados (cont) – Browser Web » Usa a URL para recuperar um documento Web de um servidor, interpreta o HTML e apresenta o documento para o usuário » Relacionamento entre browser Web e outros servidores de informação da Internet Administração de Serviços Internet Conceitos Básicos de WWW (cont.) Conceitos Associados (cont) – Servidores WWW Software que observa uma Porta TCP e quando o cliente solicita uma página específica, ele recupera e retorna-a para o cliente – HTTP » Protocolo usado para enviar e receber mensagens entre cliente e servidor Web » Operação Geral HTTP - protocolo request-response Administração de Serviços Internet HTTP (cont) Formas de implementar o Protocolo request-response – Operação Básica Cliente para Servidor HTTP Mensagem de Pedido Agente Usuário TCP Porta 80 Servidor HTTP Mensagem de Resposta Figrua 2 - Operação Básica Cliente para Servidor HTTP Administração de Serviços Internet HTTP (cont) Formas de implementar o Protocolo request-response (cont) – Operação Cliente/Servidor HTTP via Proxy Pedido para o Proxy Agente Usuário Pedido para o Servidor Proxy Resposta para o Agente Usúario Resposta para o Proxy Figrua 3 - Operação Cliente Servidor HTTP via Proxy Administração de Serviços Internet Servidor HTTP HTTP (cont) Formas de implementar o Protocolo request-response (cont) – Operação Cliente/Servidor HTTP via Tunnel Pedido para o Servidor Agente Usuário Pedido para o Servidor Tunnel Resposta para o Agente Usúario Resposta para o UA Figrua 4 - Operação Cliente Servidor HTTP via Tunnel Administração de Serviços Internet Servidor HTTP HTTP (cont) Histórico – HTTP 0.9 » Cada pedido uma conexão » Só texto – HTTP 1.0 » Formalizada em Maio de 1996 » Múltiplas conexões » Troca vários tipos de informação » MIME(Multimidia Internet Mail Extensions) Administração de Serviços Internet HTTP (cont) – HTTP 1.1 » Compatível com aplicações do HTTP 1.0 » Principais Diferenças das Versões Anteriores: Novo método de pedido PUT - UA pede e o servidor armazena DELETE - UA pede para deletar um recurso, o servidor indisponibiliza o recurso Conexão persistente Uma vez que a conexão cliente/servidor foi aberta, a mesma só é desfeita se um dos dois fechar Caching Geralmente guarda-se em cache respostas de GET e HEAD Administração de Serviços Internet Conceitos Básicos de WWW (cont.) Servidores e Browsers WWW – Browser Web » Existem browsers para diversas plataformas , S.O e GUI » Classificação Orientado a linha Orientado a click » Exemplo Mosaic •Origem NCSA •Suporte a formatos gráficos Netscape Navigator •Distribuidor NCC •Produto Comercial •Suporte a formatos gráficos •Visualização mais rápida Administração de Serviços Internet Conceitos Básicos de WWW (cont.) Servidores e Browsers WWW (cont) – Servidores Web » NCSA Escrito em C, é de domínio público Compatível com HTTP a partir da versão 1.0 Padroniza para executar buscas, HTML,controle de acesso e imagens ativas » CERN Servidor de hypertext de domínio público (em C) Suporta imagens ativas, scripts executáveis, controle de acesso e pesquisa via CGI Administração de Serviços Internet Montando um Servidor Web Montando Serviços Básicos – Servidor NCSA » cgi-bin - deve conter um exemplo de scripts gateway e binário pré-compilado. » conf - contém todos os arquivos de configuração usados para controlar operações no servidor Web » icons - contém a classificação de todos os icons que são usados pelo diretório indexado » logs - contém os arquivos de log de acesso e de erro » support - nele estão programas que são usados para controle de acesso de diretório e acesso global Administração de Serviços Internet Montando um Servidor Web (cont) Montando Serviços Básicos (cont) – Compilação » Copiar o Makefile com outro nome » Efetuar mudanças Mude a variável cc para o nome do compilador usado pelo seu sistema Mude a variável CFLAGS caso queira usar flags diferentes para seu compilador Adicione algumas bibliotecas extra que são necessárias no seu sistema com a variável EXTRA_LIBS Execute o comando make para que a compilação seja efetuada. Administração de Serviços Internet Montando um Servidor Web (cont) Montando Serviços Básicos (cont) – Configuração Específica do Site » Arquivos de Configuração httpd.conf - arquivo de configuração principal do servidor srm-conf - arquivo de configuração de recursos do servidor access.conf - arquivo de controle de acesso global (ACF) » Copiar os arquivos de extensão .conf-dist para .conf por exemplo Administração de Serviços Internet Montando um Servidor Web (cont) Configuração Específica do Site (cont) – Alteração Básica do httpd.conf » Modificar User e Group para o nome desejado » Assegurar que os nomes relativos ao item acima se encontram no /etc/passwd e /etc/group » Modificar o administrador do serviço para webmaster@seu_domínio » Mude o ServerRoot a path absoluta referente ao diretório onde foi colocado o binário do httpd » Especificar o nome do servidor para ser www.seu_domínio » Trocar o ServerType se deseja executar o servidor Administração de Serviços Internet pelo inetd Montando um Servidor Web (cont) Configuração Específica do Site (cont) – Alteração Básica do srm.conf » Incluir path completa da árvore de documentos (DocumentRoot) » Desabilitar a diretiva UserDir – Alteração Básica do access.conf » Mudar a primeira diretiva caso o diretório cgi-bin tem localização diferente » Mudar a diretiva Options associada com o diretório cgi-bin par remover a opção Indexes » Mudar a segunda diretiva para compatibilizar o DocumentRoot com o que foi setado no srm.conf Administração de Serviços Internet Montando um Servidor Web (cont) Configuração Específica do Site (cont) – Inicialização do inetd » Editar o /etc/services para adiciionar a linha: http numero_porta/tcp » Editar o /etc/inetd.conf para adicionar a linha: http stream tcp nowait nobody /usr/local/etc/httpd/http http » Reinicializar o inetd pela identificação do seu processo e usar o Kill - HUP para reinicializar Administração de Serviços Internet Manutenção do Servidor Web (cont) Logs do HTTP – Log de Erro e Log Transfer – Formato do Arquivo de Log para acesso host rfc931 authuser data-time request status byte – Ferramentas de Análise » getstats » wwwstat » uusage Administração de Serviços Internet HTML Visão Geral – Documentos HTML » Arquivo texto ASCII que contém recursos HTML embutido – Documento escrito de forma diferente – Documento lido de forma diferente Diferenças entre HTML e outros Formatos – Ferramentas de manipulação de documentos HTML – Autor não decide como o texto será apresentado – Recursos explicitados Administração de Serviços Internet HTML (cont) Diferentes Versões HTML – HTML2.0, ela é baseada em SGML – A versão mais recente é a HTML3.0 » As principais inovações são: fill-out forms, tables, equações matemáticas e características para maior controle de layout. – Dentre as variações de HTML, uma é a mais promissora VRML1.0 » VRML (Virtual Reality Modeling Language) é uma tentativa de estender dentro da Web o domínio de gráficos tridimensionais Administração de Serviços Internet Web : Gateway e Forms Gateways – CGI é um padrão para interface de aplicações externas com servidores de informação » Fluxo de Informação 1 2 Form ou Query Browser Web CGI Servidor httpd HTML 5 HTML Programa ou script Gateway 3 4 Figura 6 - Fluxo de Informação através do Common Gateway Interface Administração de Serviços Internet Informação Web : Gateway e Forms (cont) Gateways (cont) – URL nos documentos que usam gateway » URLs Absolutas » URLs Relativas => primitiva Base – Adicionando diretórios cgi-bin » Adicionar diretivas ScriptAlias para cado novo cgibin, no arquivo srm.conf. Exemplo: ScriptsAlias /cgi-bin /usr/local/etc/httpd/cgi-bin/ ScriptsAlias /cs-cgi-bin /cs/httpd/cgi-bin ScriptsAlias /ee-cgi-bin /ee/web/scripts Administração de Serviços Internet Web : Gateway e Forms (cont) Processando Forms – Forms » Progresso natural das consultas simples » HTML 3.0 e Servidores NCSA suportam forms Comparação entre WWW, Gopher e WAIS – Todos são SI baseados no modelo C/S, diferindo no Modelo de Dados – Gopher: menu, documento, índice ou telnet – WAIS: tudo é índice inclusive o que retorna – WWW: tudo é hipertexto – WWW=Gopher=>lista de links|documentos sem Links Administração de Serviços Internet sem Link – WWW=WAIS=>página de retorno Controle de Acesso e Segurança Controle de Acesso e Autenticação de Usuário – Métodos de controle de acesso » Controle de acesso a nível de domínio Tarefa do administrador Exemplo: Proibir o Departamento d1 Diretivas order - define a regra de quais diretivas de deny e a allow, são avaliadas com uma section Limit allow - define quais hosts podem acessar o diretório deny - define quais hosts são privadas de acessar o diretório Administração de Serviços Internet Controle de Acesso e Segurança (cont) Métodos de controle de acesso (cont) – Autenticação de individual, usuário e grupo » Controle de acesso individuais » Prompts <nome do usuário, password> » Trabalho conjunto entre browser e servidor Arquivo de controle de acesso – access.conf no httpd NCSA – htaccess Administração de Serviços Internet Controle de Acesso e Segurança (cont) Segurança – Quem terá permissão e do que – Árvore de documentos de links externos » Browser não pode caminhar randomicamente » Desabilitar a opção FollowSymLink no access.conf – Diretório HTML pessoal » Diretiva UserDir inalterada no srm.conf => /home/fulano/public_html » Garantir segurança : No access.conf deve conter: <Directory /home> AllowOverride None Options Indexes </Directory Administração de Serviços Internet Conclusão Serviços de Informação surgiram de acordo com a necessidade dos usuários Ferramentas de navegação proporcinam me lhorias na forma de manipulação da informação WWW: Serviço de maior aceitação Administrar esses serviços exige conheci mentos específicos de funcionamento e uma série de medidas para garantir desempenho e segurança Administração de Serviços Internet