Подключение и настройка к vps серверу по sftp/ftp

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

Внимание. В целях соображения безопасности подключение к серверу по протоколу FTP под пользователем «root» запрещено.
Под пользователем «root» вы можете подключиться по протоколу SSH и SFTP. 

 

Подключение по FTP к серверу с панелью ISPmanager

Чтобы подключение по FTP стало доступным, вначале требуется создать FTP-пользователя. Для этого:  

  1. Авторизуйтесь в панели управления ISPmanager. Ссылка и данные для входа были отправлены при активации сервера. 
  2. Откройте раздел Учётные записиFTP-пользователи и нажмите «Создать»:

 

 

 

Панель предложит ввести имя FTP-пользователя, выбрать владельца (пользователя, к сайтам которого вы хотите настроить доступ), задать пароль и домашнюю директорию FTP-пользователя (она настраивается относительно домашней папки пользователя-владельца):

 

 

На этом настройка завершена. Осталось проверить подключение через любой FTP-клиент, например, FileZilla. Для этого вам понадобятся следующие данные:

  • IP-адрес сервера;
  • имя созданного FTP-пользователя;
  • заданный при его создании пароль.

Подключаемся. В случае успешного подключения мы увидим список каталогов в домашней директории имя пользователя - ftp-adminvps-root. Все сайты размещены в подкаталоге www:

 

 

 

Подключение по FTP к серверу на BitrixVM

По умолчанию BitrixVM не позволяет подключаться к серверу по FTP. В статье мы рассмотрим настройку FTP с помощью ProFTPD. 

  1. Необходимо подключиться к серверу по ssh.
  2. Установите ProFTPD:
yum install proftpd

    3. Добавьте его в автозапуск:

chkconfig proftpd on

       4. Запустите службу 

service proftpd start

 

Теперь создадим пользователя для подключения к серверу.

      5. Выполните команду ниже, чтобы узнать id группы и id пользователя для основного пользователя сервера:

id bitrix

     6. Вы получите подобный ответ:

uid=600(bitrix) gid=600(bitrix) groups=600(bitrix),10(wheel)

     7. Добавляем пользователя с найденным id. После ключа -d укажите путь к домашней директории нового пользователя - его доступ к серверу будет ограничен данной директорией.

adduser userlogin -g600 -o -u600 -d /home/bitrix/www/

     8. Задайте пароль для нового пользователя:

passwd userlogin

 

Далее открываем 21 порт, чтобы сервер был доступен для подключений, выполняем команду:

vim /etc/sysconfig/iptables

 Под строкой OUTPUT ACCEPT внесите строки:

-A INPUT -p tcp -m tcp --sport 21 -j ACCEPT
-A INPUT -p tcp -m tcp --sport 20 -j ACCEPT
-A INPUT -p tcp -m multiport --dports 20,21,50000:50400 -j ACCEPT

Если вам необходима возможность подключаться к серверу в пассивном режиме, то откройте командой файл:

vim /etc/sysconfig/iptables-config

И добавьте ip_conntrack_ftp в IPTABLES_MODULES=""

IPTABLES_MODULES="ip_conntrack_ftp"

 

Готово. Перезагрузите сервер и попробуйте подключиться к серверу по FTP для проверки.

Подключение по FTP к серверу без панели управления

В этом случае есть два варианта действий. Оба способа позволяют обеспечить возможность FTP-подключения к серверу, в том числе для отдельных пользователей к отдельным папкам: 

      1. Настройка подключения через sFTP
      2. Установка и настройка FTP-сервера

 

Настройка подключения через sFTP

По умолчанию sFTP-доступ к серверу уже настроен. Можно сразу подключиться через обычный FTP-клиент, например - FileZilla, использовав IP-адрес сервера, логин и пароль пользователя root и порт 22. Также можно создать дополнительных sFTP-пользователей с доступом только к отдельным папкам на сервере. Тем самым можно организовать доступ к файлам сайтов для нескольких пользователей.

 


Настройка безопасного протокола sFTP


 

Установка и настройка FTP - сервера

По умолчанию на серверах без панели управления FTP-сервер не установлен. Тем не менее, можно быстро установить его из штатных репозиториев операционной системы. Есть несколько распространённых FTP-серверов (proftpd, pure-ftpd), мы остановимся на одном из наиболее популярных, быстрых и надёжных — vsftpd.

 

vsftpd (Very Secure FTP Daemon) — FTP-сервер с возможностью шифрования передаваемых по протоколу FTP файлов. Благодаря этому повышается уровень безопасности — никто не сможет получить доступ к данным, которые вы загружаете на сервер, если их удастся перехватить. 

Установка и настройка vsftpd

vsftpd доступен для установки из штатных репозиториев во многих операционных системах семейства Linux.

Для начала установки необходимо подключиться к серверу по SSH под пользователем root. Способ установки может отличаться в зависимости от дистрибутива операционной системы:

Ubuntu и Debian

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

sudo apt-get update
sudo apt-get upgrade
sudo reboot

Теперь устанавливаем vsftpd:

sudo apt-get install vsftpd

Centos

Обновляем компоненты:

yum update
reboot
yum install vsftpd

 

После завершения установки нужно запустить FTP-сервер и добавить его в автозапуск — чтобы после перезагрузки сервера он включался автоматически:

