Перейти к основному содержанию

Помощь

Настройка подключения к серверу по FTP

В статье будут описаны доступные способы для подключения к серверу и передачи файлов по FTP.

Настройка FTP на сервере с ISPmanager

Для подключения по FTP к серверу с установленной ISPmanager потребуется создать FTP-пользователя:

Зайдите в ISPmanager. Актуальные данные для доступа к панели продублированы в инструкции к серверу при условии, что после активации услуги пароль не был изменён. Перейти к инструкции вы можете в личном кабинете, в разделе «Товары» —  «Виртуальные серверы» —  выбрать нужный сервер —  кнопка  «Инструкция».

В разделе «ISPmanager — панель управления сервером» будут указаны данные для входа:

Перейдите в раздел FTP-пользователи и нажмите «Создать FTP-пользователя»:

В открывшейся вкладке потребуется:

  • ввести имя FTP-пользователя (будет использоваться в качестве логина),
  • выбрать владельца (пользователя, к сайтам которого вы хотите настроить доступ),
  • задать пароль (используйте строчные и прописные буквы, цифры, специальные символы (@, ?, %) и домашнюю директорию FTP-пользователя (она настраивается относительно домашней папки пользователя-владельца).

Теперь можете проверить подключение через специализированное приложение, называемое FTP-клиентом, например, FileZilla. Также популярны такие клиенты, как Total Commander, WinSCP, Cyberduck.

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

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

В случае успешного подключения отобразится список каталогов в домашней директории пользователя-владельца (ftp-user1). Все сайты размещены в подкаталоге www.

Как разместить файлы на сервере

Удобнее всего выложить файлы сайта на сервер при помощи меню Менеджер файлов в ISPmanager. Директория, в которую нужно поместить файлы:

/var/www/имя_пользователя_владельца/data/www/имя_сайта

Настройка FTP без ISPmanager

Все Unix-подобные системы имеют по умолчанию одного пользователя с полными правами доступа и управления — суперпользователя root. Если на сервер не была установлена панель управления, передать файлы можно двумя способами. 

Первый способ. Подключение по SFTP

SFTP — это протокол передачи данных, который выполняет операции с файлами поверх SSH-протокола. При этом шифрование производится с двух сторон клиентской и серверной. Поэтому он считается наиболее защищенным по сравнению с FTP. При подключении по протоколу FTP шифрование не производится. 

SFTP-доступ уже настроен в автоматическом режиме при активации услуги. Выполнить подключение можно через любой FTP-клиент, использовав IP-адрес сервера, актуальный пароль от пользователя root и порт 22. Если после активации услуги вы не меняли пароль, то сможете найти его в инструкции к серверу. 

Второй способ. Подключение через FTP

Этот способ предполагает установку FTP-сервера и создание FTP-пользователя для подключения с его помощью. Обратите внимание, что FTP-подключение под root запрещено в целях безопасности. 

Для подключения по FTP выполните настройки описанные ниже.

Подключитесь по SSH к серверу, например, при помощи клиента Putty из-под ОС Windows.

При подключении введите ваши учетные данные (пользователь root и пароль). Обратите внимание, что пароль при вводе не отображается в командной строке.

Если не установлен proftpd, то выполните команду для его установки:

apt install proftpd — ОС Debian/Ubuntu

yum install proftpd — ОС CentOS

Нажмите «Y» при запросе подтверждения закачки файлов.

Если установка завершена успешно, в командой строке появится запись «Complete!».

Далее добавляем службу proftpd в автозапуск сервера:

chkconfig proftpd on —  ОС Centos

systemctl enable proftpd — ОС Debian/Ubuntu

Для запуска используется команда:

systemctl start proftpd

Для запуска службы ftp:

Также после проверить доступность можно с помощью команды:

ftp 127.0.0.1

где 127.0.0.1- это IP-адрес вашего сервера. Если подключение прошло успешно, значит демон установлен и работает.

После установки потребуется выполнить настройки для корректной работы, файл для настроек этой программы имеет название proftpd.conf.

Его расположение для разных ОС следующее:

/etc/proftpd/proftpd.conf - ОС Debian/Ubuntu (deb 11, ubuntu 20.04)

/etc/proftpd.conf - ОС CentOS

Добавьте разрешающее правило для фаервола. В зависимости от используемой утилиты добавьте и сохраните правила.

Iptables

iptables -I INPUT -p tcp -m tcp --dport 21 -j ACCEPT (Debian 11 +)

service iptables save (Debian- error Unknown command verb iptables.)

utf

ufw allow 21/tcp

или

ufw allow ftp

firewalld:

firewall-cmd --permanent --zone=public --add-port=21/tcp

firewall-cmd --reload

Создайте новых пользователей для работы по FTP

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

echo '/bin/false' >> /etc/shells

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

echo '/bin/sh' >> /etc/shells

Для создания нового пользователя выполните команду:

useradd user3 -d /home/user3 -m

где user3 — имя нового пользователя, /home/user3 — домашний каталог,  опция -m используется для создания нового домашнего каталога.

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

passwd user3

Запретить пользователю ftp-запись в директорию вы можете от имени пользователя root при помощи команды:

chmod 555 /home/user3 

где user3 — имя пользователя, /home/user3 — директория, куда запрещается запись.

Создайте директорию в домашней папке пользователя для записи командой:

mkdir /home/user3/upload

Наделите пользователя user3 правами записи в папку /home/user3/upload командой:

chown user3:user3 /home/user3/upload

Настройка FTP для Bitrix GT

Для установки используйте команду:

yum install -y pure-ftpd

Для добавления в автозагрузку службы:

systemctl enable pure-ftpd

Переименуем файл текущей конфигурации FTP,  чтобы при необходимости можно было бы вернуть ее обратно:

mv /etc/pure-ftpd/pure-ftpd.conf{,.back}

После создаем новый конфигурационный файл /etc/pure-ftpd/pure-ftpd.conf и вносим в него следующие строки:

AutoRename                  no

CustomerProof               yes

Daemonize                   yes

PassivePortRange            30000 50000

PIDFile                     /var/run/pure-ftpd.pid

PureDB                      /etc/pure-ftpd/pureftpd.pdb


ChrootEveryone              yes

BrokenClientsCompatibility  yes

DisplayDotFiles             yes

ProhibitDotFilesWrite       no

ProhibitDotFilesRead        no

Umask                       113:002

MinUID                      48

MaxIdleTime                 30

MaxClientsNumber            10

MaxClientsPerIP             5

VerboseLog                  yes

DontResolve                 yes

SyslogFacility              ftp

AltLog                      clf:/var/log/pureftpd.log


NoAnonymous                 yes

AnonymousOnly               no

AllowUserFXP                no

AllowAnonymousFXP           no

Описание параметров конфигурационного файла можно посмотреть в разделе с документацией на официальном сайте проекта Pure-FTPd.

В брандмауэре открываем диапазон портов 20-21 и 30000-50000:

firewall-cmd --permanent --add-port=20-21/tcp

firewall-cmd --permanent --add-port=30000-50000/tcp

firewall-cmd --reload

Запускаем FTP-сервер с помощью команды:

systemctl start pure-ftpd

Проверяем статус службы:

systemctl status pure-ftpd

Если по неопределенным причинам служба не запустилась, первым делом проверьте, что вы корректно скопировали конфигурационный файл из статьи. 

Добавляем FTP-пользователя:

pure-pw useradd bitrixone -u 48 -g 48 -D /var/www/html

pure-pw mkdb

Возможно, что домашняя директория вашего сайта находится не в директории /var/www/html. Если это так, то команде pure-pw нужно указать корректный путь. Попробуйте с помощью команды ls найти в директории /etc/nginx/bx/site_enabled найти виртуальный хост с именем вашего сайта:

ls /etc/nginx/bx/site_enabled

Выполните grep с выражением root на файл виртуального хоста:

grep root /etc/nginx/bx/site_enabled/bitrix-gt.fvds.ru.conf

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

pure-pw mkdb

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

Настройка FTP на Bitrix VM

Для работы FTP установим ProFTPd сервер:

yum install proftpd

Затем добавляем FTP в автозапуск сервера:

chkconfig proftpd on

Запускаем службу:

service proftpd start

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

Сначала необходимо узнать id группы и пользователя, под которым работает Apache. Напишите команду:

id bitrix

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

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

Добавляем пользователя с найденным id 

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

Задаем новому пользователю пароль:

passwd userone

Настраиваем фаерволл. Для этого введите следующие команды:

iptables -I INPUT -p tcp -m tcp --sport 21 -j ACCEPT
iptables -I INPUT -p tcp -m tcp --sport 20 -j ACCEPT
iptables -I INPUT -p tcp -m multiport --dports 20,21,35000:35999 -j ACCEPT

Для сохранения правил, выполните команду:

service iptables save

Этими командами мы разрешили в фаерволле подключения по нужным портам, далее открываем конфигурационный файл FTP:

vi /etc/proftpd.conf

В самый конец файла добавляем строку:

PassivePorts 35000 35999

Перезапускаем службу командой:

service proftpd restart

Для возможности работы в пассивном режиме необходимо отредактировать конфигурационный файл iptables:

vi /etc/sysconfig/iptables-config

И добавляем в кавычки в строке IPTABLES_MODULES="" параметр ip_conntrack_ftp, в конечном результате строка должна выглядеть так:

IPTABLES_MODULES="ip_conntrack_ftp"

Теперь подключение должно осуществляться с данными, которые вы задали выше (имя пользователя, пароль) по IP-адресу вашего сервера.

Если у вас возникнут трудности с самостоятельным выполнением настроек рекомендуем обратится с запросом в службу поддержки.

Назад к категории