Установи Linux! Стань свободным!
Онлайн всего: 4 | Посетители: 0 | Боты: 4
Дата 23.02.2026 Время: 10:47
Ваш IP: 216.73.216.43
Загрузка сервера: 1.03
old.ubuntu-desktop.ru - Настройка ProFTPd для хостинга - Сервер    Главная > Каталог статей > Сервер

Настройка ProFTPd для хостинга

В данной статье я попытаюсь просто и доступно описать установку и настройку ProFTPd, для предоставления ftp доступа к сайту для конкретного пользователя к определенному виртуальному хосту.

Такой пользователь может изменять файлы, закачивать новые на сайт, но только в пределах сайта к которому предоставлен ftp доступ.

Сервер Apache2 работает от имени www-data, у которого UserId=33, GroupId=33, соответственно наш пользователь должен обладать такими же правами.

Устанавливаем сервер  proftpd

sudo apt-get install proftpd

Открываем конфиг ProFTPd, по-умолчанию он располагается /etc/proftpd/proftpd.conf.

sudo gedit /etc/proftpd/proftpd.conf

Удаляем в нем все и вставляем весь текст показанный ниже:

# выключаем использование IP v6 за ненадобностью
 ServerType standalone
 UseIPv6 off

# DeferWelcome off
 DefaultServer on

# права, с которыми будут создаваться файлы и папки
 Umask 022

#ServerName "0.0.0.0" # Любое имя для ftp-сервера
 ServerIdent on "My FTP Server"
 ServerAdmin nik_user@mail.ru

# использование протокола ident (RFC 1413) для идентификации подслединившегося 
клиента; # рекомендуется отключить, все равно этот протокол никто больше не использует; # область действия - основной сервер, Global, VirtualHost IdentLookups off RootLogin off # запрещаем подключать от пользователя root # определять имя хоста клиента по IP адресу (желательно отключать для ускорения
доступа) UseReverseDNS off # Порт сервера Port 21 # из соображений безопасности можете поставить любой незанятый PassivePorts 49152 65534 #MasqueradeAddress None TimesGMT off # Против DDOS атаки, полезно для безопасности # максимальное число одновременно запускаемых процессов в режиме standalone MaxInstances 8 MaxLoginAttempts 3 MaxClientsPerHost 8 MaxClientsPerUser 8 MaxHostsPerUser 8 # Сообщение после успешного захода на сервер AccessGrantMsg "Welcome to Server" TimeoutLogin 20 TimeoutNoTransfer 1200 TimeoutIdle 1200 DisplayLogin welcome.msg DisplayChdir .message #Запрещаем заливать на сайт файлы начинающиеся с точки, полезно для безопасности DenyFilter *.*/ # директория, на которую устанавливается сервер # (сейчас указана домашняя директория подключенного пользователя) DefaultRoot ~ # Пользователь и группа, от которого работает сервер User nobody Group nogroup AuthUserFile /etc/proftpd/ftpd.passwd DirFakeUser off nobody DirFakeGroup off nobody DefaultTransferMode binary AllowForeignAddress off AllowRetrieveRestart on AllowStoreRestart on # Автоматическое удаление недогруженного файла. DeleteAbortedStores off TransferRate RETR 220 TransferRate STOR 250 TransferRate STOU 250 TransferRate APPE 250 SystemLog /var/log/secure RequireValidShell off <IfModule mod_tls.c> TLSEngine off TLSRequired off TLSVerifyClient off TLSProtocol SSLv23 TLSLog /var/log/proftpd_tls.log TLSRenegotiate required off </IfModule> <IfModule mod_ratio.c> # Количество попыток ввода пароль перед отсоединением MaxLoginAttempts 30 # Ограничить допустимый размер загружаемых файлов #MaxStoreFileSize 2 Gb # Ограничить допустимый размер скачиваемых файлов #MaxRetrieveFileSize 2 Gb # Логи TransferLog /var/log/proftpd/xferlog SystemLog /var/log/proftpd/proftpd.log Ratios off SaveRatios off RatioFile "/restricted/proftpd_ratios" RatioTempFile "/restricted/proftpd_ratios_temp" CwdRatioMsg "Please upload first!" FileRatioErrMsg "FileRatio limit exceeded, upload something first..." ByteRatioErrMsg "ByteRatio limit exceeded, upload something first..." LeechRatioMsg "Your ratio is unlimited." </IfModule> #VALID LOGINS Добавляем пользователей, которым разрешен доступ к серверу <Limit LOGIN> AllowUser ubuntu AllowUser name_user DenyALL </Limit> <Anonymous /var/www/ubuntu-desktop.ru> User ubuntu Group group1 AnonRequirePassword on MaxClients 10 "The server is full, hosting %m users" DisplayLogin welcome.msg <Limit LOGIN> Allow from all Deny from all </Limit> # Разрешить перезапись файлов AllowOverwrite off # разрешить перезаписывать существующие файлы, # область действия - server config, VirtualHost, Anonymous, Directory, Global,
.ftpaccess AllowOverwrite on <Limit LIST NLST STOR STOU APPE RETR RNFR RNTO DELE MKD XMKD SITE_MKDIR RMD
XRMD SITE_RMDIR SITE SITE_CHMOD SITE_CHGRP MTDM PWD XPWD SIZE STAT CWD XCWD
CDUP XCUP > AllowAll </Limit> <Limit NOTHING > DenyAll </Limit> </Anonymous>

