Page tree

SFTP (SSH File Transfer Protocol) - безопасный протокол для работы с файлами на удаленном сервере. Позволяет передавать файлы, создавать каталоги, управлять правами и многое другое. Для пользователя работа по SFTP выглядит аналогично работе по FTP, при этом соединение осуществляется на базе защищенного протокола SSH.

Для подключения по SFTP можно воспользоваться FTP-клиентом, например, FileZilla.

Реквизиты подключения

Стандартно для подключения используются следующие реквизиты:

  • Хост: IP-адрес вашего сервера (можно найти на главной странице сервера в панели управления)
  • Имя пользователя: имя пользователя, созданного на сервере
  • Пароль: пароль данного пользователя
  • Порт: 22

Если используется авторизация по RSA-ключу, то также потребуется указать кодовую фразу (если она была задана при создании RSA-ключа) и загрузить содержимое публичного ключа.

Не рекомендуется подключаться по SFTP от имени root-пользователя. Помимо того, что это небезопасно, это также менее удобно. После подключения под root вы по умолчанию окажетесь в домашней директории root (то есть /root), и для перехода к директории с вашими проектами потребуется перемещаться по файловой структуре. Кроме того, если вы загрузите файлы от имени root, для них будут выставлены пользователь и группа root:root, и веб-сервер не сможет прочитать их. Как следствие, на сайте появятся ошибки доступа к новым файлам.

VestaCP

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

  • Хост: IP-адрес сервера
  • Имя пользователя: admin
  • Пароль: пароль пользователя admin (по умолчанию совпадает с паролем root)
  • Порт: 22

После подключения вы окажетесь в директории /home/admin/

Директории сайтов размещаются по адресу: /home/admin/web/имя_домена

Если вы создали в VestaCP дополнительного пользователя (например, user) и добавили сайт в разделе WEB от его имени, подключиться по SFTP нужно с его реквизитами:

  • Хост: IP-адрес сервера
  • Имя пользователя: user
  • Пароль: пароль пользователя user
  • Порт: 22

После подключения вы окажетесь в директории /home/user/

Директории сайтов размещаются по адресу: /home/user/web/имя_домена

Наверх

ISPmanager

Перед подключением по SFTP убедитесь, что у нужного пользователя есть shell-доступ. Это можно проверить в ISPmanager в разделе Учетные записи - Пользователи - выделить нужного пользователя - Изменить.

Необходимо, чтобы был отмечен пункт Доступ к shell.

По умолчанию в ISPmanager создан пользователь www-root. Если вы размещали сайты в разделе "WWW-домены" от имени данного пользователя, то подключиться по SFTP можно с реквизитами:

  • Хост: IP-адрес сервера
  • Имя пользователя: www-root (по умолчанию совпадает с паролем root)
  • Пароль: пароль пользователя www-root
  • Порт: 22

После подключения вы окажетесь в директории /var/www/www-root/data/

Директории сайтов размещаются по адресу /var/www/www-root/data/www/имя_домена

Если вы создали дополнительного пользователя (например, user) и добавляли сайты от его имени, для подключения используйте его реквизиты:

  • Хост: IP-адрес сервера
  • Имя пользователя: user
  • Пароль: пароль пользователя user
  • Порт: 22

После подключения вы окажетесь в директории /var/www/user/data

Директории сайтов размещаются по адресу /var/www/user/data/www/имя_домена

Наверх

Bitrix 7

По умолчанию в системе Bitrix 7 создан пользователь bitrix. При подключении по SFTP необходимо использовать реквизиты:

  • Хост: IP-адрес сервера
  • Имя пользователя: bitrix
  • Пароль: пароль пользователя bitrix (по умолчанию совпадает с паролем root)
  • Порт: 22

После подключения вы окажетесь в директории /home/bitrix/

Директории сайтов размещаются по адресам /home/bitrix/www/ (для основного сайта) и /home/bitrix/ext_www/имя_домена (для дополнительных сайтов, созданных средствами BitrixVM).

Наверх

LAMP

По умолчанию в такой сборке для работы веб-серверов используется пользователь www-data. Для того, чтобы работать от другого пользователя, в том числе подключаться по SFTP, необходимо выполнить настройку по инструкции ниже.

Подключитесь к серверу по SSH и выполните следующие действия:

1. Создайте нового SFTP-пользователя (в примере - sftpuser) с домашней директорией /var/www/:

useradd -d /var/www/ sftpuser

2. Установите пароль для нового пользователя:

passwd sftpuser

Появится запрос на ввод пароля - введите его. Обратите внимание, что символы не будут отражены на экране во время ввода.

3. Добавьте пользователя к группе www-data:

usermod -aG www-data sftpuser

Сделайте группу www-data основной:

usermod -g www-data sftpuser

4. Откройте конфигурационный файл Nginx:

nano /etc/nginx/nginx.conf

В нем замените строку:

user www-data;

На:

user sftpuser;

И перезапустите Nginx:

service nginx restart

Проверьте, от какого пользователя запускается веб-сервер Nginx. Это можно сделать командой:

ps auxwwww | grep nginx

В выводе команды видим, что запуск выполняется от sftpuser:

6. Для веб-сервера Apache2 пользователь может быть задан в одном из следующих файлов:

В 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

Далее перезапустите веб-сервер:

service apache2 restart

# для CentOS:
 
service httpd restart

И проверьте, от какого пользователя запускается Apache2, с помощью команды:

ps auxwwww | grep apache

7. Установите корректные права, владельца и группу для директории, где будут храниться сайты (домашней директории пользователя), поочередно выполнив команды:

find /var/www -type d -exec chmod 755 {} \;
 
find /var/www -type f -exec chmod 644 {} \;
 
chown -R sftpuser:www-data /var/www/

На этом настройка завершена.

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

  • Хост: IP-адрес сервера
  • Имя пользователя: sftpuser
  • Пароль: пароль пользователя sftpuser (заданный на шаге 2)
  • Порт: 22

Наверх

  • No labels