news
Публичное облако VMware в Казахстане
KA
3 августа 2023
Обновлено 2 августа 2023

Использование команды SCP Debian для безопасной передачи файлов

Debian Linux Сети

Введение

Шифрование конфиденциальных данных перед их передачей необходимо для сохранения их конфиденциальности, целостности и аутентичности в процессе передачи. При шифровании данные преобразуются в защищенный формат, который может быть понят только уполномоченными лицами, имеющими правильный ключ для расшифровки. Таким образом, неавторизованные лица и хакеры не могут перехватить и расшифровать конфиденциальные данные во время их передачи.

Более того, шифрование выступает в качестве дополнительного уровня безопасности, защищая конфиденциальную информацию, такую как персональные данные, финансовые сведения или интеллектуальная собственность, от несанкционированного доступа и подслушивания. Когда данные передаются по незащищенным каналам, таким как Интернет, шифрование становится решающим фактором снижения рисков, связанных с перехватом и утечкой информации. Для решения этой задачи создали SCP.

SCP — это утилита в UNIX-подобных системах, позволяющая копировать файлы и каталоги между локальными и удаленными хостами по защищенному протоколу SSH.

В целом, использование шифрования с помощью таких утилит, как SCP, обеспечивает спокойствие как отправителям, так и получателям данных. Они могут быть уверены, что их конфиденциальная информация защищена от несанкционированного доступа и манипуляций. Использование шифрования является одним из основных принципов безопасного обмена данными в современном компьютерном мире.

Требования к установке

  • Root-права;
  • Debian 11 или более поздняя версия;
  • Некоторые знания о работе ОС;
  • Подключение к Интернету.

Установка

Для безопасной передачи и перед использованием утилиты нам необходимо обновить и установить все пакеты:

apt update && apt upgrade -y
Обновление
Скриншот №1 — Обновление

После этого необходимо проверить список репозиториев и пакетов. Если вы уверены, что ваша система соответствует всем требованиям, то этот шаг можно пропустить. Однако если вы еще не сделали этого, введите следующую команду CLI:

apt list | grep scp && scp
Проверка пакетов
Скриншот №2 — Проверка пакетов

На рисунке выше мы видим список пакетов и с помощью написанной команды можем проверить, установлен ли один из них. Рассмотрим синтаксис этой команды:

scp [-346ABCpqrTv] [-c cipher] [-F ssh_config] [-i identity_file] [-] destination] [-l limit] [-o ssh_option] [-P port] [-S program] source… target

  • [-346ABCpqrTv]: Это набор опций для управления поведением scp. Каждая опция имеет свое значение:
  • -3: Позволяет копировать файлы между двумя удаленными хостами через локальный хост;
  • -4: Принудительно использует IPv4 для соединения;
  • -6: Принудительное использование IPv6 для соединения;
  • -A: Аутентификация через агент аутентификации SSH;
  • -B: Оптимизация пропускной способности и превращение копирования в фоновый процесс;
  • -C: Включает сжатие данных при передаче;
  • -p: Сохраняет атрибуты и права доступа к исходным файлам;
  • -q: Тихий режим, не выводит сообщений о ходе копирования;
  • -r: Рекурсивное копирование каталогов и их содержимого;
  • -T: Отключает проверку TTY для удаленного хоста (используется при перенаправлении ввода/вывода);
  • -v: Подробный вывод, отображает информацию о ходе копирования;
  • [-c cipher]: Задает алгоритм шифрования, который будет использоваться для защиты данных при передаче. Например, aes128-ctr или blowfish-cbc;
  • [-F ssh_config]: Указывает альтернативный конфигурационный файл SSH, в котором задаются параметры подключения к удаленному хосту;
  • [-i identity_file]: Указывает файл с закрытым ключом, который будет использоваться для аутентификации при подключении по SSH;
  • [-] destination: Опционально указывает место, куда будут скопированы исходные файлы или каталоги на удаленном хосте. Если параметр опущен, то копирование будет производиться в текущий каталог удаленного хоста;
  • [-l limit]: Ограничивает пропускную способность соединения в Кбит/с;
  • [-o ssh_option]: Позволяет задать дополнительные опции SSH;
  • [-P port]: Задает порт;
  • [-S program]: Указывает путь к программе, которая будет использоваться для выполнения шифрования, например, ssh-program.

