Передача данных — одно из основных действий , выполняемых пользователями через Интернет. При передаче данных необходимо соблюдать осторожность, чтобы гарантировать, что данные передаются безопасно и не подвергаются риску. Передача осуществляется по определенным правилам и способам. За это отвечают протоколы передачи данных О некоторых из них, а так же о разнице между ними, и поговорим.
SFTP (Secure File Transfer Protocol)
SFTP — это протокол, который использует протокол SSH для обеспечения высокого уровня безопасности во время передачи файлов. Он помогает пользователям безопасно передавать файлы через Интернет с использованием шифрования SSH. Поскольку SFTP работает через SSH, он использует порт 22 для установления соединения с целевой системой.
Помимо передачи данных этот протокол позволяет так же просматривать и удалять файлы и каталоги на удаленной машине.
Для работы с SFTP необходимо будет установить SFTP-сервер и SFTP-клиент. А для работы с ним, можно использовать программы с графическим интерфейсом, такие как FileZilla и Solar-PuTTY. Ну или командную строку, кому как нравится больше.
Передача через SFTP базируется на пакетах. Благодаря этому его работа быстрее, чем протокола основанного на текстовой передачи. Пакетные протоколы более компактны, следовательно и времени на их обработку тратится меньше.
user@ubuntu:~$ sudo sftp sftp-user@192.168.56.10 sftp-user@192.168.56.10's password: Connected to 192.168.56.10. sftp> ls -la sftp-user/ drwxr-xr-x 2 1002 1002 4096 Oct 24 15:41 . drwxr-xr-x 3 root root 4096 Oct 24 14:42 .. -rw-r--r-- 1 1002 1002 0 Oct 24 15:41 file1 -rw-r--r-- 1 1002 1002 0 Oct 24 15:41 file2 -rw-r--r-- 1 1002 1002 0 Oct 24 15:41 file3 -rw-r--r-- 1 1002 1002 0 Oct 24 15:41 file4 -rw-r--r-- 1 1002 1002 0 Oct 24 15:41 file5 sftp>
SCP — безопасное копирование.
Secure Copy или SCP — это сетевой протокол, который безопасно копирует файлы между операционными системами Linux по сети. Протокол SCP использует SSH для передачи данных и, следовательно, требует пароля или ключа SSH для аутентификации в удаленных системах.
С помощью SCP можно копировать файлы и папки со своего хоста на удаленный. Также в обратную сторону, с удаленного хоста на сврю машину.
SCP, как и SFTP, использует SSH и работает через TCP-порт 22.
Однако, SCP не является интерактивным и используется только для передачи файлов из одной системы в другую. Он не выполняет дополнительные задачи в удаленной системе, такие как просмотр или удаление файлов и каталогов. Это просто утилита для передачи данных. SFTP более сложен и предоставляет больше возможностей для управления файлами и папками в удаленных системах.
Если говорить о скорости, SCP превосходит SFTP. Как правило, он быстрее, особенно в high latancy сетях.
user@host2:~$ scp user@192.168.56.10:/home/user/file* ~/file/ user@192.168.56.10's password: file1 100% 0 0.0KB/s 00:00 file2 100% 0 0.0KB/s 00:00 file3 100% 0 0.0KB/s 00:00 file4 100% 0 0.0KB/s 00:00 file5 100% 0 0.0KB/s 00:00 user@host2:~$ ls file/ file1 file2 file3 file4 file5
Важное замечание
Со слов разработчиков OpenSSH, протокол SCP устарел. И рекомендуется использовать более современные и безопасные протоколы, такие как SFTP и Rsync. Это связано с постоянными сообщениями о проблемах безопасности SCP.
Например, в RHEL 9 уже отказались от протокола SCP в пользу SFTP. Вместо SCP протоколом передачи файлов по умолчанию теперь является SFTP, который полностью перекрывает возможности SCP.
RHEL планирует полностью исключить SCP в будущих выпусках Red Hat Enterprise Linux. Вместо SCP предлагается использовать Rsync, который также использует SSH для шифрования.
FISH — интерактивная оболочка.
FISH (FIle transfered over SHell) означает «Файлы, передаваемые по протоколу SHell». Этот пакет изначально был разработан для файлового менеджера Midnight Commander и использует протокол SSH для установления соединения с удаленной системой.
Протокол FISH поддерживается популярными FTP-клиентами, такими как FileZilla, и файловыми менеджерами, такими как Krusader, Konqueror, Midnight Commander и т. д.
Хотя FISH не так популярен и широко используется по сравнению с SFTP и SCP, он так же обеспечивает безопасную передачу данных между системами. На удаленной системе достаточно только запущенной службы ssh.
user@host1 ~ [124]> scp user@192.168.56.15:/home/user/file2 ~/ user@192.168.56.15's password: file2 100% 0 0.0KB/s 00:00 user@host1 ~>
Заключение.
Вот наверное и все пока, что я хотел вам рассказать о некоторых протоколах передачи данных. А вы пользуетесь какими-нибудь из них? Было бы интересно услышать ваше мнение.
Was this helpful?
0 / 0