<Limit LOGIN>Все настройки файла можно оставить как есть, нас интересуют настройки пользователя которому разрешен доступ к серверу:

AllowUser ubuntu
AllowUser name_user
DenyALL
</Limit>

и

<Anonymous /var/www/ubuntu-desktop.ru>
User ubuntu
Group group1
AnonRequirePassword on
MaxClients 10 "The server is full, hosting %m users"
DisplayLogin welcome.msg
<Limit LOGIN>
Allow from all
Deny from all
</Limit>

Как видно, я создал пользователя «ubuntu», задал ему пароль (см.ниже), указал сайт (ubuntu-desktop.ru) к которому разрешен ftp доступ.

Теперь приступим к созданию пользователя (пример) «ubuntu». Нам необходимо чтобы пользователь мог удалять, редактировать файлы. Пользователь должен иметь идентификатор 33, группу 33 и ограничен домашним каталогом сайта /var/www/ubuntu-desktop.ru.

Создаем пользователя:

sudo ftpasswd --passwd --file=/etc/proftpd/ftpd.passwd --name=ubuntu --uid=33 --gid=33 --home=/var/www/ubuntu-desktop.ru --shell=/bin/false

Далее придумайте пароль для нового пользователя.

После выполнения команды у вас появится файл /etc/proftpd/ftpd.passwd, в нем будут находится данные созданного пользователя.

632578623784678934926-650x414


Перезапускаем ftp:

sudo /etc/init.d/proftpd restart

Проверяем доступно ли содержимое сайта через веб-браузер:

В адресной строке набираем (пример): ftp://ubuntu-desktop.ru

Указываем имя пользователя и пароль.

764236978326738924

Как видите все получилось. Для редактирования и добавления файлов можно воспользоваться программой FileZilla.

FileZilla это полнофункциональный FTP-клиент с простой и удобной графической оболочкой.

Программа написана на C++ и использует библиотеку wxWidgets.

Возможности FileZilla:

  • Поддержка протоколов FTP, FTPS и SFTP
  • Поддержка
  • Более 40 языков интерфейса
  • Поддержка передачи и докачки больших (более 4 Гб) файлов
  • Простой и удобный менеджер сайтов, очередь передачи
  • Закладки
  • Поддержка Drag&Drop
  • Установка ограничений скорости
  • Фильтры имён файлов
  • Сравнение папок
  • Менеджер настройки сети
  • Редактирование файлов на сервере
  • Удержание соединения (Keep-alive)
  • Поддежка прокси-серверов для HTTP/1.1, SOCKS5 и FTP
  • Журналирование в файл
  • Синхронный обзор папок
  • Поиск по файлам на сервере
  • Поддержка вкладок позволяет подключаться к нескольким серверам одновременно

76943278678235678324

