Compartilhar via


Configurações padrão de conexão FTP <connections>

Visão geral

O elemento <connections> especifica as configurações relacionadas à conexão para sites FTP. Mais especificamente, as configurações no elemento <connections> controlam o comportamento do serviço FTP em relação a como gerenciar clientes que estão se conectando a um site FTP.

Por exemplo, os atributos unauthenticatedTimeout, controlChannelTimeout e dataChannelTimeout especificam os tempos limite para um site FTP. As configurações especificam, respectivamente, quando o serviço FTP desconectará um cliente FTP que não fez logon com êxito ou está ocioso ou quando desconectar uma conexão de dados ociosa. Especificar valores para os atributos no elemento <connections> pode afetar diretamente o desempenho geral do servidor, ajudando a policiar o número de sessões de cliente ativas para seus sites FTP.

Compatibilidade

Versão Observações
IIS 10.0 O elemento <connections> não foi modificado no IIS 10.0.
IIS 8.5 O elemento <connections> não foi modificado no IIS 8.5.
IIS 8.0 O elemento <connections> não foi modificado no IIS 8.0.
IIS 7.5 O elemento <connections> do elemento <ftpServer> é fornecido como um recurso do IIS 7.5.
IIS 7.0 O elemento <connections> do elemento <ftpServer> foi introduzido no FTP 7.0, que era um download separado para o IIS 7.0.
IIS 6,0 N/D

Observação

Os serviços FTP 7.0 e FTP 7.5 eram fornecidos fora de banda para o IIS 7.0, o que exigia o download e a instalação de módulos do seguinte URL:

https://www.iis.net/expand/FTP

Com o Windows 7 e o Windows Server 2008 R2, o serviço FTP 7.5 é fornecido como um recurso para o IIS 7.5 e, portanto, o download do serviço FTP não é mais necessário.

Instalação

Para dar suporte à publicação FTP para seu servidor Web, você deve instalar o serviço FTP. Para fazer isso, execute as etapas a seguir.

Windows Server 2012 R2 ou Windows Server 2012

  1. Na barra de tarefas, clique em Gerenciador do Servidor.

  2. No Gerenciador do Servidor, clique no menu Gerenciar e clique em Adicionar Funções e Recursos.

  3. No assistente Adicionar Funções e Recursos, clique em Avançar. Selecione o tipo de instalação e clique em Avançar. Selecione o servidor de destino e clique em Avançar.

  4. Na página Funções de servidor, expanda Servidor Web (IIS) e, em seguida, selecione Servidor FTP.

    Observação

    Para dar suporte à autenticação do ASP.Membership ou do Gerenciador do IIS para o serviço FTP, você precisará selecionar a Extensibilidade de FTP além do Serviço FTP.
    Screenshot of the Server Roles page. Web Server I I S is expanded. F T P Server is expanded. F T P Extensibility is highlighted and selected. .

  5. Selecione Avançar e, em seguida, na página Selecionar recursos, selecione Avançar novamente.

  6. Na página Confirmar seleções de instalação, clique em Instalar.

  7. Na página Resultados , clique em Fechar.

Windows 8 ou Windows 8.1

  1. Na tela Iniciar, mova o ponteiro até o canto inferior esquerdo, clique com o botão direito do mouse no botão Iniciar e clique em Painel de Controle.

  2. Em Painel de Controle, clique em Programas e Recursos e clique em Ativar ou desativar recursos do Windows.

  3. Expanda Serviços de Informações da Internet e selecione Servidor FTP.

    Observação

    Para dar suporte à autenticação do ASP.Membership ou do Gerenciador do IIS para o serviço FTP, você também precisará selecionar Extensibilidade de FTP.
    Screenshot of the navigation tree. F T P Server is expanded. The F T P Extensibility folder is highlighted and selected.

  4. Clique em OK.

  5. Clique em Fechar.

Windows Server 2008 R2

  1. Na barra de tarefas, clique em Iniciar, vá para Ferramentas Administrativas e clique em Gerenciador do Servidor.

  2. No painel de hierarquia do Gerenciador do Servidor, expanda Funções e clique em Servidor Web (IIS).

  3. No painel Servidor Web (IIS), role até a seção Serviços de Função e clique em Adicionar Serviços de Função.

  4. Na página Selecionar Serviços de Função do Assistente para Adicionar Serviços de Função, expanda Servidor FTP.

  5. Selecione Serviço FTP.

    Observação

    Para dar suporte à autenticação do ASP.Membership ou do Gerenciador do IIS para o serviço FTP, você também precisará selecionar Extensibilidade de FTP.
    Screenshot of the Select Role Services Page. F T P Server is expanded. F T P Service is highlighted and selected.

  6. Clique em Avançar.

  7. Na página Confirmar Seleções de Instalação, clique em Instalar.

  8. Na página Resultados , clique em Fechar.