Выше мы рассмотрели все опции и параметры, которые получают полезность при использовании. Рассмотрим различные способы использования этой полезности.

Обычная передача файла

Утилита позволяет перемещать защищенный файл между различными машинами. Для этого необходимо ввести команду CLI:

scp /etc/apple.txt root@78.140.240.178:/etc/
Обычная передача файла
Скриншот №3 — Обычная передача файла

Введите свои учетные данные в форме user, IP, password и согласитесь с подключением. Отлично! Теперь мы можем найти на целевой машине тот же самый файл с помощью следующей команды:

cd /etc && ls
Точка удаленного хоста
Скриншот №4 — Точка удаленного хоста

В первой колонке apple.txt успешно передан между двумя системами по ssh! Если необходимо передать целую папку или каталог, используйте опцию -r, посмотрим на примере:

scp -r -C -4 /etc/network root@78.140.240.178:/dump
Опции передачи файла
Скриншот №5 — Опции передачи файла

Эту утилиту можно использовать для резервного копирования, начиная с простого файла и заканчивая ISO всего диска и системы. К счастью, в системе Linux все настройки хранятся в конфигурационных файлах, которые позволяют переносить данные без проблем. Также мы можем использовать обратное подключение и передавать файлы с удаленной машины на локальную, просто поменяв их местами.

Резервное копирование с архивом

С помощью SCP можно создать архив всего диска, системной базы данных и других вещей, которые могут содержать всю систему. Посмотрите на связку tar и scp, как передавать данные такого типа? Дополнительно многие компании используют нестандартный порт для SSH-соединения, давайте изменим на целевой машине порт на 2222 и подумаем, как передавать данные в такой ситуации. Запишите команды ниже:

tar -cvzf dump.tar.gz / && ls
Создание архива
Скриншот №6 — Создание архива

Убедитесь, что файл был заархивирован, и напишите следующую команду:

scp -4 -C -v -P 2222 dump.tar.gz root@78.140.240.178:/
Передача архива
Скриншот №7 — Передача архива

Теперь необходимо разархивировать папку с помощью следующей команды:

mkdir dump && tar -xvf dump.tar.gz -C /dump
Разархивирование
Скриншот №8 — Разархивирование

Трансфер dd-образа диска

Убедитесь, что у вас достаточно прав для доступа к исходному файлу изображения и записи в каталог назначения. Также следует учитывать, что передача больших файлов образов DD может занять некоторое время, зависящее от вашего сетевого подключения и размера образа. Перед созданием ISO-образа всей системы необходимо узнать параметры дискового пространства с помощью следующей команды:

lsblk
Список дисков
Скриншот №9 — Список дисков

В нашем случае мы видим один физический диск и два логических пространства, для наших манипуляций мы используем логический диск для создания ISO-образа:

dd if=/dev/vda1 of=dump.iso bs=4M status=progress
Создание образа
Скриншот №10 — Создание образа

После успешного создания файла образа мы можем передать его предыдущим способом:

scp -4 -C -v -P 2222 /dump.iso root@78.140.240.178:/tmp
Передача файла
Скриншот №11 — Передача файла

Вывод

В заключении следует отметить, что шифрование конфиденциальных данных при передаче имеет первостепенное значение для обеспечения их безопасности. SCP, утилита, доступная в UNIX-подобных системах, играет важную роль в обеспечении безопасной передачи файлов и каталогов между локальными и удаленными узлами по протоколу SSH. Шифрование с помощью таких инструментов, как SCP, вселяет уверенность в отправителей и получателей, обеспечивая защиту конфиденциальной информации от несанкционированного доступа и манипуляций. Использование шифрования — это не только передовая практика, но и необходимый компонент безопасной передачи данных в современном компьютерном ландшафте.

Оценка:
5 из 5
Аverage rating : 5
Оценок: 2
191028 Санкт-Петербург Литейный пр., д. 26, Лит. А
+7 (812) 403-06-99
700 300
ООО «ИТГЛОБАЛКОМ ЛАБС»
700 300

Вам также может быть интересно...