Чтение онлайн

ЖАНРЫ

Стахнов Алексей Александрович

Шрифт:

Рассмотрим теперь более современные интерфейсы подготовки почтовых сообщений bml и elm. Обе эти программы подготовки почты работают в режиме полноэкранных интерфейсов.

Почтовые клиенты

Сегодня существует несколько десятков почтовых клиентов – простейшие текстовые, сложные текстовые, графические и даже Web-клиенты. Трудно охватить все разнообразие, поэтому приведем примеры нескольких почтовых клиентов. Для настройки всех почтовых клиентов необходимо знать ряд параметров:

• логин пользователя;

• пароль пользователя;

• адрес SMTP-сервера;

• порт SMTP-сервера;

• адрес POP3-сервера;

• порт POP3-сервера

Или те же параметры IMАР-сервера.

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

mail

Одна из первых программ – почтовых клиентов. Не блещет красотой интерфейса (его просто нет), достаточно примитивна, зато не занимает много места и поэтому присутствует практически на любом хосте. Представление о программе mail можно получить из рис. 18.1.

Рис. 18.1. Почтовый клиент mail

Pine

Один из самых «навороченных» текстовых почтовых клиентов, который так же позволяет работать с сообщениями новостей (news). Удобный, приятный в использовании интерфейс. Внешний вид программы pine

изображен на рис. 18.2.

Рис. 18.2. Почтовый клиент pine

Mozilla

Аналог Netscape Communicator. Достаточно устойчивая и надежная почтовая программа. Является частью программного комплекса Mozilla – Web-браузер, почтовый клиент, клиент чата. Почтовый клиент Mozilla представлен на рис. 18.3.

Рис. 18.3. Почтовый клиент Mozilla

Balsa

Стандартный почтовый клиент GNOME. Понятный и удобный интерфейс (рис. 18.4). Могут быть некоторые проблемы с русификацией.

Рис. 18.4. Почтовый клиент Balsa

Stuphead

Модификация почтового клиента, написанного японским программистом, сделанная компанией ALT Linux. Пока получается достаточно неплохо и с русским языком проблем нет (рис. 18.5).

Рис. 18.5. Почтовый клиент Stuphead

Evolution

Попытка программистов создать нечто подобное Microsoft Outlook – почтовый клиент (рис. 18.6), органайзер (рис. 18.7), дневник и записную книжку в одном комплекте. Получился довольно «увесистый» программный пакет.

Рис. 18.6. Почтовый клиент Evolution

Рис. 18.7. Почтовый клиент Evolution – планировщик встреч

Kmail

Очень хороший почтовый клиент (рис. 18.8). Хорошо понимает различные кодировки, удобный и понятный интерфейс. Является стандартным почтовым клиентом для KDE.

Рис. 18.8. Почтовый клиент Kmail

Ссылки

• www.citforum.ra/internet/servers/ – Павел Храмцов. Организация и администрирование почтовых и файловых серверов Internet. Центр Информационных Технологий.

• Соответствующие HOWTO (см. гл. 13):

– Linux Mail-Queue mini-HOWTO;

– Sendmail+ UUCP HOWTO;

– Sendmail address rewriting mini-HOWTO.

Глава 19 Web-cepвep Apache

Для создания Web-сервера (HTTP-сервера) в мире Linux в основном используется бесплатный (лицензия GNU) Web-сервер Apache. По статистическим данным до недавнего времени более пятидесяти процентов Web-серверов в Сети были построены на базе сервера Apache.

Чем же привлекателен этот сервер? Во-первых, большое количество возможностей – использование CGI-скриптов, шифрования, доступ по паролю, перекодирование страниц "на лету", поддержка виртуальных хостов и многое другое. Во-вторых, малая требовательность к ресурсам и большая производительность. В-третьих, многоплатформенность – Apache есть для Linux, для различных клонов UNIX, для Windows. В-четвертых, он бесплатный и с открытым исходным кодом. Список можно продолжать. Конечно, есть и недостатки, к примеру, некоторые сложности с конфигурированием. Но в целом – этот сервер не зря получил столь большую популярность.