systemctl start vsftpd
systemctl enable vsftpd

 

После завершения установки в директории /etc будет доступен конфигурационный файл vsftpd.conf, с помощью которого мы будем редактировать настройки. Чтобы в случае ошибки при его изменении мы имели возможность быстро восстановить значения по умолчанию, нужно создать его копию: 

cp /etc/vsftpd.conf /etc/vsftpd.conf.copy

 

В случае сбоя или при необходимости восстановления настроек будет достаточно удалить отредактированный файл и переименовать vsftpd.conf.copy в vsftpd.conf

Теперь откроем оригинальный конфигурационный файл с помощью любого консольного текстового редактора:

vi /etc/vsftpd.conf

** В качестве примера приведён консольный редактор vim. Для входа в режим редактирования на клавиатуре нажмите I. Для выхода из режима редактирования нажмите Esc. Для сохранения и выхода из файла введите сочетание :wq Для выхода без сохранения введите :q!

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

listen=YES

*Этот параметр позволяет включить FTP-сервер в режиме ожидания входящих подключений.

#listen_ipv6=YES

*Этот параметр отвечает за возможность подключения к серверу по FTP с IPv6-адресов. В большинстве случаев этот параметр не нужен, хотя и включен по умолчанию. Его необходимо отключить, поставив в начале строки символ «#».

local_umask=022

*Этот параметр отвечает за автоматическое назначение прав на загружаемые данные. Для папок при загрузке будут автоматически назначены права 755, для файлов — 644.

chroot_local_users=YES

*Этот параметр запрещает для FTP-пользователей доступ к директориям выше их домашней папки. То есть если у пользователя в качестве домашней папки установлена директория /var/www/user/sites/username, он сможет перемещаться и управлять файлами только в рамках папки username без возможности перейти на уровень выше.

ssl_enable=YES

*Этот параметр отвечает за шифрование FTP-соединения. В том же блоке можно указать пути к вашему сертификату и ключу — если вы не хотите использовать сгенерированные по умолчанию.

 

После изменения параметров сохраните файл, закройте редактор и перезапустите vsftpd командой:

systemctl restart vsftpd

 

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

systemctl status vsftpd

 

Если проблем нет, вы увидите статус active (running):

 

Создание FTP - пользователей: 

Перед тем, как приступить к созданию FTP-пользователей, важно учесть, как именно будет организована файловая структура ваших сайтов — чтобы в процессе правильно создать и настроить домашнюю папку пользователя. В частности, это необходимо для корректной работы параметра chroot_local_users=YES, который был задан на этапе настройки vsftpd.

К примеру структура каталогов:

В такой структуре пользователю username доступны только каталоги yoursite1.com/ и yoursite2.com/ — внутри них он может создавать и редактировать файлы и папки. Все каталоги выше принадлежат пользователю root или системным пользователям.

      1. Первым делом необходимо создать домашнюю папку нового пользователя. Если у вас уже создан каталог и к нему просто нужно настроить FTP-доступ, пропустите этот шаг. Переходим в папку, где будет расположена домашняя директория пользователя:
        cd /var/www/sites

        Создаём новую папку:

      2. Теперь нам нужно создать нового пользователя, назначив ему в качестве домашней директории созданную папку. Если вам нужно настроить доступ к другому каталогу, просто измените в команде путь /var/www/sites/username на свой.
        useradd -d /var/www/sites/username username
        Настроим пароль для нового пользователя:
        passwd username
        Система предложит ввести и подтвердить новый пароль. Для подтверждения ввода нажмите Enter.
      3. Теперь осталось создать папку с владельцем в лице нашего нового пользователя. Переходим в созданный каталог:
        cd username
        Создаём папку, куда новый пользователь сможет загружать свои файлы:
        mkdir example.com
      4. Настроим в качестве её владельца нашего пользователя username:
        chown username:username yoursite.com

На этом процесс настройки завершён. Осталось протестировать подключение через любой FTP-клиент, например, FileZilla. Для подключения указываем IP-адрес сервера, имя нашего созданного пользователя и его пароль. 

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

Если вы не активировали опцию ssl_enable=YES на этапе настройки, тогда клиент сообщит, что подключение небезопасно — данные не будут шифроваться.

В случае успешного подключения у вас откроется домашняя папка пользователя с каталогом под файлы.

Обратите внимание, что пользователь может работать только внутри директории yoursite.com/ Загрузка файлов или добавление папок в самой домашней директории (вне каталога yorsite.com/) будут недоступны.

  • 5 Пользователи считают это полезным
Помог ли вам данный ответ?

Похожие статьи

Кодировка сайта

Если у вашего сайта не отображаются латинские буквы, как в данном примере:То вам необходимо...

Создание и управление доменными именами на VPS и выделенных физических серверах

Мы рады сообщить, что теперь управлением DNS записями для Ваших доменов стало проще и доступнее....

Обновление phpmyadmin до последней версии

Мануал написан для тех, у кого установлена панель управления ISPmanager Lite и операцинная...

Конвертация в utf-8 не поддерживается на стороне сервера

У Вас выскакивает ошибка "Конвертация в UTF-8 не поддерживается на стороне сервера" при...

Ошибка: remote service dnsmgr return error. internal error

При добавлении или редактировании домена в панели управления ISPmanager или на бесплатном днс...

Powered by WHMCompleteSolution