Como usar o comando FTP no Linux

O protocolo de transferência de arquivos é mais antigo do que a maioria de nossos leitores, mas ainda está forte. O FTP não tem a segurança de um protocolo moderno, mas você pode precisar usá-lo mesmo assim. Veja como fazer.

Aviso: Não use FTP na Internet

Vamos deixar isso claro desde o início: O Protocolo de Transferência de Arquivos (FTP) remonta ao início dos anos 1970 e foi escrito sem qualquer preocupação com a segurança. Ele não usa criptografia para nada. As credenciais de login, como nome de usuário e senha, bem como os dados baixados ou carregados, são transferidos em texto não criptografado. Qualquer pessoa ao longo do caminho pode ver seus segredos. No entanto, o FTP ainda tem seus usos.

Se você estiver transferindo arquivos dentro de sua rede, esteja seguro - contanto que ninguém na rede esteja farejando e espionando quaisquer documentos confidenciais enquanto você os transfere. Se os seus arquivos não forem confidenciais ou sigilosos de alguma forma, movê-los pela rede interna com o FTP deve funcionar. Linux tem o padrão ftp programa de linha de comando para lidar precisamente com esse cenário.

Mas definitivamente não use oftp comando para acessar recursos externos na Internet. Para isso, use o sftp programa de linha de comando, que usa o protocolo de transferência de arquivos SSH seguro. Apresentaremos esses dois programas neste tutorial.

Para esclarecer por que você nunca deseja usar FTP na Internet, dê uma olhada na captura de tela abaixo. Mostra a senha do FTP em texto simples. Qualquer pessoa na sua rede ou entre você e o servidor FTP na Internet pode ver facilmente que a senha é “MySecretPassword”.

Sem a criptografia, um agente malicioso também pode modificar os arquivos que você está baixando ou enviando em trânsito.

O Comando ftp

Supondo que você tenha uma conta válida em um site FTP, você pode se conectar a ele com o seguinte comando. Ao longo deste artigo, substitua o endereço IP nos comandos pelo endereço IP do servidor FTP ao qual você está se conectando.

ftp 192.168.4.25

Aviso: Você só deve usar o ftp comando para se conectar a servidores em uma rede local confiável. Use o sftp , abordado a seguir, para transferir arquivos pela Internet.

O servidor FTP responde com uma mensagem de boas-vindas. O texto da saudação varia de servidor para servidor. Em seguida, ele pede o nome de usuário da conta na qual você está fazendo login.

Observe que o endereço IP do site ao qual você está se conectando é exibido, seguido pelo seu nome de usuário do Linux. Se o nome da sua conta no servidor FTP for igual ao seu nome de usuário Linux, simplesmente pressione a tecla Enter. Isso usará seu nome de usuário Linux como o nome da conta no servidor FTP. Se o seu nome de usuário do Linux e o nome da conta do FTP forem diferentes, digite o nome do usuário da conta do FTP e pressione Enter.

Login no servidor FTP

Você será solicitado a inserir sua senha para o site FTP. Digite sua senha e pressione Enter. Sua senha não é exibida na tela. Se o nome da sua conta de usuário FTP e a combinação de senha forem verificados pelo servidor FTP, você estará conectado ao servidor FTP.

Você será presenteado com o ftp> incitar.

Olhando ao redor e recuperando arquivos

Primeiro, você provavelmente deseja obter uma lista dos arquivos no servidor FTP. O ls comando faz exatamente isso. Nosso usuário vê o arquivo gc.c está no servidor FTP e deseja fazer o download para seu próprio computador. Seu computador é o “computador local” no jargão do FTP.

O comando para recuperar (ou “obter”) um arquivo é obter. Nosso usuário, portanto, emite o comando obter gc.c. Eles datilografam obter, um espaço e, em seguida, o nome do arquivo que desejam recuperar.

O servidor FTP responde transferindo o arquivo para o computador local e confirmando a transferência. O tamanho do arquivo e o tempo de transferência também são exibidos.

ls
obter gc.c

Para recuperar vários arquivos de uma vez, use omget comando (get múltiplo). O mget comando irá pedir-lhe para confirmar se deseja fazer o download de cada arquivo por vez. Responda pressionando “y” para sim e “n” para não.

Isso seria tedioso para um grande número de arquivos. Por causa disso, coleções de arquivos relacionados são geralmente armazenadas em sites ftp como arquivos tar.gz ou tar.bz2 únicos.

RELACIONADO:Como extrair arquivos de um arquivo .tar.gz ou .tar.bz2 no Linux

mget * .c

Carregando arquivos para o servidor FTP

Dependendo das permissões concedidas à sua conta de FTP, você pode carregar (ou “colocar”) arquivos no servidor. Para fazer upload de um arquivo, use o colocar comando. Em nosso exemplo, o usuário está enviando um arquivo chamado Songs.tar.gz para o servidor FTP.

coloque Songs.tar.gz

Como você provavelmente espera, existe um comando para colocar vários arquivos no servidor FTP de uma vez. É chamado mput (colocação múltipla). Assim como o mget comando fez, mput irá pedir uma confirmação “y” ou “n” para o upload de cada arquivo, um por um.

O mesmo argumento para colocar conjuntos de arquivos em arquivos tar se aplica tanto para colocar arquivos quanto para obter arquivos. Nosso usuário está enviando vários arquivos “.odt” com o seguinte comando:

mput * .odt

Criação e alteração de diretórios

Se sua conta de usuário no servidor ftp permitir, você poderá criar diretórios. O comando para fazer isso é mkdir . Para ser claro, qualquer diretório que você criar com o mkdir comando será criado no servidor ftp e não em seu computador local.

Para alterar os diretórios no servidor ftp, use o CD comando. Quando você usa o CD comandar o ftp> prompt não mudará para refletir seu novo diretório atual. O pwd O comando (imprimir diretório de trabalho) mostrará seu diretório atual.

Nosso usuário ftp cria um diretório chamado music, muda para esse novo diretório, confirma onde eles estão usando o pwd comando então carrega um arquivo para esse diretório.

música mkdir
música cd
pwd
coloque songs.tar.gz

Para mover rapidamente para o diretório pai do diretório atual, use o cdup comando.

cdup

Acessando o computador local

Para alterar o diretório no computador local, você pode usar o lcd comando no ftp> incitar. No entanto, é fácil perder o controle de onde você está no sistema de arquivos local. Um método mais conveniente de acessar o sistema de arquivos local é usar o ! comando.

O ! comando abre uma janela de shell para o computador local. Você pode fazer qualquer coisa neste shell que você pode fazer em uma janela de terminal padrão. Quando você digita saída você é devolvido ao ftp> incitar.

Nosso usuário usou o ! comando e entrou em uma janela de shell no computador local. Eles emitiram um ls comando para ver quais arquivos estão presentes nesse diretório e, em seguida, digite saída para voltar ao ftp> incitar.

!
ls
saída

Renomeando arquivos

Para renomear arquivos no servidor FTP, use o renomear comando. Aqui, nosso usuário de FTP renomeia um arquivo com renomear e então usa o ls comando para listar os arquivos no diretório.

renomear songs.tar.gz rock_songs.tar.gz
ls

Excluindo Arquivos

Para excluir arquivos no servidor FTP, use o excluir comando. Para excluir vários arquivos de uma vez, use o mdelete comando. Você será solicitado a fornecer uma confirmação “y” ou “n” para a exclusão de cada arquivo.

Aqui, nosso usuário FTP listou os arquivos para ver seus nomes e, em seguida, escolheu um para excluir. Eles então decidem deletar todos eles.

ls
delete gc.o
mdelete * .o

Usando o comando sftp

Os leitores familiarizados com o sistema de endereçamento IP terão notado que o endereço 192.168 do servidor FTP usado nos exemplos acima é um endereço IP interno, também chamado de endereço IP privado. Como avisamos no início deste artigo, o ftp comando só deve ser usado em redes internas.

Se você deseja se conectar a um servidor FTP remoto ou público, use o sftp comando. Nosso usuário vai se conectar a uma conta SFTP chamada demonstração no servidor de FTP acessível ao público localizado em test.trebex.net.

Quando eles se conectam, eles são informados de que a conexão foi estabelecida. Eles também são informados de que a autenticidade do host não pode ser verificada. Isso é normal para a primeira conexão com um novo host. Eles pressionam “y” para aceitar a conexão.

Porque o nome da conta do usuário (demonstração) foi passado na linha de comando, eles não são solicitados a fornecer o nome da conta do usuário. Eles são solicitados apenas para a senha. Isso é inserido, verificado e aceito, e eles são apresentados com o sftp> incitar.

sftp [email protected]

Os comandos FTP que descrevemos acima funcionarão da mesma forma em uma sessão SFTP, com as seguintes exceções.

  • Para excluir um arquivo, use rm (FTP usa excluir)
  • Para excluir vários arquivos, use rm (FTP usa mdelete)
  • Para mover para o diretório pai, use CD .. (FTP usa cdup)

Nosso usuário usou alguns comandos em sua sessão SFTP. Eles têm uso ls para listar os arquivos, e CD para mudar para o diretório pub. Eles usaram o pwd para imprimir o diretório de trabalho.

Existem outras opções para transferir arquivos no mundo Linux, notavelmente scp (cópia segura), mas nos concentramos em FTP e SFTP aqui. Usados ​​nos cenários aplicáveis, esses dois comandos atenderão a você e às suas necessidades de armazenamento e recuperação de arquivos.


$config[zx-auto] not found$config[zx-overlay] not found