В качестве альтернативы для Linux-платформы в последнее время выдвинулся Web-сервер TUX, который использует особенности ядра Linux, что позволило резко увеличить количество обрабатываемых запросов за единицу времени. Однако у этого сервера есть несколько минусов, в том числе:

• платформозависимость;

• неустоявшийся код;

• мало дополнительных возможностей по сравнению с Apache.

Далее мы рассмотрим конфигурирование сервера. Существует так называемый "Русский Apache" – адаптированный для русскоязычной аудитории. Мы, конечно, коснемся этого вопроса, но в целом будем рассматривать стандартный Apache.

Конфигурация

Установка сервера для дистрибутивов, использующих rpm-пакеты, не составляет особого труда – необходимо скачать нужный пакет и произвести установку сервера командой

rpm -I имя_пакета

С конфигурированием труднее. Мы рассмотрим только наиболее распространенные директивы и их параметры, поскольку полный перечень слишком большой. Если вы производите переконфигурирование при рабочем сервере Apache, вам необходимо заставить сервер перечитать конфигурационные файлы. Сервер перечитывает конфигурационные файлы при запуске или при получении сигнала – hup или – uSRi. Если сервер находится в рабочем состоянии, то при изменении конфигурации его рекомендуется перезапустить командой kin – usri, поскольку в этом случае текущие соединения не закрываются принудительно и завершаются обычным образом, а следующие клиенты работают уже с новыми конфигурационными файлами.

Конфигурация сервера задается в файлах httpd.conf, srm.conf, access.conf и. htaccess. Файл httpd.conf предназначен для общей конфигурации сервера, srm.conf содержит описание доступных ресурсов, a access.conf – права доступа к ресурсам. Однако в современных версиях сервера любая директива конфигурации может лежать в любом из этих файлов. Сейчас de-facto все директивы конфигурации содержатся в файле httpd.conf.

Файлы. htaccess могут находиться в каталогах и переопределять права доступа и другие параметры данных каталогов. Некоторые модули могут иметь свои отдельные файлы конфигурации (например, mod_charset требует файлы, хранящие таблицы перекодировки).

Используемые обозначения

Ниже показаны обозначения, используемые при описании параметров конфигурации сервера:

• S – директива действует на поведение сервера целиком;

• V – действует, если запрос касается данного виртуального хоста;

• D – определяет свойства только данного каталога;

• A – определяет свойства только данного каталога.

Права доступа и свойства объекта

Права доступа к данному каталогу и его свойства определяются следующими директивами.

• DA allow from {host}

Определяет, с каких хостов разрешен доступ к данному каталогу:

– all– для всех;

– доменное имя – с тех хостов, имя которых заканчивается этой строкой;

– полный IP-адрес;

– частичный IP-адрес —1,2 или 3 байта IP-адреса;

– a.b.c.d/e.f.g.h – сеть/сетевая маска;

– a.b.c.d/nnn – сеть/подсеть.

• DA allow from env=имя_переменной

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

• D AllowOverride {None | All | AuthConfig | Filelnfo | Indexes | Limit | Options}

Определяет, какие директивы из. htaccess в данном каталоге могут перекрывать конфигурацию сервера.

• D AuthName домен_авторизации

Определяет, какой домен авторизации клиент должен использовать при определении имени и пароля.

• DA deny from {host}

Определяет, с каких адресов запрещен доступ к данному каталогу:

– all– для всех;

– доменное имя – с тех хостов, имя которых заканчивается этой строкой;

– полный IP-адрес;

– частичный IP-адрес —1,2 или 3 байта IP-адреса;

– a.b.c.d/e.f.g.h – сеть/сетевая маска;

– a.b.c.d/nnn – сеть/подсеть.

• DA deny from env=имя_переменной

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

• SV <Directory имя_каталога> … </Directory>

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

• SV <DirectoryMatch регулярное_выражение> … </DirectoryMatch>

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

• SV DocumentRoot путь

Определяет, где находится корневой каталог документов сервера или виртуального сервера.

