Введение в безопасный протокол передачи файлов (SFTP)

Опубликовано: 13 Марта, 2023
Введение в безопасный протокол передачи файлов (SFTP)

Протокол передачи файлов (FTP) существует уже несколько десятилетий. Когда у организации было слишком много данных для отправки по электронной почте, она использовала FTP. Но с годами киберпреступники начали использовать этот протокол для проведения кибератак и кражи информации. Итак, каково решение этой дилеммы? Введите безопасный протокол передачи файлов (SFTP)!

В этой статье я объясню, что такое SFTP, как он работает и многое другое. Без дальнейших церемоний, давайте погрузимся прямо в!

Что такое безопасный протокол передачи файлов (SFTP)?

Протокол безопасной передачи файлов (SFTP) позволяет безопасно передавать большие файлы через Интернет или вашу сеть. По сути, это устраняет некоторые проблемы FTP. Как следует из названия, SFTP гораздо более безопасен и эффективен при передаче данных. Вы также можете использовать SFTP для передачи данных в решении виртуальной частной сети (VPN).

SFTP защищает вас от атак с перехватом паролей и пакетов данных. Он шифрует данные и использует хеш-функцию пароля для проверки учетных данных пользователя.

Как упоминалось ранее, SFTP превосходит FTP во многих аспектах — SFTP имеет все аспекты FTP, но его также проще настроить. Вот почему вам гораздо лучше использовать SFTP вместо FTP.

Итак, как именно работает SFTP для эффективной и безопасной передачи ваших файлов? Давайте углубимся в то, как работает протокол.

Как работает SFTP?

Изображение 3911

SFTP использует протокол Secure Shell (SSH) для безопасной передачи файлов. Это означает, что для успешной работы требуется аутентификация пользователя. Используя SSH, SFTP шифрует передаваемые данные, чтобы защитить их от посторонних глаз. Он также использует SSH-порт 22, поэтому вам не нужны никакие другие порты.

SFTP был в первую очередь разработан для управления файлами по сети TCP/IP. Как и в случае с FTP, вы создаете папки на своем сервере. Затем вы можете разрешить пользователям доступ к этим папкам, используя адрес и действительные учетные данные пользователя. Чтобы упростить вашу жизнь, SFTP использует те же команды, что и FTP. Аналогично, большинство команд SFTP идентичны командам оболочки Linux.

Чтобы подключиться к серверу, к которому вы пытаетесь получить доступ, вам потребуется установленный SSH-клиент для использования SFTP. Следующие SSH-клиенты являются хорошими вариантами для многих организаций:

  • замазка
  • WinSCP
  • Кибердак
  • FileZilla
  • SSH-клиент Tectia

Еще одна вещь, которую следует отметить, это то, что клиенты SSH поставляются с ключами SSH. Эти ключи автоматизируют доступ к серверам, и их часто добавляют в сценарии, системы резервного копирования и инструменты управления конфигурацией. Каждый ключ в SFTP состоит из двух частей. Обычно вы храните первую часть на клиентской машине, а вторую — на сервере с открытым ключом. Администраторы могут выбрать, будут ли идентификатор пользователя и пароль идентифицировать пользователя или ключ SSH. Вы даже можете использовать комбинацию обоих.

Итак, как все это вписывается в ваш бизнес? Далее я расскажу вам о некоторых распространенных случаях использования.

Варианты использования SFTP

В зависимости от назначения SFTP вы можете использовать этот протокол для следующих целей:

  1. Позволяет клиентам загружать данные, которые слишком велики, чтобы их можно было напрямую прикрепить к билетам поддержки или электронным письмам.
  2. Создает расположение, к которому команда внедрения на месте может получить удаленный доступ для получения установочных файлов или других ресурсов.
  3. Трансферы платежные данные, файлы для восстановления данных и конфиденциальные данные клиентов надежно
  4. Помогает соблюдать нормативные требования Закона о переносимости и подотчетности медицинского страхования (HIPAA) и Общего регламента по защите данных (GDPR).

Вы также можете использовать SFTP в качестве дополнения к политикам трафика с шифрованием VPN. Эта комбинация снижает вероятность кибератаки. Как указывалось ранее, SFTP шифрует ваши данные при передаче. Система учетных данных, которую использует SFTP, помогает остановить кибератак. Это гарантирует, что любой, кто получает доступ к конфиденциальным данным, имеет правильные учетные данные. По сути, шифрование и проверка учетных данных пользователя — это мощное сочетание кибербезопасности!

Вы видели, как я несколько раз упоминал FTP в этой статье. Прежде чем обсуждать процесс реализации SFTP, давайте быстро рассмотрим различия между FTP и SFTP.

SFTP против FTP

Так почему вы должны использовать SFTP по умолчанию? Ну, как вы теперь знаете, это гораздо более безопасный и эффективный способ передачи данных, чем FTP. Но вот таблица, демонстрирующая все их различия:

