Configurando opções do servidor de páginas e do servidor ftp. Após ter criado um diretório virtual, quer seja de http ou de ftp, você pode configurar uma série de opções para este diretório. As configurações podem ser configuradas para o servidor como um todo, neste caso as configurações serão válidas para todos os diretórios virtuais do servidor. As configurações também pode ser feitas em cada diretório virtual, individualmente. No caso de conflito entre as configurações do servidor e as configurações de um diretório virtual, prevalecem as configurações do nível mais inferior, ou seja, do diretório virtual. Também é possível definir configurações individuais para pastas e subpastas de um diretório virtual, quer seja do servidor de páginas (http), quer seja do servidor de arquivos (ftp). Vamos ver alguns exemplos de configurações do IIS. Exemplo 1: Configurando opções do Default Web Site (Site da Web padrão). Para configurar as opções básicas do Servidor Web Padrão, siga os passos indicados a seguir: 1. Faça o logon como Administrador ou com uma conta com permissões de administrador. 2. Abra o console Gerenciador dos Serviços de informações da Internet (IIS): Iniciar -> Ferramentas administrativas -> Gerenciador dos Serviços de informações da Internet (IIS). 3. Clique no sinal de + ao lado do nome do Computador para exibir as opções disponíveis. Observe que são exibidas as opções Sites da Web e Sites FTP, dentre outras opções disponíveis. 4. Clique no sinal de + ao lado da opção Sites da Web, para exibir os sites disponíveis. Por padrão é possível “hospedar” mais de um site, com endereços diferentes, em um mesmo servidor IIS. Para maiores detalhes sobre a hospedagem de vários sites em um único servidor, consulte o Capítulo 24 do livro Windows Server 2003 – Curso Completo, 1568 páginas, de minha autoria, publicado pela Editora Axcel Books. Observe que é exibida a opção Site da Web padrão. Este é o site criado, automaticamente, durante a instalação do IIS. 5. Clique no sinal de + ao lado de Site da Web padrão. Serão exibidos os diretórios virtuais criados durante a instalação, mais o diretório exemplos, criado no exercício anterior, conforme indicado na Figura 13.13: NOTA: Dependendo dos componentes do IIS que você instalou, outras opções poderão ser exibidas no console Gerenciador dos Serviços de informações da Internet (IIS). Figura 13.13 Site da Web padrão, criado durante a instalação do IIS. www.juliobattisti.com.br 734 Conforme descrito anteriormente podemos definir configurações diretamente no Site da Web padrão, configurações estas que serão válidas para todos os diretórios virtuais do site. Também podemos definir configurações personalizadas em um determinado diretório virtual. Neste caso valerão as permissões definidas ao nível do diretório virtual. Ao definir configuraçõe no Site da Web padrão, se houver diretórios virtuais com configurações diferentes, o IIS abre uma janela perguntando se você deseja aplicar as novas configurações a todos os diretórios virtuais ou deseja manter, nos diretórios virtuais, as configurações já existentes, mesmo que estas sejam diferentes das configurações que estão sendo aplicatas no site principal. 6. Clique com o botão direito do mouse em Site da Web padrão. No menu de opções que é exibido clique em Propriedades. Será exibida a janela de Propriedades, com a guia Site da Web já selecionada, conforme indicado na Figura 13.14: Figura 13.14 A guia Site da Web. Nesta guia podemos definir diversas configurações. No grupo Identificação do siste da Web, você pode definir as seguintes configurações: ◆ Descrição: Neste espaço você pode digitar uma descrição para o site, como por exemplo: Documentos e Manuais. A descrição padrão é Site da Web padrão, a qual é definida durante a instalação do IIS. ◆ Endereço IP: Caso você tenha mais de um endereço IP configurado na mesma placa de rede, ou tenha mais de uma placa de rede, é possível definir qual endereço IP será associado com o site. Por padrão Todos os endereços 735 www.juliobattisti.com.br IP estão associados com o site padrão. O uso de múltiplos endereços IP em uma mesma placa de rede ou de múltiplas placas de rede, com diferentes endereços IP permite que sejam criados diferentes sites para diferentes grupos de usuários. ◆ Porta TCP: Cada serviço no protocolo TCP/IP é configurado para trabalhar em uma porta específica. O protocolo HTTP, por padrão, é configurado para responder na porta 80. Se você definir uma porta diferente da 80, o número da porta deverá ser informado no endereço de acesso. Por exemplo, se você definir a porta 470, o endereço para acesso ao site fica da seguinte maneira: http://srv-win2003.abc.com:470. Observe que o número da porta é informado após o endereço, separado deste pelo sinal de dois pontos (:). No grupo Conexões você pode definir as seguintes configurações: ◆ Tempo limite de conexão: Define por quanto tempo (em segundos) o IIS tenta atender uma determinada requisição. Quando o tempo limite for atingido, o cliente receberá uma mensagem que o servidor não está respondendo. ◆ Ativar Keep-Alive de http: Por padrão, o navegador do cliente faz a solicitação de uma página para o servidor, estabelece uma conexão, recebe o conteúdo e fecha a conexão. Se uma nova requisição for feita logo em seguida, uma nova conexão será estabelecida, o conteúdo fornecido e a conexão será fechada. Este processo de abrir e fechar uma conexão, a cada requisição do cliente, faz com que sejam consumidos recursos de memória e processamento no servidor. Os navegadores atuais permitem que seja mantida a conexão entre o cliente e o servidor e que várias requisições possam ser feitas, dentro da mesma conexão. Esse procedimento é chamado de HTTP Keep-Alives (manter ativada). Keepalive é uma especificação do protocolo HTTP que permite uma melhora considerável no desempenho do servidor. Sem ele, um navegador precisaria fazer numerosas solicitações de conexão para uma página com diversos elementos, como elementos gráficos. Por exemplo, para uma página com 20 figuras seriam necessárias 21 conexões: uma para a página e um para cada uma das figuras. Uma conexão separada precisaria ser feita para cada elemento. Essas solicitações e conexões adicionais requerem atividade e recursos adicionais do servidor, como memória e processador, diminuindo sua eficiência. Elas também tornam um navegador muito mais lento e as páginas menos aptas a responder, especialmente em uma conexão de alta latência (lenta), como por exemplo o acesso discado. Por padrão, o HTTP Keep-Alives fica ativado durante o processo de instalação. É recomendado que você mantenha esta opção sempre ativada. IMPORTANTE: Você deve conhecer o número de porta utilizado pelos principais serviços. http – 80, ftp – 21, SSL – 443, smtp – 25, DNS – 53, pop3 – 110, ldap – 389. No grupo Ativar logs você pode definir se deve ser mantido ou não um log de acesso aos recursos do IIS. Existem vários formatos diferentes de log. Por padrão é utilizado o formato do arquivo de log estendido do W3C. É recomendado que você mantenha este formato, pois este é um formato padrão que pode ser lido por muitos dos programas geradores de estatísticas de acesso, com base nos logs de acesso. Para personalizar o log de acesso dê um clique no botão Propriedades. Será exbida a janela indicada na Figura 13.15. www.juliobattisti.com.br 736 Figura 13.15 Configurando as propriedades do log. Na guia Geral você define de quanto em quanto tempo um novo arquivo de log deve ser gerado: Por hora, diariamente, semanalmente, Mensalmente, Tamanho de arquivo ilimitado (usa sempre o mesmo arquivo) ou Quando o tamanho do arquivo atingir (x MB). A opção a ser escolhida depende das políticas de segurança e do volume de acesso ao site. Por exemplo, para sites muito acessados a opção por hora pode ser a mais indicada. Na guia Propriedades gerais também é possível def inir a pasta onde os arquivos de log serão gravados. Por padrão é def inida a pasta: C:\WINDOWS\System32\LogFiles, onde C:\ é o drive onde está instalado o Windows Server 2003 e WINDOWS é a pasta onde o Windows Server 2003 foi instalado. Este caminho poderá ser diferente, dependendo do local e do drive onde foi instalado o Windows Server 2003. Na guia Avançado, indicada na Figura 13.16, podemos definir informações adicionais a serem gravadas no log, como por exemplo: Nome do usuário, Nome do serviço, Nome do servidor e assim por diante. Figura 13.16 A guia Propriedades avançadas. 737 www.juliobattisti.com.br 7. Defina as configurações desejadas e clique em OK. Você estará de volta à guia Site da web, da janela de propriedades do site padrão. 8. A guia Filtros ISAPI é utilizada para a adição ou remoção de Filtros ISAPI, os quais são componentes de Software utilizados para responder a solicitações específicas do usuário. Por exemplo, o processador de páginas ASP é um filtro ISAPI. 9. Dê um clique na guia Pasta base. Esta guia é utilizada para definir qual o diretório padrão do servidor IIS e a qual pasta ele está associado. Por padrão o diretório base está associado a pasta c:\inetpub\wwwroot, conforme indicado na Figura 13.17: Figura 13.17 A guia Diretório base. Observe que o diretório base não precisa, necessariamente, estar associado com uma pasta localizada no mesmo computador onde o IIS está instalado. Observe que além da opção Um diretório localizado neste computador, temos as opções: Um compartilhamento localizado em outro computador e Um redirecionamento para uma URL. Nesta guia também podemos definir as permissões de acesso ao conteúdo do diretório base que, por padrão, está definido apenas como leitura – Ler. Uma opção que deve estar sempre desmarcada é a opção Pesquisa no diretório. Se esta opção estiver marcada e não existir uma página padrão configurada (conforme mostrarei logo a seguir) e o usuário digitar o endereço para o diretório, sem especificar uma página, será exibida uma listagem com todo o conteúdo do diretório, o que pode ser um problema de segurança. Na Figura 13.18 temos o exemplo da listagem que é exibida quando a opção Pesquisa no diretório está marcada e o diretório é acessado. www.juliobattisti.com.br 738 Figura 13.18 Listagem de todo o conteúdo do diretório. 10. Dê um clique na guia Documentos. Nesta guia você pode definir uma lista de documentos como sendo o conteúdo padrão do diretório. Por exemplo, se você define a página index.asp como sendo a página padrão e o usuário acessa o site, sem especificar um nome de página: http://srv-win2003.abc.com - será carregada a página definida como padrão. Para adicionar uma página como padrão clique no botão Adicionar... Para remover uma página da lista utilize o botão Remover. Com os botões de seta para cima e seta para baixo, você pode alterar a ordem dos documentos na lista. É possível ter mais do que uma página definida como padrão, conforme indicado na Figura 13.19. Neste caso o IIS irá tentar carregar a primeira página da lista, se esta não for encontrada o IIS tenta carregar a segunda e assim por diante. Com a opção Ativar rodapé do documento, é possível configurar o IIS para inserir automaticamente um arquivo em formato HTML na parte inferior de todas as páginas da Web enviadas pelo servidor (não há suporte para a anexação de rodapés às páginas ASP). Por exemplo, o arquivo pode conter instruções de formatação HTML para adicionar uma mensagem de texto simples e um logotipo da empresa em todas as páginas do site. Nota da documentação do IIS: Os rodapés de documentos podem reduzir o desempenho do servidor Web, especialmente se uma página da Web for acessada com freqüência. 11. Na guia Erros personalizados você pode associar páginas com mensagens de erro personalizadas para cada tipo de erro. Por exemplo, o erro mais tradicional é o erro 404, o qual indica que a página solicitada não foi encontrada. Quando este erro ocorre é exibida uma mensagem de erro padrão. Você pode criar uma página HTML mais elaborada e configurar esta página para ser exibida quando o erro 404 ocorrer. A página pode conter um link para o usuário voltar ao site principal e um email para que o usuário informe ao Administrador do site sobre o problema ocorrido. A guia Erros personalizados é utilizada para associar páginas HTML personalizadas com um determinado tipo de erro. 739 www.juliobattisti.com.br Figura 13.19 A guia Documentos. 12. Defina as configurações desejadas e clique no botão OK. Se algum dos diretórios virtuais apresentar configurações diferentes das definidas para o site principal, uma janela será exibida, listando os diretórios com configurações diferentes das do site principal. Você pode optar por aplicar as configurações do site principal a um ou mais dos diretórios ou a nenhum deles. NOTA: Para uma descrição completa dos diferentes tipos de erros consulte a documentação do IIS. Exemplo 2: Para configurar as opções do servidor de arquivos – Site FTP padrão, siga os passos indicados a seguir: 1. Faça o logon como Administrador ou com uma conta com permissão de administrador. 2. Abra o console Gerenciador dos Serviços de informações da Internet (IIS): Iniciar -> Ferramentas administrativas -> Gerenciador dos Serviços de informações da Internet (IIS). 3. Clique no sinal de + ao lado do nome do Computador para exibir as opções disponíveis. Observe que são exibidas as opções Sites da Web e Sites FTP. 4. Clique no sinal de + ao lado da opção Sites FTP, para exibir os sites de ftp disponíveis. Por padrão é possível “hospedar” mais de um site de ftp, com endereços diferentes, em um mesmo servidor IIS. Observe que é exibida a opção Site FTP padrão. Este é o site de ftp criado, automaticamente, durante a instalação do IIS. www.juliobattisti.com.br 740 NOTA: Dependendo dos componentes do IIS que você instalou, outras opções poderão ser exibidas no console Internet Services Manager. 5. Clique no sinal de + ao lado de Site FTP padrão. Observe que por padrão ainda não foi criado nenhum diretório virtual além do diretório root do ftp que por padrão é o seguinte: c:\inetpub\ftproot. 6. Clique com o botão direito do mouse na opção Site FTP padrão e no menu de opções que é exibido dê um clique em Propriedades. Será exibida a janela de propriedades do site FTP padrão com a guia Site FTP selecionada, conforme indicado na Figura 13.20: Figura 13.20 Janela de propriedades do site FTP padrão. Na guia Site FTP temos opções semelhante às encontradas na guia Site da Web, da janela de propriedades do Site Web padrão. As opções do grupo Identificação são idênticas às descritas no exemplo anterior. Para maiores detalhes consulte o Exemplo 1. A única diferença é a porta na qual é acessado o serviço de FTP que é a porta 21, ao invés da porta 80 usada pelo serviço HTTP. No grupo conexão podemos definir se o site de ftp aceitará um número ilimitado de conexões simultâneas ou se iremos limitar o número de conexões. A configuração padrão é limitar a 100.000 (cem mil) conexões simultâneas. Você também pode definir um tempo limite para a conexão. Caso não exista uma resposta dentro do tempo limite, a conexão será encerrada e uma mensagem de erro será retornada para o usuário. Na guia Site ftp você também pode configurar as opções para o log do serviço de ftp. Estas configurações são semelhantes as vistas no Exemplo 1 para o site Web padrão. 7. Clique no botão Sessõs atuais... Será exibida uma janela com a lista de usuários conectados e o tempo de conexão de cada usuário, conforme indicado na Figura 13.11: 741 www.juliobattisti.com.br Figura 13.21 Lista de usuários conectados ao site de FTP. Você pode desconectar um determinado usuário. Para isso clique no usuário a ser desconectado e depois clique no botão Desconectar-se. Se você clicar no botão Desconectar todos, todos os usuários serão desconectados e suas sessões serão encerradas. 8. Clique no botão Fechar para fechar a janela Sessões de usuário de FTP. 9. Você estará de volta à janela de propriedades do site FTP padrão. Dê um clique na guia Contas de segurança. Nesta guia você define se serão permitidas ou não Conexões anônimas e qual a conta será utilizada para conexões anônimas. Ao instalar o IIS é criada, automaticamente, uma conta com o nome IUSR_Nome_do_computador. Por exemplo, em um servidor com o nome SRV-WIN2003, será criada a conta IUSR_SRV-WIN2003. Durante a instalação do IIS esta conta é criada e configurada para ser utilizada como conta de acesso anônimo. Com o acesso anônimo, os usuários podem acessar o site de FTP sem ter que especificar um nome de usuário e uma senha. Esta configuração é ideal quando você quer criar um site de FTP para acesso público ou para acesso interno para os usuários da sua rede. Com o acesso anônimo os usuários não precisam fazer um logon para ter acesso aos arquivos que estão disponíveis no servidor de ftp. Isto facilita e simplifica o acesso. As opções desta guia estão indicadas na Figura 13.22: Figura 13.22 A guia Contas de segurança. www.juliobattisti.com.br 742 10. Clique na guia Mensagens. Nesta guia você pode definir mensagens que serão enviadas para o usuário quando um dos seguintes eventos ocorre: Boas vindas – quando o usuário conecta-se com o servidor; Saída - quando o usuário encerra a conexão e Nº máximo de conexões – quando o usuário tenta conectar-se mas o número máximo de conexões já foi atingido. Também está disponível a opção Faixa. Neste campo você define uma mensagem que será exibida antes da conexão ser estabelecida. Defina as mensagens desejadas. 11. Dê um clique na guia Pasta base. Nesta guia você define qual o diretório padrão do servidor de ftp, que por padrão é c:\inetpub\ftproot. Você também define se o diretório padrão está associado com uma pasta no computador local ou com uma pasta compartilhada em outro computador. É possível definir permissões de acesso de Leitura, Gravação e se um log deve ser gravado com informações sobre o acesso ao diretório. 12. Defina as opções desejadas e clique em OK para aplica-las. 13. Você estará de volta ao console de gerenciamento do IIS. Feche-o. Com isso aprendemos a configurar as principais opções do site Web padrão e do site FTP padrão. Caso você crie sites adicionais, as configurações serão as mesmas. Quando tenho mais de um site (http ou ftp) as configurações são mantidas, separadamente, para cada site. O IIS utiliza, além do registro do Windows Server 2003, uma base de configurações conhecida como Metabase. Para maiores informações sobre a Metabase consulte a documentação do IIS. Questões e configurações de segurança com o IIS. Neste tópico mostrarei algumas questões relacionadas com a segurança no acesso às informações disponibilizadas pelo IIS. Vamos iniciar falando sobre os tipos de autenticação existentes. Porque devo me preocupar com segurança? Quando se fala de Internet nos dias de hoje, o assunto mais tratado, sem nenhuma dúvida, é sobre Segurança, principalmente devido aos inúmeros vírus difundidos nos últimos meses: I Love You, Nimda, Sircam, Klez, MSBlast, NetSky e tantas outras pragas que provocaram estragos e prejuízos mundo a fora. Muitos relatos, alguns verdadeiros e outros mais fantasiosos, sobre invasões mirabolantes, roubo de número de cartões de créditos, acesso a informações sigilosas de órgãos governamentais e assim por diante. Não podemos negar que o problema de segurança existe e é crítico, principalmente hoje em que o Comércio Eletrônico é, mais do que uma realidade, uma necessidade e um diferencial competitivo para as empresas. O diferencial competitivo não é entrar ou não no mundo do Comércio Eletrônico, o diferencial é criar serviços agregados ao comércio eletrônico, capazes de gerar diferenciais que atraem o cliente. Assuntos como fidelização do cliente, melhorias nos sistemas de CRM – Customer Relationship Management (Gerenciamento das Relações com o Cliente), B2B – Bussines to Bussines, B2C – Bussines to Consumer e outros, estão em evidência. Porém sistemas de Comércio Eletrônico, CRM e assemelhados, exigem acesso a um conjunto de dados estratégicos da empresa. Uma vez que estes sistemas estão acessíveis através da Internet, os dados empresariais precisam estar protegidos. Neste ponto é que a questão segurança é de fundamental importância. O ponto de acesso a estes dados é através de aplicações Web, hospedadas em um servidor Web. Por isso a importância de conhecer os mecanismos de segurança do IIS e a integração destes com o Sistema Operacional e com o sistema de banco de dados utilizado. Existem os mais variados tipos de ataques pela Internet. Um engano comum é pensar que único tipo ataque capaz de causar prejuízos é aquele que rouba ou destrói dados. No caso de um site de comércio eletrônico, qualquer ataque que torne o site indisponível por um determinado período de tempo, causa prejuízos incalculáveis, pois além das compras 743 www.juliobattisti.com.br