Шрифт:
Интервал:
Закладка:
Кроме общих директив, сервер wu-ftpd имеет директивы, которые управляют правами доступа. Директивы прав доступа определяют, какие операции могут выполнять пользователи того или иного типа. Эти директивы перечислены в таблице 15.3.
Директивы прав доступа Таблица 15.3
Директива Назначение chmod yes | no типы_пользователей Разрешает или запрещает выполнять команду chmod для пользователей указанных типов. В качестве типов пользователей указываются ключевые слова anonymous, guest, real delete yes | no типы_пользователей Разрешает или запрещает выполнять команду delete для пользователей указанных типов overwrite yes | no типы_пользователей Разрешает или запрещает пользователям указанных типов перезаписывать файлы на сервере rename yes | no типы_пользователей Разрешает или запрещает пользователям указанных типов переименовывать файлы на сервере Password-check rfc822| trivial | none enforce | warn Задает уровень проверки пароля. При этом в качестве первого параметра указывается метод проверки пароля: ♦ none — отключает проверку паролей; ♦ trivial — все пароли должны обязательно содержать символ '@'; ♦ rfs822 — в качестве паролей должны указываться адреса электронной почты, задаваемые согласно стандарту RFC822 (рекомендую использовать именно его значение). Вторым параметром задается действие, которое должно производиться в тех случаях, когда пользователь введет неправильный пароль. Значение warn говорит о том, что пользователь просто будет проинформирован об ошибке в пароле и далее ему будет позволено заново зарегистрироваться на FTP-сервере. Если указать значение enforce, то пользователю будет выдано сообщение о неправильном пароле и ему в дальнейшем будет запрещен доступ к серверу upload yes | no типы_пользователей Разрешает или запрещает закачку файлов на сервер пользователям указанных типов Файл ftphosts — параметры доступа для пользователей с указанных узловФайл ftphosts используется для разрешения или запрещения доступа определенных пользователей с указанных узлов. Например, вы можете разрешить доступ пользователю admin только с компьютера admin.domain.ru и запретить со всех остальных. А для других пользователей разрешить доступ со всех компьютеров. Таким образом, в файле могут быть записи двух видов: разрешающие и запрещающие. Формат записей в файле ftphosts следующий:
allow | deny пользователь узел [узел...]
Разрешающая запись allow разрешает пользователю регистрироваться с узлов, указанных в списке, но запрещает регистрацию со всех остальных. Запись deny, наоборот, запрещает доступ с определенных узлов, но разрешает со всех остальных. В листинге 15.2 приведен пример файла ftphosts.
Листинг 15.2. Пример файла ftphosts
allow admin 192.168.1.1
deny user 192.168.1.2 192.168.1.3
Файл ftpusers — список локальных пользователей, которым запрещено пользоваться WU-FTPDФайл /etc/ftpusers содержит список локальных пользователей, которым запрещается обращение к серверу wu-ftpd. Эти пользователи не могут зарегистрироваться на сервере. При попытке регистрации будет выведено сообщение об ошибке Login Incorrect, даже если пользователь ввел правильный пароль.
Из соображений безопасности этот файл должен содержать хотя бы имена пользователей root, bin, nobody, daemon, news, uucp. Пустые строки, а также строки, начинающиеся с символа #, игнорируются. Полностью корректный с точки зрения безопасности файл представлен в листинге 15.3.
Листинг 15.3. Файл ftpusers
root
bin
adm
lp
sync
shutdown
halt
news
uucp
operator
games
nobody
Файл ftpservers — разные настройки ftp-сервера для различных узловПо умолчанию настройки wu-ftpd применяются ко всем клиентам, подключающимся к нему. Файл /etc/ftpservers позволяет задать режим, в котором для определенных узлов будут применяться свои индивидуальные настройки.
Файл /etc/ftpservers состоит из записей следующего вида:
IP-адрес(или имя узла) Каталог
Если какой-либо пользователь подключится к ftp-серверу с одного из указанных в файле узлов, то для него будут применяться конфигурационные файлы из соответствующего каталога. Например, если в файле присутствует запись 192.168.1.2 /etc/ftpd/user34, то при обращении клиента 192.168.1.2 для него будут использоваться конфигурационные файлы из каталога /etc/ftpd/user34.
Файл ftpconversions — форматы сжатияВ файле /etc/ftpconversions задаются форматы сжатия, разрешенные для использования во время сеанса FTP. Обращаю ваше внимание на то, что само сжатие передаваемых данных включается и выключается соответствующей директивой в файле ftpaccess. Стандартный файл ftpconversions представлен в листинге 15.4.
Листинг 15.4 Файл ftpconversions
:.Z :: :/bin/compress -d -с %s:T_REG|T_ASCII:O_UNCOMPRESS:UNCOMPRESS
: ::.Z :/bin/compress -c %s :T_REG:O_COMPRESS:COMPRESS
:.gz:: :/bin/gzip -cd %s :T_REG|T_ASCII:O_UNCOMPRESS:GUNZIP
: ::.gz :/bin/gzip -9 -c %s :T_REG:O_COMPRESS:GZIP
: ::.tar :/bin/tar -c -f - %s :T_REGIT_DIR:O_TAR:TAR
: ::.tar.Z :/bin/tar -c -Z -f - %s:T_REG|T_DIR:O_COMPRESS|O_TAR:TAR+COMPRESS
: ::.tar.gz:/bin/tar -e -z -f - %s:T_REG|T_DIR:O_COMPRESS|O_TAR:TAR+GZIP
Каждая запись этого файла состоит из восьми полей. Поля разделяются с помощью символа двоеточия. Эти поля содержат префиксы и постфиксы удаления и добавления, внешнюю команду, тип операции и описание.
Например, сжатый программой gzip файл должен иметь имя с суффиксом gz. Чтобы к имени файла был добавлен суффикс gz, запись в файле ftpconversions должна иметь постфикс gz.
Файл xferlog — журнал FTP-сервераВ файл xferlog записываются все транзакции, которые были произведены в ходе сеансов работы пользователей. С помощью ключей -о и -i сервера FTP можно выбрать тип транзакций, записываемых в журнал.
Рассмотрим листинг 11.7, в котором представлен фрагмент файла xferlog.
Листинг 15.5. Фрагмент файла xferlog
Wed Jan 9 11:49:35 2002 1 localhost.localdomain 1490
/home/den/vmware.html a _ о r den ftp 0 * с
Wed Jan 9 11:50:08 2002 1 localhost.localdomain 281
/home/den/w.out a _ о r den ftp 0 * с
Wed Jan 9 11:50:15 2002 1 localhost.localdomain 281
/home/den/w.out a _ i r den ftp 0 * с
Wed Jan 9 11:52:08 2002 1 localhost.localdomain 888
/home/den/ftphosts.html b _ i r den ftp 0 * с
Из первой записи видно, что пользователь den был зарегистрирован с удаленного узла localhost.localdomain. Начало передачи файла /home/den/vmware.html произошло в среду, 9 января 2002 года в 11:49. Общее время передачи — одна секунда. Общий объем переданной информации составляет 1490 байт.
Для передачи файла использовался режим ASCII (а), не было произведено никаких специальных операций (_). Файл vmware.html пользователь загружал с сервера, на что указывает направление передачи (о). Пользователь den является зарегистрированным пользователем системы (r). Символ g на этом месте означал бы гостевую регистрацию, а символ a — анонимную. Название службы, которая производила операцию — ftp.
Теперь рассмотрим четвертую запись. Тот же пользователь den передал на сервер файл ftphosts.html. Направление передачи — на сервер (i). Режим передачи — двоичный (b). Вторая и третья записи сообщают о загрузке с сервера и на сервер файла w.out в текстовом (а) режиме.
Остается только отметить, что файл xferlog используется обоими серверами FTP — wu-ftpd и ProFTPD.
15.2. Сервер ProFTP
15.2.1. Установка и запуск ProFTPD
Альтернативой, и, на мой взгляд, достаточно хорошей, серверу wu-ftpd является сервер ProFTPD. Он намного проще в конфигурировании, чем сервер wu-ftpd, и обладает достаточно гибкими возможностями. Для его установки достаточно установить пакет proftpd. Подобно серверу wu-ftpd, ProFTPD может запускаться автоматически при запуске системы или вызываться суперсервером при наличии запроса на установку соединения. Сервер ProFTPD может вызываться с ключами, указанными в табл. 15.4.
Параметры сервера ProFTPD Таблица 15.4
- Операционная система UNIX - Андрей Робачевский - Программное обеспечение
- Разработка приложений в среде Linux. Второе издание - Майкл Джонсон - Программное обеспечение
- Искусство программирования для Unix - Эрик Реймонд - Программное обеспечение
- Linux - Алексей Стахнов - Программное обеспечение
- Fedora 8 Руководство пользователя - Денис Колисниченко - Программное обеспечение
- Недокументированные и малоизвестные возможности Windows XP - Роман Клименко - Программное обеспечение
- Изучаем Windows Vista. Начали! - Дмитрий Донцов - Программное обеспечение
- Windows Vista - Виталий Леонтьев - Программное обеспечение
- Архитектура операционной системы UNIX - Морис Бах - Программное обеспечение
- Windows Vista. Трюки и эффекты - Юрий Зозуля - Программное обеспечение