“Proxy FTP” pode descrever uma gateway que fala FTP por si mesma. Ligar-se a ela é diferente de pedir um CONNECT a um proxy HTTP ou pedir a um servidor SOCKS para abrir um destino TCP.

A gateway precisa do anfitrião e da conta de destino, e pode precisar primeiro do seu próprio início de sessão. Os produtos exprimem essa conversa de formas diferentes:

DisposiçãoForma típica do comando
Destino codificado no nome de utilizadorUSER target-user@target-host
Início de sessão separado na gatewayUSER/PASS da gateway, seguido do início de sessão de destino
Comando de destino explícitoSITE target-host ou OPEN target-host, depois o início de sessão necessário

São famílias de convenções, não uma única sequência padrão para enviar a cada gateway. Escolha o método documentado pelo administrador e suportado pelo cliente.

Mantenha ambas as contas visíveis na configuração

A palavra-passe FTP de destino e a palavra-passe da gateway podem ser diferentes. Algumas gateways combinam-nas numa única representação USER/PASS; outras exigem trocas separadas. Colocar todos os valores numa só cadeia não consegue reproduzir um cliente que tem de enviar comandos adicionais.

Isto explica um limite útil no código antigo de FtpWebRequest. Uma ligação FTP comum à gateway, com um nome de utilizador específico da gateway, pode encaixar em algumas disposições USER/PASS. Uma gateway que exige uma conversa SITE ou OPEN separada precisa de um cliente que realmente suporte esse fluxo. A propriedade Proxy em WebRequest é ainda outra interface.

O WinSCP, por exemplo, expõe métodos de início de sessão de proxy FTP distintos em vez de tratar todas as gateways como um único campo de anfitrião. Os seus valores numéricos de definições em bruto pertencem à sua API documentada; use o nome do método e a conversa pretendida ao rever uma configuração.

Após o início de sessão, a transferência de ficheiros ainda precisa da sua ligação de dados FTP e do modo TLS escolhido. Um início de sessão bem-sucedido no canal de controlo é o começo desse percurso, não a prova de que toda transferência de dados já está permitida.

Artigos relacionados