IZONE- http://www.izcity.com/- бесплатный софт, вэб-сервисы, ресурсы для раскрутки, свежие номера журнала "Internet Zone".

Виртуальность

В статье пойдет речь о конфигурировании виртуальных HTTP- и FTP-серверов. В качестве HTTP сервера будет рассмотрен Apache, а создание виртуального FTP-сервера будет происходить с использованием FTP-серверов wu-ftp и ProFTP.

Денис Колесниченко

Виртуальный FTP-сервер

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

Настройка виртуального FTP-узла очень похожа на настройку виртуального Web-сервера - даже используется та же директива VirtualHost. Linux может поддерживать несколько Ip-адресов, благодаря чему мы можем создать виртуальные узлы. Дополнительные IP-адреса, которыми вы располагаете можно использоваться виртуальными узлами. При конфигурировании виртуальных FTP-узлов каждому виртуальному узлу нужно присвоить отдельный IP-адрес.

Для конфигурирования виртуального FTP в файл proftpd.conf нужно добавить директиву VirtualHost, содержащую IP-адрес.

<VirtualHost 192.168.1.5>
 ServerName "Virtual FTP Server"
</VirtualHost>

В блок VirtualHost можно другие вставить директивы, например, директиву Anonymous, которая создаст гостевой узел. Можно также задать каталог или порт.

Пример 2.1.


<VirtualHost ftp.library.com>
 ServerName "Online library"
 MaxClients 15
 MaxLoginAttempts 1
 DeferWelcome on
 <Limit LOGIN>
 Allow from 192.168.1
 Deny from all
 </Limit>

 <Limit WRITE>
 AllowUser libadmin
 DenyAll
 </Limit>

 <Anonymous /var/ftp/library/books>
 User library
 Group library
 AnonRequirePassword on

 <Anonymous /var/ftp/library>
 User ftp
 Group ftp
 UserAlias anonymous ftp
 </Anonymous>
</VirtualHost>

В примере 2.1 приведена конфигурация виртуального сервера ftp.library.com. В директиве VirtualHost используется доменное имя, которое должно быть прописано в сервере DNS. IP-адрес должен указывать на узел сети, на котором запущен демон proftpd. В конфигурации 2.1 также конфигурируются две анонимных учетных записи - library и ftp. Причем учетная запись library требует ввода пароля при регистрации. Пароль должен совпадать с паролем того пользователя, который запустил демон. Доступ к виртуальному серверу разрешен только для нашей подсети (192.168.1.0). Записывать данные на сервер может только пользователь libadmin.

Директивы конфигурации сервера ProFTP

Директива Описание
AccessGrantMsg message Ответное сообщение, которое будет отправлено пользователю в случае его регистрации или получения анонимного доступа. Символы %u будут заменены на имя пользователя, которое он ввел при регистрации.
Allow from all | host | network [,host | network[, ...]] Используется внутри блока Limit. Ограничивает доступ к серверу (а именно разрешает доступ). По умолчанию allow from all
AllowAll Разрешает доступ к блокам Directory, Anonymous, Limit
AllowForeignAddress on | off Разрешает клиенту указывать при соединении соединения адрес, который не соответствует ему. По умолчанию off. Может использоваться в блоках VirtualHost, Anonymous, <Global>
AllowGroup group_list Разрешает доступ определенным группам. Используется в блоке Limit
AllowUser user_list Разрешает доступ определенным группам. Используется в блоке Limit
AnonRequirePassword on | off Требует пароль при анонимной регистрации. Пароль должен совпадать с паролем того пользователя, который запустил демон. По умолчанию опция выключена.
<Anonymous directory> Создает анонимную учетную запись, directory - корневой каталог анонимного сервера.
AuthGroupFile path Позволяет указать путь к альтернативному файлу group. По умолчанию используется файл /etc/group
AuthUserFile path Указывает альтернативный файл passwd
Bind address Разрешает привязку дополнительного IP-адреса к основному или виртуальному хосту.
DefaultRoot directory Задает корневой каталог по умолчанию
Deny from all | host | network Запрещает доступ к серверу. Блок Limit
DenyAll Запрещает анонимным пользователям доступ к объектам, указанным в блоке Limit
DenyUser user_list Запрещает доступ определенным пользователям
<Directory> path Используется в VirtualHost, Anonymous для того, чтобы определить особенные параметры доступа к каталогу и его подкаталогам
DisplayFirstChdir filename Текстовый файл filename будет выводиться, когда пользователь впервые за время сеанса войдет в данный каталог. Используется в VirtualHost, Directory, Anonymous
DisplayLogin filename Этот файл будет отображен, когда пользователь зарегистрируется
<Global> Используется для задания параметров, которые будут использоваться как основным, так и всеми виртуальными серверами
<Limit command> Ограничение на выполнение данной FTP-команды, например LOGIN, WRITE
MaxClients number | none | message Ограничение на количество клиентов. Message будет отображено, если пользователю будет отказано в доступе. Блоки Anonymous, Global
MaxLoginAttempts Максимальное количество попыток зарегистрироваться. По умолчанию 3. Блоки VirtualHost, Global
Order allow, deny | deny, allow Порядок выполнения директив Allow и Deny в блоке Limit
PersistentPassword on | off При значении on будут использованы системные файлы /etc/passwd и /etc/group, несмотря на то, что командой chroot корневой каталог был изменен.
RequireValidShell on | off Разрешает или запрещает регистрацию при использовании оболочек (shells), которые не указаны в файле /etc/shells
ServerAdmin email Определяет email администратора сервера.
ServerType Определяет режим работы сервера standalone (по умолчанию) или inetd. В первом случае сервер будет запускаться автоматически из стартовых сценариев системы, во втором - его будет запускать сервер inetd при попытке соединения.
TimeoutIdle seconds Время в секундах, в течение которого пользователь имеет право не проявить активности. По умолчанию 60 (1 минута).
User username Имя пользователя, присвоенное демону ProFTP
UserAlias Alias User Создает псевдоним (alias) для пользователя (user)
<VirtualHost address> Создает виртуальный сервер

Организация виртуальных FTP-узлов с помощью wu-ftp

По сравнению с демоном ProFTP, демон wu-ftp имеет не столь богатые возможности в конфигурировании и поддержке виртуальных узлов.

Поддержку виртуальных узлов можно включить командой virtual в файле конфигурации wu-ftp /etc/ftpaccess. virtual address Данная команда разрешает использование виртуального FTP-узла.

 

<<Назад

 

 

Источник - SoftТерра, http://www.softerra.ru

 


Copyright © "Internet Zone", http://www.izcity.com/, info@izcity.com