SFTP (SSH File Transfer Protocol) é um protocolo de arquivo seguro que é usado para acessar, gerenciar e transferir arquivos através de um transporte SSH criptografado.
quando comparado com o protocolo FTP tradicional, o SFTP oferece todas as funcionalidades do FTP, mas é mais seguro e mais fácil de configurar.
Ao contrário do SCP, que suporta apenas transferências de Ficheiros, o SFTP permite-lhe efectuar uma série de operações em ficheiros remotos e continuar as transferências de ficheiros.
neste tutorial, vamos mostrar-lhe como usar o comando Linux
.,
Antes de começar #
para ser capaz de transferir arquivos através de SFTP, você deve ter permissão de escrita no sistema remoto.
ao transferir ficheiros grandes, recomenda-se executar o comando sftp
dentro de um ecrã ou sessão tmux.
a pasta a partir da qual executa o comando sftp
é a pasta de trabalho local.
estabelecendo uma conexão SFTP #
SFTP funciona em um modelo cliente-servidor. É um subsistema do SSH e suporta todos os mecanismos de autenticação do SSH.
Para abrir uma conexão SFTP para um sistema remoto, use o sftp
comando seguido pelo servidor remoto nome de usuário e o endereço IP ou nome de domínio:
sftp remote_username@server_ip_or_hostname
Se você estiver conectando-se ao host usando autenticação de senha, você será solicitado a digitar a senha do usuário.,
uma Vez conectado, você será presenteado com o sftp
linha de comandos, e você pode começar a interagir com o servidor remoto:
Connected to remote_username@server_ip_or_hostname.sftp>
Se o controle remoto SSH server não está escutando a porta padrão 22 , use o -P
opção para especificar o SFTP porta:
sftp -P custom_port remote_username@server_ip_or_hostname
SFTP Comandos #
a Maioria dos SFTP comandos são similares ou idênticos aos comandos shell Linux.
Para obter uma lista de todos os SFTP comandos, escreva help
, ou ?
.,
help
Esta será a saída de uma longa lista de todos os comandos disponíveis, incluindo uma breve descrição de cada comando:
Available commands:bye Quit sftpcd path Change remote directory to 'path'......version Show SFTP version!command Execute 'command' in local shell! Escape to local shell? Synonym for help
Navegar com SFTP #
Quando você está conectado ao servidor remoto, seu diretório de trabalho atual é o usuário remoto diretório home., Você pode verificar que, ao digitar:
pwd
Remote working directory: /home/remote_username
Para listar os arquivos e diretórios, use o ls
comando:
ls
para navegar Para outro diretório, use o cd
comando. Por exemplo, para mudar para o /tmp
diretório, você deve digitar:
cd /tmp
Os comandos acima são usadas para navegar e trabalhar no local remoto.
a shell SFTP também fornece comandos para navegação, informação e gestão de ficheiros locais., Os comandos locais estão prefixados com a letra l
.
Por exemplo, para imprimir o directório de trabalho local, digite:
cd lpwd
Local working directory: /home/local_username
Transferência de Arquivos com SFTP #
SFTP permite a transferência de arquivos entre duas máquinas de forma segura.
Se estiver a trabalhar numa máquina do ambiente de trabalho, poderá usar um cliente de interface gráfica SFTP como o WinSCP ou o FileZilla para se ligar ao servidor remoto e transferir ou enviar ficheiros.,
o comando sftp
é útil quando trabalha num servidor sem GUI, e deseja transferir ficheiros ou efectuar outras operações nos ficheiros remotos.,
o Download de Arquivos com o Comando SFTP #
Para fazer o download de um único arquivo do servidor remoto, utilize o get
comando:
get filename.zip
A saída deve ser algo como isto:
Fetching /home/remote_username/filename.zip to filename.zip/home/remote_username/filename.zip 100% 24MB 1.8MB/s 00:13
Quando o download de arquivos com sftp
, os arquivos são transferidos para o diretório a partir do qual você digitou sftp
comando.,
Se você deseja salvar o arquivo baixado com um nome diferente, especifique o novo nome como o segundo argumento:
get filename.zip local_filename.zip
Para fazer o download de um diretório do sistema remoto, use o recursiva -r
opção:
get -r remote_directory
Se a transferência de um arquivo falhar ou for interrompida, você pode continuar usando o reget
comando.,
A sintaxe reget
é a mesma que a sintaxe get
:
reget filename.zip
o Upload de Arquivos com o Comando SFTP #
Para fazer o upload de um arquivo da máquina local para o remoto servidor SFTP, use o put
comando:
put filename.zip
A saída deve ser algo como:
Uploading filename.zip to /home/remote_username/filename.zipfilename.zip 100% 12MB 1.7MB/s 00:06
Se o arquivo que você deseja carregar não é localizado no seu diretório de trabalho atual, utilize o caminho absoluto para o arquivo.,
Ao trabalhar com put
você pode usar as mesmas opções que estão disponíveis com o get
comando.
Para fazer o upload de um diretório local, digite:
put -r locale_directory
Para retomar uma interrupção:
reput filename.zip
Manipulações de Arquivo com SFTP #
Normalmente, para executar tarefas em um servidor remoto, você teria que ligar para ele via SSH e fazer o seu trabalho usando o shell de terminal. No entanto, em algumas situações, o usuário pode ter apenas acesso SFTP ao servidor remoto.,
SFTP permite-lhe executar alguns comandos básicos de manipulação de ficheiros.,servidor remoto:
mkdir directory_name
Mudar o nome de um arquivo no servidor remoto:
rename file_name new_file_name
Excluir um arquivo no servidor remoto:
rm file_name
Excluir um diretório no servidor remoto:
rmdir directory_name
Alterar as permissões de um arquivo no sistema remoto:
chmod 644 file_name
Alterar o proprietário de um arquivo no sistema remoto:
chown user_id file_name
Você deve fornecer o ID de usuário para o chown
e chgrp
comandos.,
Alterar o grupo dono de um arquivo remoto com:
chgrp group_id file_name
uma Vez que você é feito com o seu trabalho, feche a conexão, digitando bye
ou quit
.
conclusão #
neste tutorial, mostramos – lhe como usar o comando sftp
para transferir e enviar ficheiros para o seu servidor SFTP remoto.
pode também querer configurar uma autenticação baseada em chaves SSH e ligar-se aos seus servidores Linux sem introduzir uma senha., Se estiver regularmente a ligar-se aos mesmos sistemas, pode simplificar o seu fluxo de trabalho definindo todas as suas ligações no ficheiro de configuração do SSH .
Deixe uma resposta