Различия
Показаны различия между двумя версиями страницы.
Предыдущая версия | |||
— | sftp [2025/07/06 12:39] (текущий) – внешнее изменение 127.0.0.1 | ||
---|---|---|---|
Строка 1: | Строка 1: | ||
+ | ====== SFTP ====== | ||
+ | ~~Title: SSH File Transfer Protocol (SFTP) настройка под хостинг Apache ~~ | ||
+ | {{htmlmetatags> | ||
+ | metatag-keywords=(SFTP) | ||
+ | metatag-description=(SFTP (SSH File Transfer Protocol) заменяет FTP на хостингах как более безопасный протокол.) | ||
+ | }} | ||
+ | |||
+ | {{ :: | ||
+ | |||
+ | |||
+ | **SFTP** (SSH File Transfer Protocol) — протокол прикладного уровня, | ||
+ | |||
+ | Существует заблуждение, | ||
+ | |||
+ | Сам по себе протокол SFTP не обеспечивает безопасность работы; | ||
+ | |||
+ | Программа sftp использует в качестве транспорта ssh, и [[аутентификация]] на удалённом сервер выполняется средствами ssh. Если есть необходимость вместо ssh использовать другую программу, | ||
+ | |||
+ | В качестве SFTP-клиента для Windows может использоваться WinSCP, PSFTP из пакета PuTTY или кросс-платформенный ftp -клиент Filezilla. | ||
+ | |||
+ | Читайте также: [[montirovanie_udaljonnoj_papki# | ||
+ | |||
+ | ===== Настройка сервера SFTP ===== | ||
+ | |||
+ | **Сервер SFTP** встроен в OpenSSH. Он реализуется с помощью программы sftp-server. Для того чтобы включить sftp-server в sshd, необходимо указать его в конфигурационном файле sshd_config в качестве подсистемы: | ||
+ | <file bash> | ||
+ | Subsystem sftp / | ||
+ | </ | ||
+ | Как правило, | ||
+ | |||
+ | **Настройка ChrootDirectory в SFTP** | ||
+ | |||
+ | * Для начала, | ||
+ | addgroup --system sftpusers | ||
+ | </ | ||
+ | * Далее заменим подсистему sftp в / | ||
+ | #Subsystem sftp / | ||
+ | Subsystem sftp internal-sftp | ||
+ | </ | ||
+ | * Напишем нужные нам ограничения в самый конец файла sshd_config< | ||
+ | Match Group sftpusers | ||
+ | | ||
+ | # | ||
+ | | ||
+ | # установленный umask 007, соответствующий 0660 для файлов и 0770 для каталогов | ||
+ | | ||
+ | | ||
+ | | ||
+ | </ | ||
+ | <note tip> | ||
+ | |||
+ | |||
+ | * При создании пользователя не надо указывать ему [[shell]], так как он все равно не сможет им воспользоваться (Опция " | ||
+ | fatal: bad ownership or modes for chroot directory "/ | ||
+ | </ | ||
+ | |||
+ | **Расшифровка параметров sshd_config** | ||
+ | * Match User позволяет серверу SSH применять следующие команды только к указанному пользователю | ||
+ | * ForceCommand internal-sftp: | ||
+ | * PasswordAuthentication yes включает поддержку парольной аутентификации. | ||
+ | * ChrootDirectory %h блокирует пользователю доступ ко всем каталогам, | ||
+ | * AllowAgentForwarding no, AllowTcpForwarding no и X11Forwarding no отключают форвардинг, | ||
+ | |||
+ | ===== SFTP доступ ===== | ||
+ | |||
+ | Для каждого сайта создадим системного пользователя ftpjoo для доступа по протоколу SFTP с группой www-data, от которой работает Apache. | ||
+ | <file bash> | ||
+ | useradd -d / | ||
+ | </ | ||
+ | |||
+ | В самый конец файла sshd_config напишем: | ||
+ | <file bash> | ||
+ | Match Group www-data | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | </ | ||
+ | Зададим права для директорий, | ||
+ | #!/bin/bash | ||
+ | |||
+ | find / | ||
+ | find / | ||
+ | chown -R ftpjoo: | ||
+ | chmod 755 / | ||
+ | chown root:root / | ||
+ | </ | ||
+ | ====== Клиент sftp ====== | ||
+ | |||
+ | Форма вызова команды: | ||
+ | < | ||
+ | sftp [-1Cv] [-B buffer_size] [-b batchfile] [-F ssh_config] | ||
+ | [-o ssh_option] [-P sftp_server_path] [-R num_requests] [-S program] | ||
+ | [-s subsystem | sftp_server] хост | ||
+ | sftp [[user@]host[: | ||
+ | sftp [[user@]host[: | ||
+ | sftp -b batchfile [user@]host | ||
+ | </ | ||
+ | < | ||
+ | * В первой форме sftp подключается к удалённому серверу SFTP хост и переходит в интерактивный режим работы. | ||
+ | * Во втором случае sftp скачивает файл1 с сервера и записывает его в текущий каталог с под именем файл1 (или файл2, если это имя указано). Например, | ||
+ | $ sftp user@mb.test.net:/ | ||
+ | </ | ||
+ | $ sftp user@mb.test.net:/ | ||
+ | </ | ||
+ | * Третья форма, также как и первая, | ||
+ | * В четвёртой форме после подключения к серверу выполняется batchfile, содержащий команды sftp. В качестве имени файла может быть указан символ -, в этом случае batchfile читается со стандартного потока ввода. | ||
+ | |||
+ | <panel type=" | ||
+ | * [[Правила iptables для FTP]] | ||
+ | * [[proftpd# | ||
+ | </ |
📌 Удобный подбор VPS по параметрам доступен на DIEGfinder.com - официальном инструменте проекта DIEG. Это часть единой экосистемы, созданной для того, чтобы помочь быстро найти подходящий VPS/VDS сервер для любых задач хостинга.
📌 Для тестирования скриптов, установщиков VPN и Python-ботов рекомендуем использовать надежные VPS на короткий срок. Подробнее о быстрой аренде VPS для экспериментов - читайте здесь.
💥 Подпишись в Телеграм 💥 и задай вопрос по сайтам и хостингам бесплатно!7 Самых Популярных Статей
- Как запустить скрипты и веб-приложения на Python
- Что такое страны TIER 1,2,3
- 7 способов сравнения файлов по содержимому в Windows или Linux
- Установка и тестирование веб-панели HestiaCP
- Nginx простые примеры конфигурации
- top, htop, atop определение загрузки ОС (Load average, LA)
- Использование rsync в примерах
7 Самых Популярных Обзоров
- Хостинг для Python-скриптов и приложений
- ТОП 4 лучших антидетект браузеров (Бесплатные & Платные)
- Подборка купонов (промокоды) на хостинг, антидетект браузеры
- Обзор THE.Hosting (PQ Hosting): надежный хостинг с профессиональной поддержкой
- Хостинг в России
- Хостинг в Европе
- Обзор браузера Dolphin {anty} для мультиаккаунтинга