INTERNET E PROGRAMAÇÃO WEB Protocolos da Família TCP/IP FTP - File Transfer Protocol (Protocolo de Transferência de Arquivos) É um protocolo utilizado na transferência de arquivos. A arquitetura do protocolo permite que diferentes sistemas operacionais possam utilizar o protocolo sem incompatibilidades. Geralmente, é necessário um usuário e senha para se conectar ao servidor. Com esse protocolo, pode-se visualizar, criar e deletar pastas e arquivos em um computador remoto através de comandos em texto puro. Trabalha em conjunto com o TCP para garantir a entrega dos pacotes. Por ser um protocolo é uma linguagem padrão de comunicação entre duas máquinas, permitindo que máquinas de tipos diferentes ou de sistemas operacionais diferentes possam transferir arquivos para uma rede que funciona sob TCP/IP. O FTP funciona num ambiente cliente/servidor, isto é, a máquina distante é configurada como servidor e com isso espera que uma máquina lhe peça um serviço. Os softwares clientes são muitos, alguns dos quais se executam a partir de uma linha de comando (por exemplo, o comando “ftp”, aplicado por padrão em numerosos sistemas operacionais), mas uma grande maioria permite manipular arquivos numa interface gráfica, como por exemplo: CuteFTP ou Filezilla, dentre muitos outros, tornando as transferências de arquivos mais práticas. O protocolo FTP permite trocar um arquivo ao mesmo tempo, nos dois sentidos entre a máquina cliente (a que iniciou a conexão, por conseguinte a máquina recorrente) e a máquina servidora (a que fornece o serviço FTP, por conseguinte a máquina chamada). O protocolo FTP permite também outras ações, como a criação e a supressão de diretórios (com a condição de estarem vazios), a listagem dos arquivos, a supressão e a alteração de nomes de arquivos, etc. Protocolo e Aplicação Não se deve confundir as duas noções de protocolo e aplicação, com efeito, um protocolo é um conjunto de regras e procedimentos que foram definidos para estandardizar a comunicação, enquanto que a aplicação é a programação de um software que segue as recomendações do protocolo. Assim, o comando “ftp” foi rapidamente aplicado em numerosas plataformas, segundo as especificações determinadas pelo protocolo FTP. Arranque de uma sessão FTP O comando “ftp” está disponível de origem em diversas plataformas, incluindo UNIX, Windows e Linux. O comando que permite iniciar uma sessão FTP é geralmente o seguinte: ftp <nome_do_servidor> Onde <nome_do_servidor> representa o nome ou o endereço IP da máquina distante à qual se deseja estabelecer conexão. É necessário obviamente que a máquina alvo disponha do serviço FTP. Quando da iniciação da conexão, diversas linhas de texto aparecem na tela. A primeira linha indica que está conectado a um servidor FTP, as linhas seguintes constituem uma mensagem de boas-vindas, podendo indicar o tipo de site FTP de que se trata (que tipo de arquivos ele aloja ou o organismo a que pertence), ou ainda, recomendações para os utilizadores. Sob FTP, cada linha começa por um número que indica um código relativo a uma falha ou a um sucesso. No caso da mensagem de boas-vindas, a linha está, por exemplo, precedida do número 220, que significa que o serviço está pronto para ser utilizado. O servidor pede-lhe que escreva o seu nome de utilizador (também chamado login ou identificador), para definir privilégios de acesso (como o direito de escrita ou de leitura). Após validação, uma linha que começa pelo número 331 convida-o a introduzir a sua senha, que será mascarada, ou seja, não aparecerá na tela. Pode acontecer que o servidor seja público. Neste caso, o acesso pode fazer-se anonimamente, será necessário iniciar a sessão como: “anonymous”. A tradição diz que, para os servidores públicos, o utilizador escreva como senha o seu endereço de correio eletrônico, mas pode escrever o que quiser. Quando da validação da senha, uma mensagem indicará se a conexão foi estabelecida máximo em termos de usuários, neste caso apareceria a mensagem “No more user access allowed” em inglês). Pág. 2 Uma vez conectado ao site, o FTP espera por parte do utilizador comandos que descrevam as ações que deverão ser executadas. Principais Comandos FTP Comando Descrição do Comando help Mostra o conjunto dos comandos suportados pelo servidor FTP. status Permite conhecer certos parâmetros da máquina cliente. binary Este comando fá-lo passar do modo ASCII (envio de documentos de texto) para o modo binário (envio de arquivos em modo binário, ou seja, para os arquivos não texto, como imagens ou programas). ascii Passa do modo binário ao modo ASCII. Este modo é o padrão. type Permite mostrar o modo corrente de transferência (binário ou ASCII). user Permite-lhe reiniciar uma sessão no site FTP corrente com um nome de usuário diferente. Uma nova senha será então pedida. ls Permite listar os arquivos presentes no diretório corrente. O comando “ls - l” trata das informações suplementares nos arquivos. pwd Mostra o nome completo do diretório corrente. cd Este comando significa change directory, permite alterar o diretório corrente. O comando “cd.” permite aceder ao diretório de nível superior. mkdir O comando mkdir (sob UNIX, ou md sob sistema Microsoft) permite criar um diretório no diretório corrente. A utilização deste comando está reservada aos utilizadores que têm privilégio de acesso que o permite. rmdir Comando rmdir (sob UNIX, ou rd sob sistema Microsoft) permite suprimir um diretório no diretório corrente. A utilização deste comando está reservada aos utilizadores que têm privilégio de acesso que o permite. Pág. 3 get Este comando permite recuperar um arquivo presente no servidor. Se o comando estiver seguido de um nome de arquivo, o arquivo distante é transferido para a máquina local no diretório local corrente. Se o comando estiver seguido de dois nomes de arquivos, o arquivo distante (o primeiro nome) é transferido para a máquina local no diretório local corrente, com o nome de arquivo especificado pelo segundo nome. Se por acaso o nome do arquivo contiver espaços, é necessário escrevê-lo entre aspas. put Este comando permite enviar um arquivo local para o servidor. Se o comando estiver seguido de um nome de arquivo, o arquivo local é transferido para o servidor no diretório distante corrente. Se o comando estiver seguido de dois nomes de arquivos, o arquivo local (o primeiro nome) é transferido para o servidor no diretório distante corrente, com o nome do arquivo especificado no segundo nome. Se por acaso o nome do arquivo contiver espaços, é necessário escrevê-lo entre aspas. open Fecha a sessão corrente e abre uma nova sessão num outro servidor FTP. close Fecha sessão corrente, deixando o software FTP cliente ativo. bye Desliga o software cliente do servidor FTP e coloca-o em estado inativo. quit Desliga o software cliente do servidor FTP e coloca-o em estado inativo. Pág. 4