# Справочное руководство по &kwuftpd;

## Введение

Операционная система Unix, быть может, лучше всего известна своими работающими серверами. Тем не менее, пользователям бывает трудно настраивать файлы, необходимые этим сервисам. В тоже время, многие дистрибьюторы обходят эти трудности, поставляя системы с откровенно небезопасными настройками.

&kwuftpd; - оболочка KDE для редактирования файла ftpaccess сервера wu-ftpd. &kwuftpd; былизначально написан для BeroFTPD 1.2.1 и был адаптирован для версии 2.6.1 wu-ftpd из RedHat Linux 7.0. Если вы используете более новую версию wu-ftpd с большими возможностями, вам нужно обновить &kwuftpd; (или исправить `ftpaccess` вручную), чтобы их использовать.

&kwuftpd; все еще бета; сделайте резервную копию вашего файла ftpaccess перед редактированием его &kwuftpd;.

&kwuftpd; был написан Bernhard Rosenkraenzer bero@redhat.com (c) 2000 &RedHat;, Inc.

### Ответственность

Помимо обычных отказов от ответственности, которые идут с программами (Мы не отвечаем за все плохое, что может случиться.), следует отметить, что &kwuftpd; управляет способностью пользователей соединяться с вашей системой, добавлять, удалять и изменять файлы. Вот что стоить иметь в виду:

- &kwuftpd; упрощает настройку защищенного сервера, но не гарантирует этого. Материалы по этому вопросу есть в книгах, на сайтах, и конечно, администраторы должны их изучить.

- Примеры, данные в этой документации предназначены показать работу &kwuftpd;. Это не рекомендации по безопасности и не должны использоваться как таковые.

- Сделайте резервную копию файла `/etc/ftpaccess` перед изменением его с помощью &kwuftpd;.

## Базовая настройка &FTP;

&kwuftpd; полезна на системе с сервером &FTP;. Настройка сервера не входит в этот документ, но если вкратце:

1. wu-ftpd или похожий сервер &FTP; должен быть установлен. Пакет anonftp также будет полезен для организации анонимного &FTP;.

2. Файл `/etc/inetd.conf` должен содержать строку типа:

       # ftp   stream  tcp nowait  root    /usr/sbin/tcpd  in.ftpd -l -a

   Уберите символ комментария # в начале строки. Если ваша система поставлена с уже раскомментированной строкой, примите это как предупреждение и закоментируйте все, что вам не нужно. Перезапустите`/etc/inetd.conf`. (Введите ``/etc/rc.d/init.d/inet restart`` в командной строке на Red Hat-подобных системах.)

## Использование &kwuftpd;

### Запуск &kwuftpd;

Для запуска &kwuftpd; выберите пункт Системные Настройка wu-ftpd из К-меню, или наберите ``kwuftpd`` в командной строке. Доступны стандартные опции &Qt; и &kde; и они могут быть показаны командой ``kwuftpd` `--all``.

### О пользователях &FTP;

&kwuftpd; часто предлагает выбрать один из трех типов пользователей:

Анонимный

- Для использования любым, кто хочет поключиться к серверу, эти пользователи входят как `ftp` или `anonymous` и вводят свой почтовый адрес в качестве пароля.

Гость

- Пользователи с &FTP;-доступом, прописанные в файле `/etc/ftpusers`, но не имеющие права полного входа в систему.

Реальный

- Пользователь с правом доступа в систему.

### Команды меню

#### Меню Файл

Файл Загрузить /etc/ftpaccess

- Открыть `/etc/ftpaccess`, стандартный файл настроек wu-ftpd, для редактирования.

Файл Загрузить другой файл

- Открыть другой файл для редактирования. Полезно, если вы хотите поэкспериментировать перед внесением изменений в `/etc/ftpaccess`.

Файл Сохранить /etc/ftpaccess

- Сохранить изменения в `/etc/ftpaccess`.

Файл Сохранить в другой файл

- Сохранить изменения в указанном файле.

Файл Выход

- Закрыть &kwuftpd;.

#### Меню Помощь

&help.menu.documentation;

### Классы пользователей

Панель Классов пользователей Панель Классов пользователей

Панель Классов пользователей

Эта панель позволяет вам создать классы пользователей для определенных IP адресов, или блоков адресов, и контролировать привилегии этих классов. Например, это позволит вам установить для анонимных или гостевых пользователей больше прав, чем для нормальных, если они зашли с определенных компьютеров.

Чтобы создать новый класс, нажмите кнопку Добавить класс и в показанном окне диалога, введите имя нового класса, уровень привилегий, который принадлежит классу (подробнее об этом см. ниже) и IP адреса для этого класса. Символ `*` может быть использован для задания блоков адресов. (Например, `127.0.0.*` включает всех локальных пользователей.). Когда закончите, нажмите OK.

Вернувшись в панель Классы пользователей вы можете выбрать и изменить его описание и поведение. IP также может быть изменен. Класс может быть определен включающим анонимных, гостевых и/или реальных пользователей с этого адреса. Галочка Автогруппировать в, заставит имена в классе быть принадлежащими к выбранной группе и даст им ее привилегии.

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

На рисунке реальный пользователь, входящий с 127.0.0.* автоматически группируется в jsinger, и в этом классе одновременно может работать только один пользователь.

### Каталоги

Панель Каталоги Панель Каталоги

Панель Каталоги

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

На рисунке анонимный пользователь видит файловую систему, корень которой - в `/home/ftp/pub`, в то время как гостевые пользователи имеют доступ по умолчанию. Вместо системного файла паролей используется специальный.

### Безопасность

Панель Безопасность Панель Безопасность

Панель Безопасность

Данная панель позволяет вам указать различные опции безопасности. Окно Недоступные позволяет указать файлы или каталоги, заблокированные от выгрузки. Нажмите кнопку Добавить и выберите файл, который будет блокирован. Выберите запись и нажмите Убрать, чтобы удалить файл из списка.

Число неправильных входов заставит соединение закрыться после указанного числа неправильных входов в систему.

Галочка Разрешить SITE GROUP позволит пользователям сменить группу, к которой они принадлежат, командой ``SITE` `GROUP``.

Право использовать команды `chmod`, `delete`, `overwrite`, `rename` и `umask` может быть расширено или запрещено для анонимных, гостевых и/или реальных пользователей.

От анонимных пользователей в качестве пароля ожидается ввод почтового адреса. Степень усиления контроля может управляться.

Нет

- Без проверки введенного пароля.

обычная

- Пароль должен содержать символ @.

RFC822

- Пароль должен быть в форме действительного адреса.

Если стоит галочка Усиленный, имена, провалившие тест, будут запрещены. В противном случае будет предупреждение.

На рисунке каталоги `/bin`, `/sbin` и файл `/etc/passwd` заблокированы от выгрузки пользователем. Соединение сбрасывается после 5 ошибок, ``SITE` `GROUP`` запрещена, команды запрещены анонимному пользователю и разрешены гостевому и реальному. Анонимные пользователи, вводящие не RFC-совместимый почтовый адрес, предупреждаются.

### Сообщения

Панель Сообщения Панель Сообщения

Панель Сообщения

Данная панель позволяет вам указать сообщение, которое будет показано вошедшему пользователю.

Выберите файл, который будет выведен при соединении (перед входом в систему). Некоторые особо старые &FTP; клиенты могут сбоить при его обработке.

Указанное здесь имя хоста будет показано при входе в систему и при обработке %L в других сообщениях.Если оно пустое, будет использовано реальное имя вашей машины.

Адрес электронной почты администратора , подставляемый вместо %E в сообщения.

Галочка заставит сообщения и файлы `README` показываться каждый раз, при каком-либо событии (описываются ниже). В противном случае, они будут показаны только в первый раз.

Нажмите кнопку Добавить сообщение, чтобы показать текст, который увидит пользователь. Вам будет предложено указать расположение текстового файла, а также указать будет ли он отображен при входе или при смене каталога, и будет ли он показан для всех классов пользователей или нет.

Точно также пользователь может быть уведомлен файлом `README` при входе в систему или смене каталога.

На рисунке, текст в `/home/ftp/welcome.txt` будет отображен присоединении. Имя хоста `camelot` и почтовый адрес администратора jsinger@leeta.net будут вставлены в сообщение, но сообщение или файлы `README` еще не определены.

### Журналирование

Панель Журналирование Панель Журналирование

Панель Журналирование

Эта панель позволяет указать, какой вид деятельности будет журналироваться (в файл `/var/log/xferlog`). Анонимные, гостевые и реальные пользователи могут иметь различные журналируемые события, включая выполнение команд, загрузку, выгрузку и нарушение безопасности (типа ошибок входа).

