Prefácio
Há apenas uma semana, escrevi um ensaio sobre o tópico indicado no título e me deparei com o fato de que, digamos, não há tanta informação cognitiva na rede. Fatos principalmente secos e instruções de instalação. Portanto, decidi corrigir um pouco o texto e colocá-lo como um artigo.
O que é FTP?
FTP (File Transfer Protocol) é um protocolo de transferência de arquivos em uma rede. É um dos protocolos Ethernet básicos. Apareceu em 1971 e inicialmente trabalhou em redes DARPA. No momento, como o HTTP, a transferência de arquivos é baseada em um modelo que consiste em um conjunto de protocolos TCP / IP (Transmission Control Protocol / Internet Protocol). Definido na RFC 959.
O protocolo define o seguinte:
- Como será realizada a verificação de erros?
- Método de empacotamento de dados (se o empacotamento for usado)
- Como o dispositivo remetente relata que concluiu a mensagem
- Como o dispositivo receptor relata que recebeu uma mensagem
Interação Cliente-Servidor
Considere os processos que ocorrem durante a operação do FTP com mais detalhes. A conexão é inicializada pelo interpretador de protocolo do usuário. O gerenciamento de câmbio é realizado através do canal de controle no padrão TELNET. Os comandos FTP são gerados pelo interpretador de protocolo do usuário e transmitidos ao servidor. As respostas do servidor também são enviadas ao usuário através do canal de controle. Em geral, o usuário é capaz de estabelecer contato com o intérprete de protocolo do servidor e meios diferentes do intérprete do usuário.
FTP , . TCP- 21, . , . . . . , . , , .
FTP , . TCP- IP- , , TCP- . , TCP-, . , PASV, IP- , .
, . . , .
:
- ASCII – . , , - « ASCII», ( , ) . , . , , .
- – - , . FTP.
- EBCDIC – EBCDIC. ASCII-.
- – ASCII.
:
- – , FTP . TCP. , .
- – FTP ( , , ) TCP.
- – ( ).
FTP server – , . , -:
FTP client – , FTP . , , , - URL:
ftp://user:pass@address:port/directory/file
, - . , FTP, .
FTP- / . USER, – PASS. , . , , , .
, FTP-, FTP. «anonymous» ( FTP-) . , . FTP-, , .
«-» FTP- :
FTP
FTP , . . . 1999 RFC 2577 :
- (bounce attacks)
- - (spoof attacks)
- (brute force attacks)
- , (packet capture, sniffing)
- (port stealing)
FTP , , , . — «», TLS- (FTPS) , , SFTP/SCP, Secure Shell.
FTPS
FTPS (FTP + SSL) – , SSL (Secure Sockets Layer — ). TLS (Transport Layer Security — ).
SSL
SSL Netscape Communications 1996 -. ( ) , HTTP, FTP Telnet.
SSL Handshake : . . -, . - , , - .
, -. , , , , .
SSL . RSA. : RC2, RC4, IDEA, DES TripleDES. MD5 — . X.509.
SSL, - . , , , , . , , SSL, ; , , SSL - , .
SSL-
SSL :
FTPS
FTPS, :
- SSL , , , FTP . , FTPS, TCP- 990, — 989. 21 FTP. .
- – , FTP, , FTP, FTPS. , . , FTPS , . RFC 2228 FTP AUTH. , , . , 504. FTPS FEAT, , . FTPS AUTH TLS AUTH SSL, TLS SSL .
SFTP
SFTP (Secure File Transfer Protocol) – , . (Simple File Transfer Protocol), . FTPS FTP, SFTP , SSH (Secure Shell – ).
Secure Shell
IETF Secsh. SFTP , . . , , 14 2006 ( SSH) .
SSH – , TCP- (, ). Telnet rlogin, , , , . SSH . SSH- SSH- .
SSH . , , (, -). SSH , , , X WindowSystem.
, SSH-1, 1995 (). SSH-1 , rlogin, telnet rsh. 1996 , SSH-2, SSH-1. , 2000 . «SSH» SSH-2, .. . 2006 IETF -.
SSH: . OpenSSH. 2006 80 % OpenSSH. SSH Communications Security, Tectia, . .
SSH-2, telnet, («»), « ». SSH-2 (. sessionhijacking), .
« » , , « » (. keyfingerprint). « » , .
SSH UNIX- , ssh. SSH- -UNIX . , Telnet .
SSH
SSH SSH- SSH-. , . .
FTPS
, SFTP FTP FTPS, , SFTP , , .
FTPS SFTP (RSA, DSA), (DES/3DES, AES, Twhofish ..), . FTPS (, , SSL / TLS FTP) X.509, SFTP (SSH ) SSH .
X.509 . , , , . X.509 , .
SSH ( ). . SSH X.509 , — ( ).
FTP, , . , . , . , , - .
Por sua vez, suas versões protegidas resolvem o problema da confidencialidade dos dados armazenados e transmitidos no mundo moderno. Ambos os novos protocolos têm seus prós e contras e desempenham papéis ligeiramente diferentes. Nas áreas em que é necessário um arquivo morto, é preferível usar o FTPS, especialmente se o FTP clássico já tiver sido usado antes. O SFTP é menos comum devido à sua incompatibilidade com o protocolo antigo, mas é mais seguro e possui mais funcionalidade, pois faz parte de um sistema de controle remoto.
Lista de fontes