• SVDA ErrorDocument error-code document

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

• SVA <Files имя_файла> … </Files>

Внутри пары тэгов определяются права и свойства файлов. Может находиться внутри секции Directory

или. htaccess.

• SVA <FilesMatch имя_файла> … </FilesMatch>

Внутри пары тэгов определяются права и свойства файлов, в качестве имен используется регулярное выражение. Может находиться внутри секции Directory или. htaccess.

• SVDA CLimit {метод}> … </Limit>

Эта пара тэгов для группы директив, управляющих доступом. Методы – GET, POST, PUT, DELETE, CONNECT или OPTIONS.

• SV <Location URL>.. </Location>

Пара тэгов для определения свойств и прав доступа для данного URL.

• SV <LocationMatch URL> … </LocationMatch>

Пара тэгов для определения свойств и прав доступа для данного URL (регулярное выражение).

• SVDA Options [+|-]option …

Определяет возможности сервера в данном каталоге:

– ALL – все кроме MultiView;

– ExecCGi – разрешается выполнение CGI;

– FoiiowSymLinks – разрешено ходить по символьным ссылкам;

– includes – использовать SSI (Server Side Include);

– includesnoexec – использовать SSI, кроме exec и include CGI;

– indexes – генерировать список содержимого каталога, если отсутствует файл index.html;

– Muitiviews – определять представление ресурса в зависимости от предпочтений клиента;

– SymLinksifOwnerMatch – следовать по символьным ссылкам, только если владелец целевого файла совпадает с владельцем ссылки.

• DA order option

Определяет очередность, в которой применяются директивы allow и deny:

– deny, allow – первой применяются директивы deny, затем allow (начальное состояние – доступ разрешен);

– allow, deny – первой применяются директивы allow, затем deny (начальное состояние – запрещено);

– mutual-failure – доступ только с тех хостов, которые перечислены в allow и не перечислены в deny.

• DA require entity-name entity entity…

Какой пользователь может иметь доступ к каталогу:

– user {userid} – только пользователи с данными именами;

– group {group-name} – только пользователи из данной группы;

– valid-user – любой аутентифицированный пользователь.

• DA satisfy [all|any]

Если для ограничения доступа используется логин/пароль и IP-адрес, то сервер будет требовать соответствия обоих критериев (ail) или любого из них (any). По умолчанию – all.

Общие характеристики сервера

Общие характеристики сервера определяются следующими директивами.

• SV ErrorLog filename | syslog: facility

Определяет, куда выводить сообщения об ошибках.

• SV Group группа

Определяет, с правами какой группы будет обрабатываться запрос.

• SVD HostNameLookups on | off | double

Указывает, определять ли имя клиента по его IP-адресу.

• SVDA cifDefine [!]parameter-name> … </IfDefine>

Условная конфигурация, в зависимости, определен параметр или нет.

• SVDA cifModule [!]module-name> … </IfModulee>

Условная конфигурация, в зависимости, включен модуль в состав сервера или нет.

• S Include имя_файла

Вставить содержимое файла в состав конфигурационного файла в данном месте.

• S KeepAlive on | off

Обслуживать несколько запросов, не прерывая TCP-соединения с клиентом.

• SV LogLevel emerg | alert | crit | error | warn | notice | info | debug

Определяет, что писать в журнал ошибок.

• S MaxClients число

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

• S MaxKeepAliveRequests число

Определяет, максимальное количество запросов.

• S MaxRequestsPerChild число

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

• S MaxSpareServers число

Определяет максимальное число процессов, не осуществляющих в данный момент соединения.

• S MinSpareServers число

Определяет минимальное число процессов, не осуществляющих в данный момент соединения.

• S Port номер_порта

Определяет, по какому порту производится соединение (по умолчанию – 80-й порт).

• SV RLimitCPU soft-limit max-resource-limit

Задает максимальное число секунд CPU для любого процесса. Оба параметра могут быть числом или словом max.

• SV RlimitMEM soft-limit max-resource-limit

Задает максимальное число байтов, которое может использовать каждый процесс. Оба параметра могут быть числом или словом max.

