- Руководство по настройке SFTP-сервера в Linux
- Настройка SFTP-сервера в Linux
- Шаг 1: Создание групп, пользователей, каталогов
- Шаг 2. Настройте sshd_config
- Шаг 3: Перезапустите сервис
- Доступ к SFTP через командную строку Linux
- Примеры команд SFTP
- ИТ База знаний
- Полезно
- Навигация
- Серверные решения
- Телефония
- Корпоративные сети
- Руководство по установке SFTP сервера на Linux
- Что такое SFTP?
- Установка SFTP-сервера на Linux
- Этап 1: Создание групп, пользователей, каталогов
- Этап 2: Настройка sshd_config
- Этап 3: Перезагрузите службу
- Доступ к SFTP через командную строку Linux
- Примеры команд SFTP
- Как использовать команду SFTP для передачи файлов Linux
- How to Use Linux SFTP Command to Transfer Files
- В этом руководстве мы покажем Вам, как использовать команду Linux sftp .
- Прежде чем вы начнете
- Установление SFTP-соединения
- Команды SFTP
- Навигация по SFTP
- Передача файлов с SFTP
- Загрузка файлов с помощью команды SFTP
- Загрузка файлов с помощью команды SFTP
- Файловые манипуляции с SFTP
- Вывод
Руководство по настройке SFTP-сервера в Linux
Главное меню » Операционная система Linux » Руководство по настройке SFTP-сервера в Linux
Давайте посмотрим, как вы можете настроить SFTP-сервер в системе Linux.
Настройка SFTP-сервера в Linux
Мы использовали Ubuntu в этой статье. Команды установки специфичны для Ubuntu и Debian, но остальные шаги можно выполнить в любом другом дистрибутиве Linux.
Для выполнения шагов вам необходимы права sudoer. Поэтому, если вы не обладаете правами sudo, обратитесь к системному администратору. Если вы один из них, пожалуйста, прочитайте о создании пользователя sudo в Ubuntu.
Настройка SFTP очень проста. Прежде чем перейти к этому, вам необходимо установить OpenSSH на стороне сервера и пакет SSH на стороне клиента.
Чтобы установить OpenSSH на сервере, вы можете использовать следующую команду:
Вам также нужен SSH в системе, откуда вы собираетесь получить доступ к SFTP-серверу.
После того, как это будет сделано, у вас будет все готово для настройки SFTP. Это сделано в три этапа, и мы собираемся показать вам их один за другим.
Шаг 1: Создание групп, пользователей, каталогов
Для безопасного использования SFTP (или любой другой службы в целом) лучше всего создавать группы и пользователей, которые будут использовать эту службу и только эту службу. «Лучше всего дать одно конкретное право одной конкретной организации».
В случае, если вы хотите предоставить доступ SFTP, а также нормальный доступ к системе, создайте пользователей таким образом, чтобы их было легко идентифицировать в соответствии с услугой. Например, если andreyex используется для нормального доступа к системе, тогда andreyexsftp может использоваться для доступа SFTP. Используя этот метод будет легче на стороне администрации.
Давайте создадим группу с именем «sftpg» следующим образом:
Давайте создадим пользователя с именем andreyexftp, добавим его в указанную выше группу и дадим ему пароль.
В приведенной выше команде опция -g указывает группу, в которую следует добавить пользователя. Вы можете перечислить всех пользователей в Linux и убедиться, что новый пользователь добавлен.
Предположим, вы хотите использовать каталог /data/в качестве корня для sftp и /data/USERNAME для каждого пользователя. Поэтому, когда пользователи входят в систему через sftp, они должны находиться в /data/USERNAME в качестве каталога по умолчанию (точно так же, как вы находитесь в каталоге /home/USERNAME,когда вы входите в систему Linux через SSH). Кроме того, примите ограничение, что они могут читать файлы из этого каталога, но могут загружать только в каталог загрузки.
Давайте создадим каталоги и изменим их доступ и владельца следующим образом (читайте о правах доступа к файлам в Linux, чтобы узнать больше об этом).
Единственное, что может сбить с толку, – это передать права на каталог пользователя самому root. Это является обязательным для корреляции в SFTP. Поэтому убедитесь, что владелец /data/USERNAME является пользователем root.
На данный момент у нас есть пользователь с именем andreyexsftp с группой sftpg и с правами доступа, установленными для /data/andreyexsftp.
Шаг 2. Настройте sshd_config
Далее это вам нужно настроить SSH сервер таким образом, что всякий раз, когда пользователь, принадлежащий к группе sftpg входит в систему, он/она попадает в SFTP вместо обычной оболочки вы получите через SSH . Добавьте следующий фрагмент в /etc/ssh/sshd_config, если его еще нет.
В приведенном выше фрагменте ChrootDirectory позволяет сделать указанный каталог корневым узлом («/» каталог) в дереве каталогов. Зарегистрированный пользователь не может видеть ничего выше этого каталога. Так что это остановит текущего пользователя от доступа к файлам других пользователей через sftp . % u – код перехода для заполнения его текущим именем пользователя на момент входа в систему. Когда andreyexsftp регистрируется через sftp, он будет в /data/andreyexsftp в качестве своего корневого каталога.
Шаг 3: Перезапустите сервис
Чтобы внести изменения, внесенные в sshd_config, перезапустите службу следующим образом.
Доступ к SFTP через командную строку Linux
Вы можете войти в SFTP, как вы это обычно делаете с SSH.
Примеры команд SFTP
Команды SFTP обычно имеют следующий формат.
Для любой команды аргументами могут быть пути локальной системы или пути удаленной системы. Там нет конкретного видимого различия между ними. Вы можете указать путь как обычно после рассмотрения того, является ли аргумент локальным или удаленным.
GET – загрузить содержимое с удаленного сервера в локальную систему. Команда ниже загружает удаленный файл poster.img в каталог
/Pictures локальной системы.
PUT – загрузка содержимого из локальной системы в удаленную систему. Ниже команда загружает
/Pictures/poster2.jpg в нашу папку загрузок.
RM – Для удаления файлов в удаленной системе. Это очень похоже на команду rm. Вы можете видеть ниже, которая удаляет изображение в uploads/poster3.jpg
Вышеуказанные команды очень просты и достаточны для изучения FTP /SFTP-сервера. Если вы хотите узнать больше, используйте команду help.
Мы надеемся, что эта статья помогла вам в настройке SFTP-сервера в Linux.
Расскажите нам в комментариях о настройке вашей файловой системы SFTP. Это как упомянуто в этой статье или объединенный каталог или что-нибудь еще?
Если вы нашли эту статью полезной, поделитесь ею с друзьями. Если у вас есть предложения, не стесняйтесь оставить их ниже.
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
Источник
ИТ База знаний
Курс по Asterisk
Полезно
— Узнать IP — адрес компьютера в интернете
— Онлайн генератор устойчивых паролей
— Онлайн калькулятор подсетей
— Калькулятор инсталляции IP — АТС Asterisk
— Руководство администратора FreePBX на русском языке
— Руководство администратора Cisco UCM/CME на русском языке
— Руководство администратора по Linux/Unix
Навигация
Серверные решения
Телефония
FreePBX и Asterisk
Настройка программных телефонов
Корпоративные сети
Протоколы и стандарты
Руководство по установке SFTP сервера на Linux
3 минуты чтения
Привет, друг! Мы подготовили удобную инструкцию по установке и настройке SFTP-сервера Linux.
Онлайн курс по Linux
Мы собрали концентрат самых востребованных знаний, которые позволят тебе начать карьеру администратора Linux, расширить текущие знания и сделать уверенный шаг к DevOps
Что такое SFTP?
SFTP — это безопасный протокол передачи файлов — «Secure SHell» File Transfer Protocol. То есть это версия FTP, которая для безопасности поверх использует SSH. FTP делает то же самое, но без шифрования, поэтому использовать SFTP предпочтительнее.
Установка SFTP-сервера на Linux
Чтобы выполнить эти шаги, вам нужно иметь права sudo. SFTP прост в установке, но сначала необходимо установить OpenSSH со стороны сервера и SSH-пакет со стороны клиента.
Чтобы установить OpenSSH на сервер, используйте следующую команду:
Вам также понадобится SSH на компьютере, с которого вы хотите получать доступ к серверу SFTP.
Теперь все готово для настройки SFTP.
Этап 1: Создание групп, пользователей, каталогов
Для безопасного использования SFTP, лучше всего создать группы и пользователей, которые будут использовать только эту службу.
Создадим группу с названием sftpg, при помощи комыды groupadd :
Далее создадим пользователя seenisftp, и добавим его в группу.
В команде useradd параметр -g указывает группе, какого пользователя нужно добавить.
Предположим, что вы хотите использовать каталог /data/ в качестве корневого для sftp, а /data/USERNAME — для каждого пользователя. Поэтому, когда пользователи входят через sftp, они должны будут оказаться в каталоге /data/USERNAME . Также создадим ограничение при котором пользователи смогут читать файлы из этого каталога, но загружать их смогут только в каталог uploads .
Cоздадим каталоги и изменим их доступ:
Важно: убедитесь, что владелец /data/USERNAME и есть root, это обязательно для изменения корневого каталога в SFTP
Этап 2: Настройка sshd_config
Далее нужно настроить сервер так, чтобы когда пользователь, из группы sftpg, входил в систему, он попадал в sftp вместо обычной оболочки, в которую попадает через ssh. Добавьте следующий фрагмент кода в файл /etc/ssh/sshd_config :
ChrootDirectory позволяет создать необходимый каталог в качестве корневого узла ( / каталог) в дереве каталогов. Вошедший в систему пользователь не сможет увидеть ничего выше этого каталога и это не даст ему получить доступ к файлам других пользователей. %u — это escape код для заполнения его текущим именем пользователяm, во время входа в систему.
Этап 3: Перезагрузите службу
Чтобы выполнить внесенные в sshd_config изменения, перезапустите службу:
Доступ к SFTP через командную строку Linux
Заходите в SFTP также как в SSH:
Примеры команд SFTP
Синтаксис команд SFTP:
Параметрами могут быть либо локальные, либо удаленные системные пути.
- GET — загрузка содержимого с удаленного сервера в локальную систему.
- PUT — загрузка содержимого из локальной системы в удалённую.
- RM – предназначен для удаления файлов в удалённой системе.
Мини — курс по виртуализации
Знакомство с VMware vSphere 7 и технологией виртуализации в авторском мини — курсе от Михаила Якобсена
Источник
Как использовать команду SFTP для передачи файлов Linux
How to Use Linux SFTP Command to Transfer Files
В этом руководстве мы покажем Вам, как использовать команду Linux sftp .
SFTP (SSH File Transfer Protocol) — это защищенный файловый протокол, используемый для доступа, управления и передачи файлов по зашифрованному транспортному протоколу SSH.
По сравнению с традиционным протоколом FTP , SFTP предлагает все функции FTP, и его проще настраивать.
В отличие от того scp command , который разрешает только передачу файлов, sftp команда позволяет выполнять ряд операций с удаленными файлами и возобновлять передачу файлов.
Прежде чем вы начнете
Чтобы иметь возможность передавать и управлять файлами через SFTP, вы должны иметь разрешение на запись в удаленной системе.
При передаче больших файлов рекомендуется запускать команду sftp внутри сеанса экрана или tmux .
Каталог, из которого вы запускаете sftp команду, является локальным рабочим каталогом.
Установление SFTP-соединения
SFTP работает по модели клиент-сервер. Это подсистема SSH и поддерживает все механизмы аутентификации SSH.
Хотя традиционная аутентификация по паролю настроена по умолчанию и более проста в использовании, если вы регулярно подключаетесь к своему серверу через SSH / SFTP, рекомендуется создать ключи SSH и настроить логин SFTP без пароля .
Чтобы открыть SFTP-соединение с удаленной системой, используйте sftp команду, за которой следует имя пользователя удаленного сервера и IP-адрес или имя домена:
Если вы подключаетесь к хосту с использованием аутентификации по паролю, вам будет предложено ввести пароль пользователя.
После подключения вам будет предложено sftp приглашение и вы сможете начать взаимодействие с удаленным компьютером:
Если удаленный сервер SSH не прослушивает порт по умолчанию 22, используйте -oPort параметр, чтобы указать альтернативный порт:
Команды SFTP
Большинство команд SFTP похожи или идентичны командам, которые вы используете в командной строке Linux.
Вы можете получить список всех доступных команд SFTP, набрав help или ? .
Навигация по SFTP
Когда вы вошли на удаленный сервер, текущим рабочим каталогом является домашний каталог удаленного пользователя. Вы можете проверить это, набрав:
Для просмотра списка файлов и каталогов используйте ls команду:
Чтобы перейти в другой каталог, используйте cd команду. Например, чтобы перейти в /tmp каталог, вы должны набрать:
Вышеуказанные команды используются для навигации и работы в удаленном местоположении.
sftp Оболочка также предоставляет команды для местной навигации, информации и управления файлами. Локальные команды начинаются с буквы l .
Например, чтобы напечатать локальный рабочий каталог, вы должны набрать:
Передача файлов с SFTP
С SFTP вы можете безопасно передавать файлы между двумя компьютерами.
Если вы работаете на настольном компьютере, вы можете использовать SFTP-клиент с графическим интерфейсом, например WinSCP или FileZilla, для подключения к удаленному серверу и загрузки или загрузки файлов.
Эта sftp команда полезна, когда вы работаете на сервере без графического интерфейса и хотите передавать файлы или выполнять другие операции с удаленными файлами.
Загрузка файлов с помощью команды SFTP
После входа на удаленный сервер текущим рабочим каталогом является домашний каталог удаленного пользователя.
При загрузке файлов с помощью sftp команды они загружаются в каталог, из которого вы ввели sftp команду.
Чтобы загрузить один файл с удаленного сервера, используйте get команду:
Вывод должен выглядеть примерно так:
Если вы хотите сохранить загруженный файл под другим именем, укажите новое имя в качестве второго аргумента:
Чтобы загрузить каталог из удаленной системы, используйте рекурсивный -r параметр:
Если передача файла не удалась или была прервана, вы можете возобновить ее, используя reget команду.
Синтаксис reget такой же, как и синтаксис get :
Загрузка файлов с помощью команды SFTP
Чтобы загрузить файл с локального компьютера на удаленный SFTP-сервер, используйте put команду:
Вывод должен выглядеть примерно так:
Если файл, который вы хотите загрузить, не находится в вашем текущем рабочем каталоге, используйте абсолютный путь к файлу.
При работе с put вами можно использовать те же параметры, которые доступны с помощью get команды.
Чтобы загрузить локальный каталог, вы должны набрать:
Чтобы возобновить прерванную загрузку:
Файловые манипуляции с SFTP
Как правило, для выполнения задач на удаленном сервере вы должны подключиться к нему через SSH и выполнять свою работу с помощью терминала оболочки. Однако в некоторых ситуациях пользователь может иметь только SFTP-доступ к удаленному серверу.
SFTP позволяет выполнять некоторые основные команды для работы с файлами. Ниже приведены некоторые примеры использования оболочки SFTP:
Получите информацию об использовании диска удаленной системы :
Создайте новый каталог на удаленном сервере:
Переименуйте файл на удаленном сервере:
Удалить файл на удаленном сервере:
Удалить каталог на удаленном сервере:
Измените права доступа к файлу в удаленной системе:
Измените владельца файла в удаленной системе:
Вы должны указать идентификатор пользователя к chown и chgrp командам.
Измените владельца группы удаленного файла с помощью:
По завершении работы закройте соединение, набрав bye или quit .
Вывод
В этом руководстве мы показали, как использовать sftp команду для загрузки и выгрузки файлов на удаленный SFTP-сервер.
Вы также можете настроить аутентификацию на основе ключей SSH и подключаться к серверам Linux без ввода пароля.
Если вы регулярно подключаетесь к одним и тем же системам, вы можете упростить рабочий процесс, определив все свои подключения в конфигурационном файле SSH .
Источник