Instalando e configurando o Windows Server 2003 e IIS 6.0 24.08.12 14:41
O IIS 6 é o aplicativo que permite que o seu Win2003 funcione como servidor de páginas da web (e serviços correlatos). O IIS 6.0 teve diversas melhorias em relação à versão 5.0 presente no Windows 2000 Server, tornando-o muito mais seguro para hospedagem de sites. Ele foi praticamente reescrito "do zero" e o resultado é que até hoje (dez meses após o lançamento do Win2003), não há nenhuma vulnerabilidade relacionada com essa versão do IIS 6.0.
A instalação default do Win2003 não instala o IIS por motivos de segurança e no exemplo abaixo mostrarei como instalá-lo e configurá-lo para que ele hospede páginas .htm, .html e .asp, criando um site (BABOO 2) que será gerenciado por ele.
Para instalar o IIS, clique no botão Iniciar > Painel de Controle > Ferramentas Administrativas > clique em Assistente para configurar o Servidor > clique em Avançar e Avançar. Se aparecer uma mensagem avisando que uma das conexões de rede não está funcionando, isso é normal pois indica que o seu computador tem duas placas de rede instaladas mas somente uma está conectada (imagem abaixo). Clique em OK.
Escolha a opção Servidor de aplicativos (IIS, ASP.NET) e clique no botão Avançar:
Na próxima tela você informa se há Extensões de servidor do FrontPage e se deseja ativar ASP.NET. Clique em Avançar para iniciar a instalação do IIS e em alguns segundos a instalação será finalizada. Não se esqueça de manter o CD do Win2003 no drive para que a instalação seja possível.
Para você começar a configurar o IIS, clique no botão Iniciar > Painel de Controle > Ferramentas Administrativas > clique em Gerenciador dos Serviços de informações da Internet:
Agora vamos criar o site BABOO 2 - e como o IIS automaticamente criou em Sites da Web um Site da Web padrão, vamos eliminá-lo pois não há necessidade de mantê-lo: clique com o botão da direita do mouse em Site da Web padrão e Excluir. Clique em Sim para confirmar a sua exclusão. Agora clique com o botão da direita do mouse em Sites da Web e clique em Novo > Site da Web:
Clique em Avançar e começamos a criar o novo site. No campo Descrição, digite o nome genérico do site (BABOO 2 no nosso caso) e clique em Avançar. No endereço IP a ser usado no site você deve indicar o endereço de IP que responderá por esse site. Deixando em (Todos os não atribuídos) fará com que o IP atualmente configurado seja automaticamente utilizado.
Se você quiser indicar o IP correto, feche a janela atual para cancelar a criação do site atual e clique no botão Iniciar > Painel de Controle > Conexões de Rede > Clique na conexão existente (normalmente é "Conexão Local") > Propriedades > Avançado > dê um duplo-clique em Protocolo TCP/IP. Coloque ali as informações desejadas (IP, Gateway e DNS) e clique em OK. Agora volte à janela do Gerenciador do IIS, clique com o botão da direita do mouse em Sites da Web e clique em Novo > Site da Web, seguindo os passos anteriores. A diferença é que agora o IP que você forneceu na sua conexão de rede está disponível para ser configurado no IIS.
No campo Porta TCP, deixe como está (80) e se você desejar, digite o cabeçalho de host do site no campo correto. Clique em Avançar. No campo Caminho: você deve informar qual é a pasta que conterá os arquivos do seu site, tendo a certeza de manter ativada a opção Permitir acesso anônimo a este site. Clique em Avançar.
A próxima tela pergunta as permissões que serão aplicadas na pasta utilizada para armazenar os arquivos do seu site. É recomendável deixar apenas as opções Leitura e Executar scripts (ASP, por exemplo) ativadas. Clique em Avançar para finalizar a instalação:
Clique em Diariamente (para que se crie um arquivo de log por dia), clique em Usar hora local para nomeação e sobreposição de arquivo para que a data/hora do log seja o mesmo do servidor (ao usar a hora do W3C, que é a mesma de Greenwich). Em Diretório do arquivo de log, digite a pasta aonde serão salvos os arquivos de log.
Compactação do conteúdo da pasta de log
O ideal é que você mantenha os arquivos de log em uma partição própria pois eles costumam fragmentar muito a partição aonde estão localizados. Além disso você deve configurar a pasta de log para compactar os arquivos e sub-pastas ali existentes para que os arquivos de log ocupem menos espaço no disco (essa dica pode dobrar o espaço livre destinado aos logs pois o arquivo de log é um arquivo texto que é altamente compactável).
Para ativar a compactação, clique no botão Iniciar > Meu computador > duplo-clique na partição aonde os arquivos de log estão localizados > clique com o botão da direita do mouse na pasta aonde os arquivos de log estão localizados > Propriedades > Avançados > clique em Compactar o conteúdo para economizar espaço em disco > clique em OK > clique em Aplicar as alterações a esta pasta, sub-pastas e arquivos e clique em OK. Quanto menor o número de arquivos ali, mais rápida essa tarefa será finalizada. Depois da compactação, a pasta ficará com a cor azul, indicando que os dados ali estão compactados.
Para você verificar a taxa de compactação, clique com o botão da direita em qualquer arquivo dentro da pasta > Propriedades. O tamanho original do arquivo está indicado em Tamanho: e o tamanho utilizado no disco rígido está mostrado em Tamanho do disco:. Quanto maior a diferença entre ambos, melhor, pois isso indica que o arquivo está bem compactado e você está economizando bastante espaço com isso.
A compactação da pasta de log não influencia de modo notável o desempenho do servidor.
Clique agora na aba Propriedades e clique em Cookie ( cs (Cookie) ), que é o penúltimo item da lista. Clique em Aplicar e em OK.
Em relação às demais opções, você pode deixá-las no modo default do IIS 6. São elas:
Desempenho: que permite limitar a largura de banda e o número de conexões no site
Filtros ISAPI: permite a configuração de filtros ISAPI (programa que responde a eventos)
Pasta Base: indica as opções de configuração da pasta aonde estão localizados os arquivos do site
Documentos: lista os tipos de documentos que serão renderizados (e a ordem que isso ocorre) e a configuração do rodapé
Erros personalizados: permite que você modifique os arquivos de respostas de erros de HTTP, personalizando-os de acordo com a sua necessidade
Cabeçalhos HTTP: permite ativar a expiração de conteúdo (fazendo com que o browser compare a data atual com a data de validade das páginas para definir se ela será carregada novamente ou se ele utilizará o cache para isso), definir a sua classificação (visando identificar conteúdos que possam ser censurados pelo supervisor de conteúdo do browser) e tipos de MIME (que permite definir as extensões dos arquivos)
Segurança de diretório: permite configurar o tipo de autenticação e controle de acesso, as restrições de IP e domínio (para você impedir o acesso ao seu site) e comunicações de segurança (certificados para comunicação segura e canal de segurança SSL). Na imagem abaixo, qualquer computador cujo IP que seja 68.xxx.xxx.xxx (tipicamente utilizado por proxys anônimos) não conseguirá acessar o site, recebendo uma mensagem de acesso negado quando tentar acessá-lo:
Habilitando a compactação HTTP do IIS 6
O IIS 6 permite que os dados enviados para os browsers sejam automaticamente compactados, o que economiza banda e aumenta a velocidade de navegação. Para habilitar a compactação (que é realizada no kernel e não influencia a performance do servidor), você deve clicar com o botão da direita do mouse em Sites da Web > aba Serviço. Clique nas opções Compactar arquivos de aplicativo e Compactar arquivos estáticos. No tamanho máximo do diretório temporário, deixe em Ilimitado. Clique em OK.
Segundo o site Port80, apenas 2,9% das empresas utilizam a compressão de dados e com isso Empresas Fortune 1000 gastam milhões com excesso de banda por não utilizarem compressão HTTP.
Arquivos ASP e ASP.NET no IIS 6
Para você permitir a execução de arquivos ASP no IIS 6, você deve clicar em Extensões de serviços da Web > clicar com o botão da direita do mouse em Páginas do Active Server > Permitir.
Se você não clicou na opção de ASP.NET no início da instalação do IIS e agora você deseja utilizá-lo, você deve instalar o ASP.NET: clique no botão Iniciar > Painel de Controle> Adicionar/Remover programas> Adicionar/Remover componentes do Windows > clique em Servidor de aplicativo > botão Detalhes > ASP.NET. Clique em OK e Avançar.
Pool de processos
O IIS 6 tem o Pool de processos, que permite que você configure ações automáticas que serão tomadas quando algum processo apresente problemas: ao invés do administrador de redes reiniciar o processo, isso pode ser feito automaticamente pelo próprio IIS!
Para você configurar o Pool de processos, clique com o botão da direita do mouse em Pools de aplicativos: ali existem diversas opções. Nas abas você encontrará:
Reciclagem: permite a reinicialização do processo depois de um tempo pré-definido, por número de solicitações ou então em um horário pré-estabelecido e reciclagem de processos que consumam muita CPU (tanto em memória virtual quanto em memória utilizada).
Desempenho: permite desligar processos inativos, limitar a fila de solicitação (para que o servidor não fique sobrecarregado) além de ativar a monitoração da CPU (permitindo eliminar ou reiniciar processos que estejam utilizando muita CPU)
Manutenção: pinga os processos para estabelecer o seu status, ativa/desativa a proteção contra falhas e define o limite de reinicialização e desligamento de processos inativos.
Identidade: define a conta a ser utilizada para o pool de aplicativos
Um detalhe muito interessante é que você pode criar diversos Pools de processos e utilizá-los de acordo com as necessidades de um site. Exemplo: para criarmos um Pool de processos chamado BABOO 2 (que será utilizado somente no gerenciamento do site BABOO 2) você deve clicar com o botão da direita do mouse em Pool de aplicativos > Novo > Pool de aplicativos.
Ali você define o nome do pool e as suas configurações. Depois de modificar as opções dele, você associa-o ao site BABOO 2:
A instalação default do Win2003 não instala o IIS por motivos de segurança e no exemplo abaixo mostrarei como instalá-lo e configurá-lo para que ele hospede páginas .htm, .html e .asp, criando um site (BABOO 2) que será gerenciado por ele.
Para instalar o IIS, clique no botão Iniciar > Painel de Controle > Ferramentas Administrativas > clique em Assistente para configurar o Servidor > clique em Avançar e Avançar. Se aparecer uma mensagem avisando que uma das conexões de rede não está funcionando, isso é normal pois indica que o seu computador tem duas placas de rede instaladas mas somente uma está conectada (imagem abaixo). Clique em OK.
Escolha a opção Servidor de aplicativos (IIS, ASP.NET) e clique no botão Avançar:
Na próxima tela você informa se há Extensões de servidor do FrontPage e se deseja ativar ASP.NET. Clique em Avançar para iniciar a instalação do IIS e em alguns segundos a instalação será finalizada. Não se esqueça de manter o CD do Win2003 no drive para que a instalação seja possível.
Para você começar a configurar o IIS, clique no botão Iniciar > Painel de Controle > Ferramentas Administrativas > clique em Gerenciador dos Serviços de informações da Internet:
Agora vamos criar o site BABOO 2 - e como o IIS automaticamente criou em Sites da Web um Site da Web padrão, vamos eliminá-lo pois não há necessidade de mantê-lo: clique com o botão da direita do mouse em Site da Web padrão e Excluir. Clique em Sim para confirmar a sua exclusão. Agora clique com o botão da direita do mouse em Sites da Web e clique em Novo > Site da Web:
Clique em Avançar e começamos a criar o novo site. No campo Descrição, digite o nome genérico do site (BABOO 2 no nosso caso) e clique em Avançar. No endereço IP a ser usado no site você deve indicar o endereço de IP que responderá por esse site. Deixando em (Todos os não atribuídos) fará com que o IP atualmente configurado seja automaticamente utilizado.
Se você quiser indicar o IP correto, feche a janela atual para cancelar a criação do site atual e clique no botão Iniciar > Painel de Controle > Conexões de Rede > Clique na conexão existente (normalmente é "Conexão Local") > Propriedades > Avançado > dê um duplo-clique em Protocolo TCP/IP. Coloque ali as informações desejadas (IP, Gateway e DNS) e clique em OK. Agora volte à janela do Gerenciador do IIS, clique com o botão da direita do mouse em Sites da Web e clique em Novo > Site da Web, seguindo os passos anteriores. A diferença é que agora o IP que você forneceu na sua conexão de rede está disponível para ser configurado no IIS.
No campo Porta TCP, deixe como está (80) e se você desejar, digite o cabeçalho de host do site no campo correto. Clique em Avançar. No campo Caminho: você deve informar qual é a pasta que conterá os arquivos do seu site, tendo a certeza de manter ativada a opção Permitir acesso anônimo a este site. Clique em Avançar.
A próxima tela pergunta as permissões que serão aplicadas na pasta utilizada para armazenar os arquivos do seu site. É recomendável deixar apenas as opções Leitura e Executar scripts (ASP, por exemplo) ativadas. Clique em Avançar para finalizar a instalação:
Agora que você criou o seu site, vamos configurá-lo ! Dê um duplo-clique em Sites da Web > clique com o botão da direita do mouse no site criado (BABOO 2) > Propriedades. Ao abrir uma nova janela, você terá as seguintes opções:Observação: embora o IIS crie por default a pasta /inetpub na partição principal para hospedar o arquivos dos site ali, no nosso caso utilizaremos C:\BABOO 2004 por questões de segurança. Ao evitar seguir o "padrão de instalação do software", você pode estar dificultando o ataque ou invasão por hackers caso ele ataque o seu servidor imaginando que os seus arquivos estejam em uma determinada pasta. O uso de caracteres especiais (çãáê ...) também é recomendado.
Descrição: contém o nome genérico do site
Endereço IP: indica o IP do site
Porta TCP: é a porta utilizada para acessar o site: 80
Porta SSL: utilizado somente quando houver necessidade de criptografia, sendo 443 o valor padrão quando utilizado (neste caso deixamos vazio pois não usaremos SSL)
Tempo limite de conexão: tempo que o servidor espera até desconectar um usuário inativo
Ativar Keep-Alive de HTTP: permite que a conexão seja mantida aberta ao invés de abri-la a cada conexão realizada
Ativar logs: permite criar arquivos de log de acesso ao servidor (algo importante para auditoria)
Clique em Propriedades para configurar os logs:
Clique em Diariamente (para que se crie um arquivo de log por dia), clique em Usar hora local para nomeação e sobreposição de arquivo para que a data/hora do log seja o mesmo do servidor (ao usar a hora do W3C, que é a mesma de Greenwich). Em Diretório do arquivo de log, digite a pasta aonde serão salvos os arquivos de log.
Compactação do conteúdo da pasta de log
O ideal é que você mantenha os arquivos de log em uma partição própria pois eles costumam fragmentar muito a partição aonde estão localizados. Além disso você deve configurar a pasta de log para compactar os arquivos e sub-pastas ali existentes para que os arquivos de log ocupem menos espaço no disco (essa dica pode dobrar o espaço livre destinado aos logs pois o arquivo de log é um arquivo texto que é altamente compactável).
Para ativar a compactação, clique no botão Iniciar > Meu computador > duplo-clique na partição aonde os arquivos de log estão localizados > clique com o botão da direita do mouse na pasta aonde os arquivos de log estão localizados > Propriedades > Avançados > clique em Compactar o conteúdo para economizar espaço em disco > clique em OK > clique em Aplicar as alterações a esta pasta, sub-pastas e arquivos e clique em OK. Quanto menor o número de arquivos ali, mais rápida essa tarefa será finalizada. Depois da compactação, a pasta ficará com a cor azul, indicando que os dados ali estão compactados.
Para você verificar a taxa de compactação, clique com o botão da direita em qualquer arquivo dentro da pasta > Propriedades. O tamanho original do arquivo está indicado em Tamanho: e o tamanho utilizado no disco rígido está mostrado em Tamanho do disco:. Quanto maior a diferença entre ambos, melhor, pois isso indica que o arquivo está bem compactado e você está economizando bastante espaço com isso.
A compactação da pasta de log não influencia de modo notável o desempenho do servidor.
Clique agora na aba Propriedades e clique em Cookie ( cs (Cookie) ), que é o penúltimo item da lista. Clique em Aplicar e em OK.
Em relação às demais opções, você pode deixá-las no modo default do IIS 6. São elas:
Desempenho: que permite limitar a largura de banda e o número de conexões no site
Filtros ISAPI: permite a configuração de filtros ISAPI (programa que responde a eventos)
Pasta Base: indica as opções de configuração da pasta aonde estão localizados os arquivos do site
Documentos: lista os tipos de documentos que serão renderizados (e a ordem que isso ocorre) e a configuração do rodapé
Erros personalizados: permite que você modifique os arquivos de respostas de erros de HTTP, personalizando-os de acordo com a sua necessidade
Cabeçalhos HTTP: permite ativar a expiração de conteúdo (fazendo com que o browser compare a data atual com a data de validade das páginas para definir se ela será carregada novamente ou se ele utilizará o cache para isso), definir a sua classificação (visando identificar conteúdos que possam ser censurados pelo supervisor de conteúdo do browser) e tipos de MIME (que permite definir as extensões dos arquivos)
Segurança de diretório: permite configurar o tipo de autenticação e controle de acesso, as restrições de IP e domínio (para você impedir o acesso ao seu site) e comunicações de segurança (certificados para comunicação segura e canal de segurança SSL). Na imagem abaixo, qualquer computador cujo IP que seja 68.xxx.xxx.xxx (tipicamente utilizado por proxys anônimos) não conseguirá acessar o site, recebendo uma mensagem de acesso negado quando tentar acessá-lo:
Habilitando a compactação HTTP do IIS 6
O IIS 6 permite que os dados enviados para os browsers sejam automaticamente compactados, o que economiza banda e aumenta a velocidade de navegação. Para habilitar a compactação (que é realizada no kernel e não influencia a performance do servidor), você deve clicar com o botão da direita do mouse em Sites da Web > aba Serviço. Clique nas opções Compactar arquivos de aplicativo e Compactar arquivos estáticos. No tamanho máximo do diretório temporário, deixe em Ilimitado. Clique em OK.
Segundo o site Port80, apenas 2,9% das empresas utilizam a compressão de dados e com isso Empresas Fortune 1000 gastam milhões com excesso de banda por não utilizarem compressão HTTP.
Arquivos ASP e ASP.NET no IIS 6
Para você permitir a execução de arquivos ASP no IIS 6, você deve clicar em Extensões de serviços da Web > clicar com o botão da direita do mouse em Páginas do Active Server > Permitir.
Se você não clicou na opção de ASP.NET no início da instalação do IIS e agora você deseja utilizá-lo, você deve instalar o ASP.NET: clique no botão Iniciar > Painel de Controle> Adicionar/Remover programas> Adicionar/Remover componentes do Windows > clique em Servidor de aplicativo > botão Detalhes > ASP.NET. Clique em OK e Avançar.
Pool de processos
O IIS 6 tem o Pool de processos, que permite que você configure ações automáticas que serão tomadas quando algum processo apresente problemas: ao invés do administrador de redes reiniciar o processo, isso pode ser feito automaticamente pelo próprio IIS!
Para você configurar o Pool de processos, clique com o botão da direita do mouse em Pools de aplicativos: ali existem diversas opções. Nas abas você encontrará:
Reciclagem: permite a reinicialização do processo depois de um tempo pré-definido, por número de solicitações ou então em um horário pré-estabelecido e reciclagem de processos que consumam muita CPU (tanto em memória virtual quanto em memória utilizada).
Desempenho: permite desligar processos inativos, limitar a fila de solicitação (para que o servidor não fique sobrecarregado) além de ativar a monitoração da CPU (permitindo eliminar ou reiniciar processos que estejam utilizando muita CPU)
Manutenção: pinga os processos para estabelecer o seu status, ativa/desativa a proteção contra falhas e define o limite de reinicialização e desligamento de processos inativos.
Identidade: define a conta a ser utilizada para o pool de aplicativos
Um detalhe muito interessante é que você pode criar diversos Pools de processos e utilizá-los de acordo com as necessidades de um site. Exemplo: para criarmos um Pool de processos chamado BABOO 2 (que será utilizado somente no gerenciamento do site BABOO 2) você deve clicar com o botão da direita do mouse em Pool de aplicativos > Novo > Pool de aplicativos.
Ali você define o nome do pool e as suas configurações. Depois de modificar as opções dele, você associa-o ao site BABOO 2: