comp.os.linux
. Изменив порядок следования записей на обратный, вы разрешите передачу всех групп, так как более общее выражение comp.os.*
переопределит более конкретное выражение !comp.os.linux
.
•
. В данном поле задается один или несколько флагов; эти флаги ограничивают типы сообщений, которые могут быть переданы на удаленный узел. Например, выражение <
ограничивает набор передаваемых сообщений теми, размер которых меньше указанного, а выражение G
указывает на то, что сообщение, направленное в несколько групп, передается только в том случае, если количество групп не превышает указанное. Описания всех флагов можно найти в справочной системе.
•
. Значение этого поля зависит от типа передаваемых данных. Обычно это имя файла, который содержит информацию, предназначенную для передачи на удаленный узел. В ряде случаев параметр не указывается. В файле newsfeeds
, поставляемом в составе пакета, находится много закомментированных записей, которые могут быть использованы в качестве примеров.
Файл newsfeeds
управляет созданием файла, который должен быть передан другому серверу. Информация, заданная в файле /etc/news/nntpsend.ctl
, определяет порядок взаимодействия INN с этим сервером. Подобно newsfeeds
, файл nntpsend.ctl
содержит записи, состоящие из нескольких полей, разделенных двоеточиями. Формат записи приведен ниже.
Значение в поле
должно совпадать со значением, заданным в одноименном поле файла newsfeeds
, а
— это реальное имя узла. Поле
позволяет ограничить объем данных, передаваемых в течение одного сеанса обмена; например, значение 2m
ограничивает объем данных двумя мегабайтами. Последнее поле содержит необязательные параметры, которые могут передаваться программе innxmit
, выполняющей реальную передачу данных. Сведения об этих параметрах можно найти в справочной системе.
Содержимое рассмотренных выше конфигурационных файлов вам придется менять, если вы собираетесь предоставлять материалы групп другим серверам или получать новости у них. Для того чтобы ваш сервер работал эффективно, серверы, поставляющие вам группы новостей, должны получать у вас сообщения, отправленные вашими пользователями. Без этого сообщения ваших пользователей будут доступны только в пределах локального сервера, а пользователи Internet не получат их. Таким образом, даже в том случае, когда вы лишь получаете группы новостей с внешнего сервера, вы должны предусмотреть в конфигурационном файле возможность передачи сообщений в эти группы.
Сервер INN может управлять доступом со стороны других серверов и клиентов. Основной демон, innd
, принимает обращения от внешних серверов, предоставляющих материалы групп новостей, и от других программ, входящих в состав пакета INN. Несмотря на то что innd
также принимает обращения от клиентов, он практически сразу перенаправляет их другой программе. Поэтому в конфигурационном файле /etc/news/incoming.conf
, который управляет установлением соединений с innd
, указаны только локальный компьютер и серверы, выполняющие роль поставщиков новостей.
Атрибуты и их значения, задаваемые в файле incoming.conf
, представлены в виде
. Атрибуты могут быть объединены в записи (создаваемые с помощью ключевого слова peer
); каждая запись описывает отдельный компьютер. (Глобальные атрибуты и их значения не включаются в записи.) Записи, в свою очередь, могут объединяться в группы. Для определения границ как записи, так и группы используются фигурные скобки. Пример файла incoming.conf
для сервера, который получает материалы групп с одного сервера новостей, приведен в листинге 12.1.
Листинг 12.1. Пример файла incoming.conf
# Глобальные установки
streaming: true
max-connections: 50
# Allow NNTP posting from localhost
peer ME {
hostname: 'localhost, 127.0.0.1'
}
# Разрешение на передачу групп fiveroomco.com.
peer fiveroom {
hostname : news.f iveroomco.com
patterns: *,!threeroomco.*
}
Наиболее важным является ключ hostname
. Он задет имя узла, которому разрешено устанавливать соединение с данным сервером. Чтобы определить список групп новостей, которые могут быть переданы, используется ключ patterns
; при указании имен групп используются те же соглашения, что и при формировании файла newsfeeds
. По умолчанию сервер принимает все группы новостей, предлагаемые поставщиком. Другие ключи описаны в справочной системе, на страницах, посвященных incoming.conf
.
Возможно, вы захотите осуществлять проверку пользователей на право доступа к вашему серверу. Поскольку innd
привлекает к решению этой задачи другую программу, необходимые установки выполняются в файле /etc/news/nnrp.access
. Каждая строка этого файла состоит из пяти полей, разделенных двоеточиями:
Назначение каждого поля описано ниже.
•
. В этом поле указывается имя или IP-адрес узла. В составе имени может использоваться символ *
, определяющий групповую операцию. Так, например, выражение *.threeroomco. com
описывает всех клиентов в пределах домена threeroomco. com
. При указании IP-адреса можно задавать также маску подсети в виде IP- адрес/маска подсети, например 172.20.0.0/16.
•
. В этом поле может содержаться одна или несколько следующих опций: R
(чтение сообщений разрешено), P
(передача сообщений разрешена), N
(клиент может использовать команду NEWNEWS
) и L
(клиент может передавать сообщения даже в ту группу, в которые не могут посылать статьи локальные пользователи). Последние две опции переопределяют глобальные установки для конкретного клиента.
•
. Данное поле позволяет ограничить доступ к серверу отдельных пользователей. Если в поле содержится имя, то, перед тем, как доступ будет разрешен, выполняется аутентификация этого пользователя. Символ +
указывает на то, что сервер должен предпринять попытку аутентификации с использованием базы паролей Linux. Следует заметить, что данная опция часто не работает, особенно в тех случаях, когда в системе применяется 'затененный' файл паролей. Если вы оставите это и следующее поле пустыми, аутентификация осуществляться не будет.