Установка программы:

sudo apt-get install filezilla

3782658734687342-650x536

72346786324876387-650x535

В пункте хост указываем имя сайта, далее имя пользователя созданного вами и его пароль, после чего нажимаем «Быстрое соединение».

Теперь в принципе пользователю доступен сайт через протокол передачи данных ftp. Но если у Вас все получилось сделать на локальном хосте, это не значит что доступ через ftp будет доступен за пределами Вашей сети (из Интернета).

Необходимо открыть 21 порт:

Открываем порт брандмауэра:
sudo ufw allow 21 
Далее необходимо сделать переброску портов («Правила NAT») абонентского термина (роутера), если сайты размещенные на Вашем сервере уже доступны в Интернете, то Вы знаете как это делать, ведь до этого Вам приходилось перебрасывать порт 80.
 
327496758234687
 
7342678632478-650x477
Рейтинг
<< Предыдущая статьяСледующая статья >>
  2017-08-11 08:28:40 | liman28 | Категория: Сервер | Просмотров: 70
Комментарии
E-mail (не будет опубликован)
Имя
Комментарий
Введите число с картинки:     
Случайные статьи

   ФИНАНСОВЫЙ МЕНЕДЖЕР WXBANKER — ПРОСТАЯ ПРОГРАММА ДЛЯ ВЕДЕНИЯ ЛИЧНЫХ ФИНАНСОВ
Финансовый менеджер wxBanker — простая программа для ведения личных финансов wxBanker позволяет легко поддерживать баланс бухгалтерских счетов. Используйте wxBanker для добавления, редактирования и удаления транзакций и счетов, выполнения денежных переводов, поиска транзакций и просмотра графика финансов во времени. Встроенный калькулятор делает вычисления быстрыми и простыми. Программа wxBanker доступна в…
  2017-08-09 07:35:03 | Категория: Офис
   APT-FAST — УТИЛИТА УСКОРЯЮЩАЯ ЗАГРУЗКУ НОВЫХ ПАКЕТОВ
Apt-fast — утилита позволяющая значительно ускорить загрузку новых пакетов используя для загрузки многопоточный режим загрузки. Apt-fast использует менеджеры загрузки axel и aria2. Пользоваться apt-fast также просто как и apt-get. Вы можете пользоваться всеми теми же командами что и для apt-get, просто замените в команде слово «get” на «fast”. Вот как выглядят наиболее распространенные команды: установка пакета:…
  2017-08-11 13:57:46 | Категория: Команды терминала
   УСТАНОВКА И НАСТРОЙКА ЯНДЕКС ДИСК В LINUX UBUNTU
В данной статье будет рассмотрена установка клиента и индикатора Яндекс.Диска в системный трей Ubuntu, которой значительно упростит использование Яндекс.Диска. Консольный клиент Яндекс.Диска для Linux позволяет вам управлять файлами на Диске без использования оконного интерфейса или программ, поддерживающих протокол WebDAV.Преимущества консольного клиента по сравнению с WebDAV-подключением: низкие требования…
  2017-08-11 17:28:34 | Категория: Интернет
   Tux Racer — трёхмерная компьютерная игра
Tux Racer — трёхмерная компьютерная игра, главным героем которой является пингвин Tux — талисман ядра операционной системы Linux. Игрок управляет Таксом (или одним из трёх других героев), который скользит на брюхе вниз по ледяно-снежному желобу собирая сельдь. Когда Такс скользит по льду, его скорость увеличивается, скольжение по снегу дает больше маневренности, а скальные участки…
  2017-08-02 09:49:33 | Категория: Игры
   ДИСК GOOGLE
Диск Google. Храните ваши файлы в Интернете – делитесь ими с друзьями и коллегами! Диск Google — облачное хранилище данных, принадлежащее компании Google Inc., позволяющее пользователям хранить свои данные на серверах в облаке и делиться ими с другими пользователями в Интернете. После активации заменяет собой Документы Google. В Диске Google предоставляется 15 гигабайт для бесплатного хранения данных. Если…
  2017-08-07 20:33:58 | Категория: Интернет

Вверх