• SV RlimitNPROC soft-limit max-resource-limit

Задает максимальное число процессов, которое может запустить каждый пользователь. Оба параметра могут быть числом или словом max.

• SV ServerAdmin email-address

Электронный адрес администратора Web-cepвepa.

• SV ServerName имя

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

• S ServerRoot полное-имя-каталога

Указывает место, где лежат все файлы сервера по умолчанию.

• SVDA ServerSignature Off | On | Email

Определяет, какую информацию включать в конце документов, генерируемых сервером:

– off – отсутствие информации;

– on – имя сервера и версия;

– EMail – имя сервера, версия и почтовый адрес администратора.

• S Server-Tokens Minimal | OS | Full

Определяет, что сервер сообщает о себе в заголовке server;

• S ServerType standalone | initd

Определяет тип сервера – постоянно находящийся в оперативной памяти или вызываемый демоном initd.

• S StartServers number

Определяет, сколько дочерних процессов запускать при начальном старте сервера.

• S TimeOut секунд

Количество секунд, определяющее тайм-аут.

• SVDA UseCanonicalName on|off

Используется при генерации URL, ссылающихся на этот же сервер:

– On – использовать ИМЯ, определенное В ServerName и Port;

– off – использовать параметры из запроса пользователя.

• SV User uid

Определяет, с правами какого пользователя будет работать сервер.

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

Общие характеристики виртуальных серверов определяются следующими директивами.

• S NameVirtualHost addr[: port]

Задает пару соответствия виртуальный хост – адрес/порт.

• V ServerAlias hostl host2 …

Задает альтернативные имена для виртуального хоста.

• V ServerPath путь

Все запросы, которые начинаются с путь, будут обслуживаться этим виртуальным сервером.

• S <VirtualHost {адрес[: порт]}> … </VirtualHost>

Пара тэгов определяет описание виртуального сервера. Адрес и порт определяют адрес, по которому он будет отзываться. Внутри используются любые директивы с признаком V.

Преобразование адресов

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

• SV Alias URL dirname-filename

Запрос, начинающийся с url, будет отображен на файл, начинающийся с dirname-filename.

• SV AliasMatch регулярное_выражение dirname-filename

Аналогична директиве Alias, но сравнение производится в соответствии с регулярным выражением.

• SV ScriptAlias url-path directory-filename

Аналогична директиве Alias, но дополнительно пометить каталог как содержащий CGI.

• SV ScriptAliasMatch regex directory-filename

Аналогична директиве AliasMatch, но дополнительно пометить каталог как содержащий CGI.

Преобразование HTTP-заголовков

Преобразование HTTP-заголовков определяется следующими директивами.

• SVDA Metafiles on/off

Включить/выключить преобразование для данного каталога.

• SVDA MetaDir directory-name

Определяет имя каталога, в котором лежат метафайлы.

• SVDA MetaSuffix suffix

Определяет суффикс, который добавляется к имени файла, чтобы найти метафайл для него.

• SVDA ExpiresActive on|off

Определяет, посылать ли заголовок Expire (срок хранения документа в кэше).

• SVDA Header unset header

Предписывает удалить заголовок.

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

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

• DA AuthGroupFile filename

Определяет имя файла, в котором хранится список групп пользователей.

• DA AuthUserFile filename

Определяет имя файла, в котором хранится список пользователей.

• D AuthType [Basic | Digest]

Определяет тип аутентификации.

• DA AuthAuthoritative on | off

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

• DA AuthDBMGroupFile filename

Аналогична AuthGroupFile, но использует dbm.

• DA AuthDBMUserFile filename

Аналогична AuthUserFile, но использует dbm.

Индекс каталога

Индекс каталога определяется следующими директивами.

• SVDA AddAlt string file file…

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

• SVDA AddDescription string file file…

Определяет текстовое описание файла.

• SVDA Addlcon icon name name …

Определяет, какую картинку показать для файла, соответствующего name.

• SVDA Defaultlcon url

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

• SVDA DirectoryIndex local-url local-url …

Поделиться с друзьями: