Quando deseja-se criar um website, são diversas as ferramentas indispensáveis que auxiliam desde o processo de desenvolvimento até a manutenção após publicado, e usufruir dessas ferramentas é o que torna a criação e a manutenção produtivas e mais eficazes.
Quando o seu site tem que lidar com múltiplas transferências de diversos tipos de arquivos, pode ser de grande auxílio optar por uma dessas ferramentas para gerenciar e otimizar esse processo.
Nesse caso, o FTP é a opção ideal para solucionar este problema, e será o assunto principal deste artigo entender o que é, e como funciona este recurso que tanto auxilia os desenvolvedores.
Afinal, o que é FTP?
Quando se utiliza o termo FTP (do inglês, File Transfer Protocol) ou Protocolo de Transferência de Arquivos, estamos nos referindo a uma ferramenta que como o nome sugere, auxilia no processo de transportação de arquivos que um desenvolvedor pode estar tentando trocar com um website.
Em outras palavras, o FTP é uma “linguagem” que computadores de uma rede (a internet) utilizam para acessar, trocar e gerenciar arquivos.
É uma das maneiras mais antigas, porém ainda muito utilizada quando precisa-se desse tipo de transferência entre dois computadores.
Além do FTP, existem outros tipos de protocolos para determinadas finalidades. Vejamos abaixo alguns exemplos:
- HTTP/HTTPS – Protocolo utilizado na internet para transferir e disponibilizar páginas e hipertextos.
- MTP/SMTP – Este protocolo é utilizado na transferência de e-mails.
- RTSP – O RSTP é o protocolo que controla servidores de mídia streaming.
- TCP/IP – Recebe os dados de uma aquisição e os envia para o destino, o HTTP/HTTPS trabalha em conjunto com esse protocolo.
Casos comuns de utilização
A forma que se utiliza o FTP, é no intuito de enviar arquivos do seu computador que correspondem a conteúdo para o serviço de hospedagem do seu website, sendo páginas, imagens, vídeos ou qualquer outro tipo de mídia.
Com o auxílio de um programa voltado para essa tarefa, é possível por exemplo fazer o upload do seu site WordPress direto do computador para o servidor, ou para fazer a instalação de plugins ou temas.
Como o FTP funciona?
Basicamente, para que ocorra uma troca de arquivos utilizando esse meio, é necessário que haja inicialmente pelo menos um servidor e um cliente FTP.
No computador que serve como servidor, a máquina atua disponibilizando os arquivos e recebendo os pedidos do cliente e os enviando.
O que é configurado como um cliente, atua acessando os arquivos e do servidor e fazendo aquisições para envio ou recebimento dos mesmos.
Esta troca de dados ocorre através de um software que estabelece a conexão e lista os arquivos presentes no servidor, e também torna possível a opção de fazer upload ou download nesse mesmo diretório de dados.
O cliente especifica um nome de usuário, senha e o nome do servidor ou o seu IP e se tudo estiver correto a conexão pode ser estabelecida e a troca de dados completamente disponível.
O FTP é uma forma segura de transportar arquivos?
Ele sozinho ou a sua forma simplificada, o TFTP, pode não serem a opção mais segura desde que não criptografa a conexão entre o servidor e o cliente, o que pode tornar a conexão vulnerável a possíveis interferências na transmissão de dados e/ou roubo de arquivos e informações.
Nesse caso você então deve estar se perguntando qual o método mais seguro de estar utilizando esse serviço, e a resposta é simples: através da utilização das conexões FTPS, SFTP ou SCP. Estes são mais alguns termos importantes que estaremos explicando a seguir.
TFTP
O Protocolo Trivial de Transferência de Arquivos ou do inglês, Trivial File Transfer Protocol, nada mais é do que uma forma ainda mais simplificada do puro FTP.
A diferença, é que este não requer nenhum tipo de autenticação e sendo mais inconveniente e menos recomendado ainda, caso deseja utilizar esse tipo de transportação de arquivos.
A única opção de se utilizar esse tipo de transferência é na mesma LAN, e como não passa por nenhum tipo de teste de autenticação ou criptografia o tempo de transferência se torna bem mais rápido se comparado com as outras alternativas de conexão.
SFTP
É basicamente a combinação do nosso FTP previamente descrito, com um protocolo de segurança chamado SSH (do inglês, Secure Shell) que traduzindo seria algo como “cápsula segura”.
Uma das formas que o SSH funciona com o FTP é simples de ser compreendida; quando um cliente SFTP tenta se conectar com um servidor do mesmo tipo, a autenticação dos seus dados de login são automaticamente criptografados, tornando assim uma conexão segura e sem riscos de interferências de terceiros como ocorre na vulnerabilidade que o FTP por si só tem.
A outra forma baseia-se no principal conceito da criptografia assimétrica, criando duas chaves que essas por si só asseguram que um possível hacker não consiga decifrar a mensagem pois ele não possui a chave privada.
FTPS
Mesmo tendo um nome parecido com o método anterior e muitas vezes sendo confundidos entre si, o modo que o FTPS funciona um pouco diferente e é direcionado para a mesma finalidade, dar mais segurança a conexão.
O FTP Secure ou “seguro”, refere-se à combinação do FTP com o SSL (do inglês, Secure Sockets Layer), algo que traduzindo pode ser interpretado como “camada segura de conexões”.
Quando o cliente tenta uma conexão com o servidor, o protocolo SSL se encarrega de checar se aquele servidor tem um certificado que condiz que ele é confiável e foi verificado por autoridades.
Somente se a verificação for positiva e o servidor possuir um certificado válido que não esteja expirado, o SSL se encarrega de criptografar os dados e as mensagens trocadas de forma segura, caso contrário o cliente recebe um alerta de que a conexão não é confiável e o acesso só prossegue se o usuário confirmar que deseja continuar.
SCP
O Secure Copy Protocol (Protocolo de Cópia Seguro), é uma outra alternativa mais segura de transferir arquivos em uma rede de um cliente a um servidor.
Assim como o SFTP, utiliza criptografia na conexão através do SSH. O SCP está ligeiramente associado com a transferência de arquivos na mesma rede e também tende a lidar melhor com transferência de arquivos individualmente.
Esse protocolo por si só não inclui quaisquer opções de criar, deletar ou listar pastas muito menos gerenciá-las, porém há quem diga que existe uma boa vantagem na velocidade de transferência por muitas vezes, a favor do SCP contra o SFTP.
Por padrão o Mac e o Linux incluem os comandos do SCP no seu sistema operacional então você não precisa instalar nada se não quiser. Porém, se você quiser fazer alguma transferência desse tipo no Windows mesmo que seja no prompt de comando, terá que instalar alguma ferramenta para ter essa funcionalidade disponível.
Nossas recomendações para Clientes FTP
(Página inicial do site do FileZilla)
Nossa principal recomendação desse recurso é o software FileZilla. Este software se destaca por ter a opção de cliente para todos os principais sistemas operacionais (Windows, Mac e Linux).
Além do FTP ele suporta conexões SFTP e FTPS, sendo de grande importância para qualquer transferência utilizando FTP.
A versão premium do software conta com suporte a ferramentas como Google Drive, One Drive, Dropbox, WebDAV e entre outros, porém ele é distribuído gratuitamente e também tem o seu código-fonte aberto.
Vale ressaltar que para baixar a versão server do programa, deve-se utilizar o sistema operacional Windows.
O download está disponível na página do FileZilla.
Para Mac
(Página inicial do site cyberDuck)
Outra alternativa se você utiliza o sistema operacional Mac, chama-se CyberDuck. Também distribuído gratuitamente, a ferramenta conta com uma interface bem amigável para quem é usuário de primeira viagem do protocolo FTP.
O CyberDuck utiliza como ferramenta para sua criptografia o Cryptomator, recurso que utiliza técnicas da Transparent Encryption (Criptografia Transparente).
Esta estratégia baseia-se em proteger os arquivos assim que chegam ao banco de dados ou a nuvem, impossibilitando assim quaisquer tentativas de acesso não autorizado aos seus dados.
Este software também suporta conexões SFTP, e dá suporte a Microsoft Azure, Blackblaze B2, Google Drive e entre outros.
Mesmo tendo seu público preferencialmente para o Mac, também é possível fazer download do programa para o Windows.
Basta acessar o link e fazer o download gratuitamente.
Para Windows
(página inicial do site WinSCP)
Alternativamente, temos o WinSCP para o Windows que também é bastante popular e que tem como destaque o suporte para todos os quatro tipos de conexões (SCP, FTP, SFTP e FTPS).
A ferramenta também chama atenção por sua interface e editor de texto voltados para uma boa experiência do usuário.
Com atualizações recentes, o software atualmente é disponibilizado em 22 idiomas e pode ser baixado gratuitamente no link aqui.
Como utilizar?
Os sistemas operacionais mais comuns (Windows, Mac, Linux) também têm comandos embutidos em seus prompts/terminais para essa finalidade, porém a forma mais amigável é através de um software.
É possível fazer o download de um software de cliente FTP gratuitamente para qualquer sistema operacional, e poder utilizar o serviço da forma que foi descrita nas explicações deste artigo.
Para lhe deixar bem familiarizado com os comandos e ferramentas, estaremos aqui mostrando passo a passo o procedimento para se conectar utilizando um cliente FTP via prompt de comando do Windows, e depois através do FileZilla.
Este procedimento deve parecer bem semelhante quando utilizando outras ferramentas e sistemas operacionais.
Via CMD
O primeiro passo é abrir o prompt.
Para isto, basta ir no seu Menu iniciar e digitar CMD. O prompt (equivalente ao Terminal no Mac ou Linux) deve aparecer como primeiro resultado mesmo que você tenha outras linhas de comando instaladas.
Em seguida, você deve através da janela aberta acessar a pasta que contém os possíveis arquivos que você deseja transferir.
Para isto, deve-se utilizar o comando cd seguido do caminho da pasta. Por exemplo, se eu tenho uma pasta na minha área de trabalho com o nome de myftp, utiliza-se no seguinte formato: cd C:Usersusernamedesktopmyftp.
Nesse tutorial estarei utilizando um caminho mais curto apenas para simplificar o processo.
Após acessar a pasta, digite FTP na sua linha de comando, e tecle ENTER.
Note que o início do comando não mostra mais a atual pasta que você está, agora você está dentro da linha do FTP, onde você pode inserir os comandos necessários para realizar uma conexão.
O próximo passo é digitar o comando open. Na próxima linha irá aparecer “para” ou “to”, ali você deve especificar o endereço do servidor que você deseja estar se conectando. Este endereço pode ser o IP ou a URL, por exemplo:
speedtest.tele2.net/
Este servidor tem a finalidade de testes então você não terá que criar ou ter um servidor já pronto.
Em seguida irá pedir o nome de usuário, para este você utiliza anonymous, e a senha pode ser qualquer uma de sua escolha. Se você seguiu os procedimentos corretamente deve receber uma mensagem positiva de login, como mostrado abaixo.
.
Pronto, você já conseguiu realizar sua primeira conexão FTP do seu computador. No link a seguir (em inglês), está disponibilizada uma lista com diversos comandos que se pode utilizar no prompt do Windows para esse tipo de conexão.
https://www.serv-u.com/features/file-transfer-protocol-server-windows/commands
Note que esse tipo de transferência ocorre apenas via FTP e não deve ser utilizada para dados ou arquivos pessoais, esta breve explicação serve apenas fins didáticos e de teste.
Esta forma é menos utilizada, por ser menos prática e bem mais trabalhosa. E como existem ferramentas e softwares já citados aqui que auxiliam esse processo, não iremos nos aprofundar mais no método apenas utilizando o CMD.
Via FileZilla
Após baixar o software no site mencionado anteriormente, deve-se executar o instalador, e seguir os poucos passos para ter a sua instalação completa.
Da mesma forma que se abriu o prompt, vá no menu iniciar e abra o FileZilla.
Basicamente esta é a interface do programa; Como você pode ver na área destacada em vermelho acima, ao invés de termos que especificar comandos manualmente para fazer a nossa conexão, basta inserir os dados necessários e clicar em Conexão rápida para se conectar ao servidor.
O host é o endereço do servidor (seja ele disponibilizado por IP ou não), respectivamente o seu nome de usuário do cliente, e a senha de acesso disponibilizada pelo servidor. Por padrão, a porta para conexões FTP é a 21, e para SFP é 22.
Se a conexão for insegura (por exemplo se for apenas uma conexão FTP), antes que ocorra o acesso você será notificado se deseja prosseguir ou não.
Ocorrendo tudo certo, você poderá ter acesso à pasta do servidor e poderá transferir seus arquivos normalmente diretamente para o host.
Se você já tiver um website hospedado, é bem provável que o seu serviço inclua o suporte para esse tipo de transferência. Basta procurar as informações credenciais para o login, e configurar no FileZilla.
Uma vez que configurado e conectado ao serviço de hospedagem, qualquer um que tentar acessar seu site através do seu domínio já poderá ver as modificações que foram feitas e enviadas através do software direto para o host.
Por mais que a utilização de um serviço FTP seja antiga, ele é de extrema praticidade para qualquer um que está desenvolvendo.
Quando inicia-se a jornada de publicar um site ou até mesmo de estar o gerenciando, sem a ajuda de alguns recursos pode ser uma árdua tarefa manter tudo organizado e sob controle.
O conteúdo que abordamos aqui é de grande auxílio e se optado pela utilização, com certeza ele pode lhe economizar um pouco mais de tempo e ter mais praticidade para estar gerenciando seus arquivos.
Esperamos que após ter lido esse artigo você tenha tirado suas dúvidas e tenha entendido com total clareza a utilização e todos os benefícios, e esteja apto a utilizar e desfrutar do que este recurso traz na hora de gerenciar o seu website.
Compartilhe:
Compartilhar no facebook
Compartilhar no google
Compartilhar no twitter
Compartilhar no linkedin
Compartilhar no email