Галочка Перенаправить журнал в syslog пошлет записи протокола в системный журнал вместо журнала &FTP;.

Когда на сервер загружаются файлы, администратору может быть послано почтовое уведомление. Адрес отправителя `From:`, почтовый сервер и адрес администратора могут быть указаны.

На рисунке, все команды и передачи журналируются, так же как и нарушения безопасности реальными пользователями. О загрузке на сервер сигнализируется сообщением admin от Upload Notice через почтовый сервер по-умолчанию.

### Соотношения

Панель Соотношения Панель Соотношения

Панель Соотношения

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

Соотношение загрузки/выгрузки

- На пример, устанавливая соотношение 1:5 заставит пользователей загрузить 1 мегабайт на каждые 5 выгруженных мегабайт. Установка в оптимальное значение - это ключ к успеху для начинающих кул-хацкеров.

Лимит времени

- Позволяет пользователям соединяться на указанное время.

Лимит загрузки

- Устанавливает максимальное число байт, которые можно загрузить на сервер за сеанс.

Лимит скачивания

- Устанавливает максимальное число байт, которое можно скачать с сервера за один сеанс.

Файлы и каталоги могут быть освобождены от лимитов загрузки и скачивания.

На рисунке соотношения выключены, анонимным пользователям дано 15 минут и разрешено скачать 10 мегабайт за один раз.

### Загрузка

Панель Загрузка Панель Загрузка

Панель Загрузка

Данная панель позволяет указать, куда и как пользователям разрешено загружать файлы. Нажмите кнопку Добавить, чтобы установить новое правило, кнопка Редактировать для правки, и кнопка Удалить для удаления выбранного набора.

Каждый набор правил оперирует с указанным корневым каталогом и эффективен на указанный каталог загрузки. Каталог загрузки может быть глобализирован (например, `/home/ftp/upload/*` включает все содержимое `/home/ftp/upload`).

Загрузка может быть разрешена и запрещена. Могут быть установлены права владельца и группы создаваемых файлов. Возможность создания новых каталогов с уже существующими также может даваться или запрещаться.

### Виртуальные хосты

Панель Виртуальные хосты Панель Виртуальные хосты

Панель Виртуальные хосты

Для каждого адреса могут быть указаны следующие элементы:

Корневой каталог

- Это каталог, который входящие пользователи будут видеть в качестве корня файловой системы (`/`).

Вывеска

- Файл, содержание которого будет отображено при соединении с сервером. Расположение файла относительно указанного выше корневого каталога.

Журнал

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

Файл паролей

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

Файл теневых паролей

- Здесь может быть указан альтернативный файл теневых паролей. В противном случае, будет использован системный файл теневых паролей.

Имя хоста

- Имя хоста, высвечиваемое при входе, и вставленное как %L в файлы сообщений.

Электронный адрес администратора

- Электронный адрес, вставленный как %E в файлы сообщений.

Анонимный вход может быть позволен или запрещен.

Реальным пользователям можно разрешить или запретить доступ к виртуальному серверу. Конкретному пользователю также можно разрешить или запретить доступ.

На рисунке виртуальный узел `211.22.55.114` имеет файловую систему, с корнем в `/home/ftp/virtual` на реальной системе. Использует отдельные файлы паролей и теневых паролей в `/home/ftp`, отображаемое имя узла `ganesh`, адрес администратора: root, позволен анонимный вход и вход всем реальным пользователям.

## Авторские права и лицензирование

&kwuftpd;

Автор - Bernhard Rosenkraenzer bero@redhat.com, copyright 2000 &RedHat;, Inc.

Documentation copyright 2000 by Jonathan Singer jsinger@leeta.net.

Перевод на русский - Виталий Лопатин vitls@chat.ru

Редактор русского перевода - Григорий Мохин mok@kde.ru

&underFDL; &underGPL;

## Установка

&install.intro.documentation;

Отдельно &kwuftpd; - часть пакета kdeadmin, и должен быть откомпилирован и установлен, как показано в главном каталоге пакета. Новые версии kdeadmin могут быть взяты на ftp://ftp.kde.org/pub/.

&install.compile.documentation;

Вам также потребуется ftpd, который обработает сгенерированный файл ftpaccess. &kwuftpd; был написан для wu-ftpd 2.6.1 (ftp://ftp.wu-ftpd.org/pub/wu-ftpd/). Вы также можете использовать этот файл и с wu-ftpd 2.5.0, но не ожидайте, что все особенности будут работать.