SFTP (SSH File Transfer Protocol) — безопасный протокол для работы с файлами на удаленном сервере. Позволяет передавать файлы, создавать каталоги, управлять правами и многое другое. Для пользователя работа по SFTP выглядит аналогично работе по FTP, при этом соединение осуществляется на базе защищенного протокола SSH.
Для подключения по SFTP можно воспользоваться FTP-клиентом, например, FileZilla.
Стандартно для подключения используются следующие реквизиты:
Если для подключения используется IPv6-адрес, то в интерфейсе FileZilla его необходимо указать в квадратных скобках, например: [295f:e05b:3dc5:bed2:2350:9648:ef5f:c304]
.
Если у вас настроена авторизация по RSA-ключу, то также потребуется указать кодовую фразу (если она была задана при создании RSA-ключа) и загрузить содержимое публичного ключа.
Не рекомендуется подключаться по SFTP от имени root-пользователя. Помимо того, что это небезопасно, это также менее удобно. После подключения под root вы по умолчанию окажетесь в домашней директории root (то есть /root
), и для перехода к директории с вашими проектами потребуется перемещаться по файловой структуре. Кроме того, если вы загрузите файлы от имени root, для них будут выставлены пользователь и группа root:root, и веб-сервер не сможет прочитать их. Как следствие, на сайте появятся ошибки доступа к новым файлам.
При установки панели будет создан пользователь fastuser
. Для подключения под данным пользователем необходимо использовать реквизиты:
fastuser
fastuser
(обратите внимание, что он отличается от пароля root
)После подключения вы окажетесь в директории /var/www/fastuser/data
.
Директории сайтов размещаются по адресу: /var/www/fastuser/data/www/имя_домена
.
Если вы создали дополнительного пользователя (например, user
), для подключения используйте его реквизиты:
user
user
После подключения вы окажетесь в директории /var/www/user/data
.
Директории сайтов размещаются по адресу: /var/www/user/data/www/имя_домена
.
По умолчанию в VestaCP создан пользователь admin
. Для подключения под данным пользователем необходимо использовать реквизиты:
admin
admin
(по умолчанию совпадает с паролем root
)После подключения вы окажетесь в директории /home/admin/
.
Директории сайтов размещаются по адресу: /home/admin/web/имя_домена
.
Если вы создали в VestaCP дополнительного пользователя (например, user
) и добавили сайт в разделе WEB от его имени, подключиться по SFTP нужно с его реквизитами:
user
user
После подключения вы окажетесь в директории /home/user/
.
Директории сайтов размещаются по адресу: /home/user/web/имя_домена
.
Перед подключением по SFTP убедитесь, что у нужного пользователя есть shell-доступ. Это можно проверить в ispmanager в разделе «Учетные записи» — «Пользователи» — выделить нужного пользователя — «Изменить».
Необходимо, чтобы был отмечен пункт «Доступ к shell».
По умолчанию в ispmanager создан пользователь www-root
. Если вы размещали сайты в разделе «WWW-домены» от имени данного пользователя, то подключиться по SFTP можно с реквизитами:
www-root
(по умолчанию совпадает с паролем root
)www-root
После подключения вы окажетесь в директории /var/www/www-root/data/
.
Директории сайтов размещаются по адресу /var/www/www-root/data/www/имя_домена
.
Если вы создали дополнительного пользователя (например, user
) и добавляли сайты от его имени, для подключения используйте его реквизиты:
user
user
После подключения вы окажетесь в директории /var/www/user/data
.
Директории сайтов размещаются по адресу /var/www/user/data/www/имя_домена
.
По умолчанию в системе Bitrix 7 создан пользователь bitrix
. При подключении по SFTP необходимо использовать реквизиты:
bitrix
bitrix
(по умолчанию совпадает с паролем root
)После подключения вы окажетесь в директории /home/bitrix/
.
Директории сайтов размещаются по адресам /home/bitrix/www/
(для основного сайта) и /home/bitrix/ext_www/имя_домена
(для дополнительных сайтов, созданных средствами BitrixVM).
По умолчанию в такой сборке для работы веб-серверов используется пользователь www-data
. Для того чтобы работать от другого пользователя, в том числе подключаться по SFTP, необходимо выполнить настройку по инструкции ниже.
Подключитесь к серверу по SSH и выполните следующие действия:
sftpuser
) с домашней директорией /var/www/
:useradd -d /var/www/ sftpuser
passwd sftpuser
Появится запрос на ввод пароля — введите его. Обратите внимание, что символы не будут отражены на экране во время ввода.
www-data
:usermod -aG www-data sftpuser
Сделайте группу www-data
основной:
usermod -g www-data sftpuser
nano /etc/nginx/nginx.conf
В нем замените строку:
user www-data;
На:
user sftpuser;
И перезапустите Nginx:
service nginx restart
Проверьте, от какого пользователя запускается веб-сервер Nginx. Это можно сделать командой:
ps auxwwww | grep nginx
В выводе команды видим, что запуск выполняется от sftpuser
.
В Ubuntu / Debian:
/etc/apache2/apache2.conf
Или:
/etc/apache2/envvars
В CentOS:
/etc/httpd/httpd.conf
Или:
/etc/httpd/envvars
В нашей сборке LAMP задавать переменные необходимо в файле /etc/apache2/envvars
.
В целом же, чтобы проверить, в каком файле необходимо задавать переменные, необходимо его просмотреть — в том из них, который будет содержать www-data
, необходимо заменить этот значение на sftpuser
.
Откройте конфигурационный файл с переменными сервера Apache2:
В Ubuntu / Debian:
nano /etc/apache2/envvars
В CentOS:
nano /etc/httpd/envvars
Замените строку:
export APACHE_RUN_USER=www-data
На:
export APACHE_RUN_USER=sftpuser
Далее перезапустите веб-сервер. Команда для Debian/Ubuntu:
service apache2 restart
Для CentOS:
service httpd restart
И проверьте, от какого пользователя запускается Apache2, с помощью команды:
ps auxwwww | grep apache
find /var/www -type d -exec chmod 755 {} \;
find /var/www -type f -exec chmod 644 {} \;
chown -R sftpuser:www-data /var/www/
На этом настройка завершена.
Теперь необходимо проверить подключение по SFTP, используя следующие реквизиты для авторизации:
sftpuser
sftpuser
(заданный на шаге 2)