SFTP FTP
Безопасность Шифрует данные перед передачей Не зашифровано
Архитектура Работает как подчиненный SSH Работает в клиент-серверной схеме
Порты 22 21
Способ передачи Использует туннелирование шифрования между конечными точками, чтобы защитить все данные, и проверяет пользователя с помощью аутентификации учетных данных. Прямая передача между конечными точками
SFTP против FTP.

Как вы можете заметить, FTP теперь устарел из-за его низкой безопасности при передаче данных.

Теперь, когда вы знаете, почему лучше всего использовать SFTP, вам, вероятно, интересно, как его реализовать. Давайте посмотрим на этот процесс дальше.

Как реализовать SFTP

Когда дело доходит до реализации, вам нужно будет выполнить несколько основных шагов. Во-первых, вам нужно настроить SFTP-сервер. Помните, что вам также нужен SSH-клиент. В этом примере я буду использовать OpenSSH и WinSCP.

Установка SFTP-сервера

Если вы используете Windows 11, просто выполните следующие действия:

  1. Перейдите в «Настройки» > «Приложения» > «Дополнительные функции».
  2. Нажмите «Просмотреть функции».
  3. Перейдите к серверу OpenSSH и выберите его.
  4. Нажмите Далее
  5. Нажмите Установить

Если вы используете Windows 10 версии 1803 или выше, вы можете выполнить следующие действия:

  1. Перейдите в «Настройки» > «Приложения» > «Приложения и функции» > «Дополнительные функции».
  2. Нажмите Добавить функцию
  3. Перейдите к функции сервера OpenSSH и разверните ее.
  4. Нажмите Установить

Это установит двоичные файлы в %WINDIR%System32OpenSSH.

Вы также можете найти файл конфигурации sshd_config и ключи хоста, установленные в %ProgramData%ssh, но только после перезапуска сервера.

Изображение 44

Если вы хотите вручную установить более новую версию OpenSSH (более новую, чем та, которая поставляется с Windows), просто следуйте этому процессу:

  1. Загрузите OpenSSH для Windows и сопоставьте системную архитектуру с версией, например, 64-битной или 32-битной версией.
  2. Извлеките загруженный пакет в C:Program FilesOpenSSH от имени администратора.
  3. Установите от имени администратора службы sshd и ssh-agent, выполнив следующую команду из терминала:

Вы только что настроили свой SFTP-сервер! Теперь пришло время настроить его.

Настройка SFTP-сервера

Теперь, когда у вас есть SFTP-сервер, вам необходимо разрешить входящие подключения к SSH-серверу в брандмауэре Windows. Во время установки OpenSSH, возможно, уже обновил ваш брандмауэр. Проверьте и посмотрите, существует ли правило брандмауэра «OpenSSH SSH Server (sshd)». Если это не так, выполните следующую команду PowerShell от имени администратора:

Обратите внимание, что указанное выше расположение sshd.exe по умолчанию — C:WindowsSystem32OpenSSHsshd.exe.

Кроме того, вы можете перейти в раздел «Безопасность Windows» > «Брандмауэр и защита сети» > «Дополнительные параметры» > «Правила для входящих подключений» и добавить новое правило для порта 22.

Несмотря на это, после добавления нового правила выполните следующий процесс, чтобы продолжить настройку:

  1. Запустить службу
  2. Откройте Службы Windows в Панели управления > Система и безопасность > Администрирование.
  3. Найдите службу OpenSSH SSH Server

Чтобы настроить автоматический запуск службы при загрузке, выполните следующие действия:

  1. Перейдите в «Действие» > «Свойства».
  2. Измените тип запуска на автоматический
  3. Подтвердите изменения

Теперь, когда вы хотите запустить службу OpenSSH SSH Server, вы можете использовать ссылку «запустить службу» или перейти в меню «Действие»> «Пуск».

Далее я расскажу вам, как настроить открытый ключ SSH.

Настройка открытого ключа SSH

Изображение 3913

Этот процесс может варьироваться в зависимости от ваших потребностей и настроек. Но ниже приведен общий пример:

  1. Создайте папку.ssh, в которой будет размещен файл author_keys в папке профиля вашей учетной записи Windows, например, C:Usersusername.ssh
  2. Добавить разрешения уровня управления доступом Windows (ACL)

Настройте ACL так, чтобы соответствующая учетная запись Windows была владельцем папки. Кроме того, убедитесь, что это единственная учетная запись, имеющая доступ на запись. Помните, что учетная запись, которая запускает службу OpenSSH SSH Server, должна иметь доступ для чтения к файлу.

Еще одна вещь, на которую следует обратить внимание, это то, что стандартная конфигурация Win32-OpenSSH по умолчанию имеет исключение, установленное в sshd_config для учетных записей в группе «Администраторы». Это сделает вашу жизнь проще в долгосрочной перспективе!

Наконец-то пришло время подключиться к серверу!

Подготовка к подключению к вашему серверу

Перед первым подключением вам необходимо узнать отпечаток хост-ключа сервера. Вы можете использовать ssh-keygen.exe для каждого файла. В качестве администратора введите следующую команду в командной строке Windows:

Примечание. При необходимости замените %WINDIR%System32 на %ProgramFiles% в зависимости от архитектуры вашей ОС.

Если вы используете PowerShell, просто введите эту команду:

При необходимости замените $env:WINDIRSystem32 на $env:ProgramFiles.

Найдя отпечаток ключа хоста сервера, вы можете запустить WinSCP. Выполните следующие действия в диалоговом окне:

  1. Убедитесь, что вы выбрали узел Новый сайт
  2. Проверьте, выбрали ли вы протокол SFTP на узле Новый сайт.
  3. Введите IP-адрес сервера или имя хоста под именем хоста
  4. Введите имя вашей учетной записи Windows

Для аутентификации с открытым ключом:

  1. Нажмите кнопку «Дополнительно»
  2. Перейдите в SSH> Аутентификация
  3. Выберите файл закрытого ключа в форме ввода закрытого ключа.
  4. Нажмите OK, чтобы отправить изменения

Для аутентификации по паролю:

  1. Введите пароль своей учетной записи Windows (если у вашей учетной записи Windows нет пароля, вам потребуется использовать аутентификацию с открытым ключом)
  2. Нажмите кнопку Сохранить

Наконец, нажмите кнопку «Войти» и проверьте ключ хоста, сравнив ранее собранные отпечатки пальцев.

Теперь вы готовы использовать свой SFTP-сервер, но вам все еще нужно программное обеспечение для управления пользователями и файлами. Давайте рассмотрим это подробнее в следующем разделе.

Установка программного обеспечения для управления SFTP

Из многих доступных решений в этом примере я буду использовать WinSCP. Если вы еще не установили его, перейдите на веб-сайт WinSCP и найдите нужную версию операционной системы. Затем загрузите и используйте программу установки, чтобы добавить программное обеспечение на сервер и предоставить конечному пользователю удобный интерфейс. Это поможет вам управлять пользователями в качестве администратора, а также управлять передачей файлов. Точно так же ваши конечные пользователи также выиграют от этого интерфейса.

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

Наконец, теперь я расскажу, как пользователи могут использовать ваш SFTP-сервер.

Как пользователи могут использовать ваш SFTP-сервер

Изображение 3914

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

  • Имя хоста сервера, например, ftp.example.com
  • Используемый протокол сервера, например, SFTP
  • Имя пользователя учетной записи
  • Пароль от аккаунта

Если они находятся за пределами офиса, им потребуется безопасное VPN-подключение, чтобы получить доступ к вашей сети, прежде чем они смогут использовать программное обеспечение SFTP.

И вот оно. Теперь вы знаете, как настроить SFTP-сервер и предоставить пользователям доступ к нему. Помните, что каждое программное решение работает по тем же принципам, которые мы использовали в нашем примере. Ранее я упоминал VPN, поэтому, прежде чем закончить, давайте быстро коснемся того, как VPN могут помочь в поддержке операций SFTP в вашем бизнесе.

Как VPN может поддерживать SFTP?

Во-первых, вы никогда не должны полагаться на одну меру безопасности, и SFTP не является исключением. Конечно, он шифрует данные и требует проверки подлинности учетных данных, чтобы предоставить пользователям доступ к данным, но вы можете еще больше повысить свою безопасность с помощью VPN.

SFTP идеально сочетается с корпоративными решениями VPN, которые предлагают унифицированное управление угрозами (UTM) и возможности защиты брандмауэра нового поколения (NGFW). Если вы решите использовать VPN, подумайте о том, чтобы получить ту, которая имеет эти две функции, а также следующие функции:

  • Система предотвращения вторжений (IPS) и система обнаружения вторжений (IDS)
  • Антивирус шлюза
  • Веб-фильтрация и фильтрация приложений

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

Последние мысли

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

Кроме того, если удаленные работники хотят подключиться к вашему SFTP-серверу, помните, что им необходимо VPN-подключение к вашей сети. Кроме того, чтобы еще больше обезопасить свою сеть, рассмотрите возможность использования многофакторной аутентификации (MFA). До следующего раза оставайтесь в безопасности в мире кибербезопасности!

У вас есть еще вопросы о SFTP? Ознакомьтесь с разделами часто задаваемых вопросов и ресурсов ниже!

Часто задаваемые вопросы

Как сделать VPN-доступ более безопасным для удаленных сотрудников?

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

Каковы некоторые рекомендации по использованию брандмауэров?

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

Что такое брандмауэр нового поколения (NGFW)?

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

Что такое программное обеспечение как услуга (SaaS)?

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

Нужен ли моим пользователям VPN-доступ к удаленному сайту для использования моего SFTP-сервера?

Да, если вы хотите, чтобы кто-то получил удаленный доступ к вашему SFTP, ему нужно будет подключиться к вашему серверу с помощью VPN. Убедитесь, что они используют VPN с функциями аутентификации, чтобы остановить кибератак.