Windows 7

  1. Na barra de tarefas, clique em Iniciar e, depois, em Painel de Controle.

  2. Em Painel de Controle, clique em Programas e Recursos e clique em Ativar ou desativar Recursos do Windows.

  3. Expanda Serviços de Informações da Internet e, em seguida, Servidor FTP.

  4. Selecione Serviço FTP.

    Observação

    Para dar suporte à autenticação do ASP.Membership ou do Gerenciador do IIS para o serviço FTP, você também precisará selecionar Extensibilidade de FTP.
    Screenshot of the Programs and Features navigation tree. F T P Service is selected.

  5. Clique em OK.

Windows Server 2008 ou Windows Vista

  1. Baixe o pacote de instalação do seguinte URL:

  2. Siga as instruções no seguinte passo a passo para instalar o serviço FTP:

Instruções

Como configurar o controle padrão e os tempos limite do canal de dados para todos os sites FTP

  1. Abra o Gerenciador dos Serviços de Informações da Internet (IIS):

    • Caso você esteja usando o Windows Server 2012 ou o Windows Server 2012 R2:

      • Na barra de tarefas, clique em Gerenciador do Servidor, em Ferramentas e em Gerenciador dos Serviços de Informações da Internet (IIS).
    • Se você estiver usando o Windows 8 ou Windows 8.1:

      • Mantenha pressionada a tecla Windows, pressione a letra X e clique em Painel de Controle.
      • Clique em Ferramentas Administrativas e clique duas vezes em Gerenciador dos Serviços de Informações da Internet (IIS).
    • Caso você esteja usando o Windows Server 2008 ou o Windows Server 2008 R2:

      • Na barra de tarefas, clique em Iniciar, vá para Ferramentas Administrativas e clique em Gerenciador dos Serviços de Informações da Internet (IIS).
    • Se você estiver usando o Windows Vista ou Windows 7:

      • Na barra de tarefas, clique em Iniciar e, depois, em Painel de Controle.
      • Clique duas vezes em Ferramentas Administrativas e clique duas vezes em Gerenciador dos Serviços de Informações da Internet (IIS).
  2. No painel Conexões, click no nome do servidor e, em seguida, clique no nó Sites.

  3. No painel Sites, clique em Definir Padrões do Site FTP... no painel Ações.

  4. Na caixa de diálogo Configurações Avançadas, expanda Conexões, especifique seus tempos limite nos campos Tempo Limite do Canal de Controle e Tempo Limite do Canal de Dados e clique em OK.

Configuração

Atributos

Atributo Descrição
controlChannelTimeout Atributo int opcional.

Especifica o tempo limite, em segundos, quando uma conexão será cronometrada devido à inatividade no canal de controle. Observação: o serviço FTP desconectará a sessão quando esse tempo limite for atingido.

O valor padrão é 120.
dataChannelTimeout Atributo int opcional.

Especifica o tempo limite, em segundos, quando uma conexão será cronometrada devido à inatividade no canal de dados. Observação: o serviço FTP só desconectará o canal de dados quando esse tempo limite for atingido.

O valor padrão é 30.
disableSocketPooling Atributo Boolean opcional. true se o pool de soquetes estiver desabilitado; caso contrário, false. O atributo disableSocketPooling especifica se o pool de soquetes deve ser usado para sites que são distinguidos pelo endereço IP, em vez do número da porta ou nome do host. Se disableSocketPooling for definido como false, o pool de soquetes será habilitado e os soquetes serão compartilhados entre sites que usam o mesmo número de soquetes, mas endereços IP diferentes. Nessa situação, o serviço FTP torna-se o proprietário exclusivo da porta em cada endereço associado ao servidor. Por exemplo, se o pool de soquetes estiver habilitado em um servidor com dois endereços IP, 10.0.0.1 e 10.0.0.2, e um site FTP estiver associado ao endereço 10.0.0.1 na porta 21, o serviço FTP também será proprietário da porta 21 no endereço 10.0.0.2. Se disableSocketPooling for definido como true, não haverá compartilhamento de soquetes para sites com base no endereço IP. O valor padrão é false.
maxBandwidth Atributo uint não utilizado.

Observação: esse atributo não é implementado para FTP 7.
maxConnections Atributo unit opcional.

Especifica o número máximo de conexões simultâneas para um site FTP.

Observação: use o atributo maxClientsMessage do elemento de <messages> para especificar uma mensagem que o serviço FTP retornará aos clientes quando o número máximo de conexões simultâneas for excedido.

O valor padrão é 4294967295 (ilimitado).
minBytesPerSecond Atributo int opcional.

Especifica os requisitos mínimos de largura de banda para transferências de dados. Observação: o serviço FTP desconectará o canal de dados quando a largura de banda mínima não for atendida.

O valor padrão é 240.
resetOnMaxConnections Atributo Boolean opcional.

true se o serviço FTP deve desconectar rapidamente uma sessão FTP em vez de enviar uma resposta máxima de conexões; caso contrário, false.

Observação: o atributo resetOnMaxConnections otimiza a sobrecarga ao processar conexões que não têm permissão para se conectar porque o limite maxConnection foi atingido.

O valor padrão é false.
serverListenBacklog Atributo int opcional.

Especifica o número de soquetes pendentes que podem estar na fila.

O valor padrão é 60.
unauthenticatedTimeout Atributo int opcional.

Especifica o tempo limite ocioso, em segundos, entre o momento em que uma nova conexão é feita e a autenticação é bem-sucedida. Se o cliente não se autenticar com êxito dentro do período de tempo especificado, o serviço FTP desconectará a sessão.

O valor padrão é 30.

Elementos filho

Nenhum.

Exemplo de configuração

O exemplo de configuração a seguir exibe um elemento <connections> de exemplo para um servidor que tem o tempo limite do canal de controle padrão definido como 300 segundos.

<siteDefaults>
   <ftpServer>
      <connections controlChannelTimeout="300" />
   </ftpServer>
</siteDefaults>

Exemplo de código

Os exemplos de código a seguir ilustram como definir o tempo limite do canal de controle padrão como 300 segundos.

AppCmd.exe

appcmd.exe set config -section:system.applicationHost/sites /siteDefaults.ftpServer.connections.controlChannelTimeout:"300" /commit:apphost

Observação

Defina o parâmetro commit para apphost quando usar AppCmd.exe para definir essas configurações. Isso confirma as definições de configuração para a seção de local apropriado no arquivo ApplicationHost.config.

C#

using System;
using System.Text;
using Microsoft.Web.Administration;

internal static class Sample
{
   private static void Main()
   {
      using (ServerManager serverManager = new ServerManager())
      {
         Configuration config = serverManager.GetApplicationHostConfiguration();
         ConfigurationSection sitesSection = config.GetSection("system.applicationHost/sites");
         ConfigurationElement siteDefaultsElement = sitesSection.GetChildElement("siteDefaults");
         ConfigurationElement ftpServerElement = siteDefaultsElement.GetChildElement("ftpServer");

         ConfigurationElement connectionsElement = ftpServerElement.GetChildElement("connections");
         connectionsElement["controlChannelTimeout"] = 300;

         serverManager.CommitChanges();
      }
   }
}

VB.NET

Imports System
Imports System.Text
Imports Microsoft.Web.Administration

Module Sample
   Sub Main()
      Dim serverManager As ServerManager = New ServerManager
      Dim config As Configuration = serverManager.GetApplicationHostConfiguration
      Dim sitesSection As ConfigurationSection = config.GetSection("system.applicationHost/sites")
      Dim siteDefaultsElement As ConfigurationElement = sitesSection.GetChildElement("siteDefaults")
      Dim ftpServerElement As ConfigurationElement = siteDefaultsElement.GetChildElement("ftpServer")

      Dim connectionsElement As ConfigurationElement = ftpServerElement.GetChildElement("connections")
      connectionsElement("controlChannelTimeout") = 300

      serverManager.CommitChanges()
   End Sub

End Module

JavaScript

var adminManager = new ActiveXObject('Microsoft.ApplicationHost.WritableAdminManager');
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST";

var sitesSection = adminManager.GetAdminSection("system.applicationHost/sites", "MACHINE/WEBROOT/APPHOST");
var siteDefaultsElement = sitesSection.ChildElements.Item("siteDefaults");
var ftpServerElement = siteDefaultsElement.ChildElements.Item("ftpServer");

var connectionsElement = ftpServerElement.ChildElements.Item("connections");
connectionsElement.Properties.Item("controlChannelTimeout").Value = 300;

adminManager.CommitChanges();

VBScript

Set adminManager = createObject("Microsoft.ApplicationHost.WritableAdminManager")
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST"
Set sitesSection = adminManager.GetAdminSection("system.applicationHost/sites", "MACHINE/WEBROOT/APPHOST")
Set siteDefaultsElement = sitesSection.ChildElements.Item("siteDefaults")
Set ftpServerElement = siteDefaultsElement.ChildElements.Item("ftpServer")

Set connectionsElement = ftpServerElement.ChildElements.Item("connections")
connectionsElement.Properties.Item("controlChannelTimeout").Value = 300

adminManager.CommitChanges()