mmaxsim.ucoz.ua
Меню сайта
Категории раздела
Ubuntu [69]
Ubuntu
DLE [7]
баги. фиксы и тд
Windows [6]
eyeOS [3]
FreeBSD [5]
FreeBSD
Linux [0]
VMware ESXi [7]
Amazon kindle [0]
Debian [4]
Trimax TR-2012HD [1]
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
Главная » 2010 » Август » 26 » Установка и настройка ftp-сервера (ubuntu & proftpd)
22:46
Установка и настройка ftp-сервера (ubuntu & proftpd)
Задача: установить фтп-сервер и настроить доступ из интернета.
ОС - ubuntu-sever 8.04 (только консоль).

Примечание: "donet" - это мой логин, важно заменить его на собственный

Устанавливаю пакет proftpd:
Код:
#aptitude install proftpd
Перед установке потянулись еще три зависимости, согласился.
При установке пакет спрашивает о способе запуска: самостоятельно или через inetd?
Я выбираю "самостоятельно".
Затем открываю файл /etc/shells:
Код:
#nano /etc/shells
добавляю в него одну строку:
/bin/false
И создаю в /HOME каталоге папку FTP-shared:
Код:
#mkdir /home/FTP-shared
После этого создаю пользователя с именем userftp:
Код:
#useradd userftp -p parol -d /home/FTP-shared -s /bin/false
где вместо "parol" - ввожу слово или фразу в качестве пароля
В папке FTP-shared создаю две дополнительные папки
Код:
#mkdir /home/FTP-shared/public 
#mkdir /home/FTP-shared/upload
и даю нужные права созданным папкам:
Код:
#chmod 755 /home/FTP-shared
#chmod 755 /home/FTP-shared/public
#chmod 777 /home/FTP-shared/upload
После этого переименовываю имеющийся конфигурационный файл proftpd.conf и создаю новый:
Код:
mv /etc/proftpd/proftpd.conf /etc/proftpd/proftpd.conf.old
nano /etc/proftpd/proftpd.conf
добавив в него следующие строки:
# отключаю протокол
UseIPv6 off

AllowOverwrite on
AuthAliasOnly on

# Здесь присваивается alias пользователю (я присвоил имя donet)
UserAlias donet userftp

ServerName "server"
ServerType standalone
DeferWelcome on

MultilineRFC2228 on
DefaultServer on
ShowSymlinks off

TimeoutNoTransfer 600
TimeoutStalled 100
TimeoutIdle 2200

DisplayChdir .message
ListOptions "-l"

RequireValidShell off

TimeoutLogin 20

RootLogin off

# пути для логов
ExtendedLog /var/log/ftp.log
TransferLog /var/log/xferlog
SystemLog /var/log/syslog.log

#DenyFilter \*.*/

# Я не использую файл /etc/ftpusers (здесь вводим имена пользователей, для ограничения их доступа)
UseFtpUsers off

# Allow to restart a download
AllowStoreRestart on

# Стандартный порт для фтп 21, для повышения безопасности можно выбрать другой (произвольный):
Port 21

# повышение безопасности
MaxInstances 8

# пользователь и группа
User nobody
Group nogroup

# Umask 022 ограничение на создание файлов и папок
Umask 022 022

PersistentPasswd off

MaxClients 8 "Достигнут предел на количество клиентов"
MaxClientsPerHost 8 "Достигнут предел на количество клиентов с Вашего хоста"
MaxClientsPerUser 8 "Достигнут предел на количество подключений (%m)"
MaxHostsPerUser 8 "Больше нельзя"

# вывод приветствия после успешного входа
AccessGrantMsg "Добро пожаловать!!!"
# идентификация
ServerIdent on "Мой домашний сервер"

# делаем /home/FTP-shared папку домашней
DefaultRoot /home/FTP-shared

# запрещаем выходить пользователям за пределы домашней папки (строго рекомендуется)
DefaultRoot ~

MaxLoginAttempts 5 "Количество попыток входа исчерпано - придется подождать, ничего не поделаешь, безопасность превыше всего"

#VALID LOGINS
<Limit LOGIN>
AllowUser userftp
DenyALL
</Limit>

<Directory /home/FTP-shared>
Umask 022 022
AllowOverwrite off
<Limit MKD STOR DELE XMKD RNRF RNTO RMD XRMD>
DenyAll
</Limit>
</Directory>

<Directory /home/FTP-shared/public/*>
Umask 022 022
AllowOverwrite off
<Limit MKD STOR DELE XMKD RNEF RNTO RMD XRMD>
DenyAll
</Limit>
</Directory>

<Directory> /home/FTP-shared/upload/>
Umask 022 022
AllowOverwrite on
<Limit READ RMD DELE>
DenyAll
</Limit>

<Limit STOR CWD MKD>
AllowAll
</Limit>
</Directory>

# # анонимный доступ
#<Anonymous /папка/для/доступа>
# User userftp
# Group nogroup
# UserAlias anonymous userftp
# MaxClients 8 "Извините, максимум %m пользователей - попробуйте подключиться позже"
# DisplayChdir .message
#
# <Directory *>
# <Limit WRITE>
# DenyAll
# </Limit>
# </Directory>
#</Anonymous>
Все, настройка закончена, я буду иметь доступ к фтп-серверу с параметрами доступа:
user (пользователь): donet
password (пароль): parol (тот, что я присвоил для userftp)
Если нужно сделать анонимный доступ, следует закомментировать обе секции для donet и раскомментировать секцию для анонима
Теперь осталось только запустить сервер с измененными параметрами (он уже запущен, но с параметрами по умолчанию):
Код:
#/etc/init.d/proftpd restart
Для проверки синтаксиса созданного конфиг-файла можно выполнить
Код:
#proftpd -td5
Что бы узнать, кто подключен к фтп-серверу в данный момент использую команду ftptop (клавиша t меняет отображение, q - выход), можно также использовать команду ftpwho
В итоге я получил фтп-сервер с двумя папками, одна из них (public) доступна только на чтение, а другая (upload) - на запись
Полезные советы:
Если нужно подключить какую-либо папку или партицию к фтп-серверу (например, проверить работу только что созданного фтп-сервера) без редактирования конфига пригодится команда:
Код:
#mount -o bind /здесь/путь/папки/что/я/хочу/расшарить/ /home/FTP-shared/public
или с доступом на запись:
Код:
#mount -o bind /здесь/путь/папки/что/я/хочу/расшарить/ /home/FTP-shared/upload
Таким образом можно в срочном порядке временно подключить папку или диск и потом отмонтировать командой:
Код:
#umount /home/FTP-shared/public
или:
Код:
#umount /home/FTP-shared/upload
Для постоянного доступа к нужным папкам я подключил их посредством fstab.
Рекомендую предварительно сделать бэкап файла fstab:
Код:
#cp /etc/fstab /etc/fstab.old
Открыть файл /etc/fstab
Код:
#nano /etc/fstab
и добавить нужные пути:
/здесь/путь/папки/что/я/хочу/расшарить /home/FTP-shared/public none bind 0 0
Теперь даже при рестарте сервера (компьютера) информация будет доступна, но только в локальной сети
Оригинал
Категория: Ubuntu | Просмотров: 1764 | Добавил: Maxs | Рейтинг: 0.0/0
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Форма входа
Поиск
Календарь
«  Август 2010  »
ПнВтСрЧтПтСбВс
      1
2345678
9101112131415
16171819202122
23242526272829
3031
Архив записей
Друзья сайта
  • Официальный блог
  • Сообщество uCoz
  • FAQ по системе
  • Инструкции для uCoz
  • Copyright MyCorp © 2017