Сервер новостей INN

Материал из RSU WiKi

Перейти к: навигация, поиск

Содержание

Задачи

В задачи входило установить и настроить usenet-сервер INN

Установка

В SLES установка пакета INN осуществляется через YAST. Скачать исходник можно по адресу: http://www.isc.org/index.pl?/sw/inn/

Описание конфигурационных файлов

Основополагающими для настройки news-сервера являются папки:

  • /etc/news
  • /var/lib/news

В первой находятся конфигурационные файлы, во второй - файл active, который содержит списки эхоконференций.

Итак, правим файл /etc/news/inn.conf:

mta: "/usr/sbin/sendmail -oi -oem %s" - оставляем по умолчанию, если только это не заведомо неверно
organization: "SAMPLE NEWS SERVER" - пишем название своей организации
pathnews: /usr/lib/news - путь к каталогу с установкой INN 
domain: example.com - полное доменное имя машины, на которую установлен INN
server: mail.example.com - имя хоста

Также необходимо проверить совпадение действительных путей и прописанных в разделе # Paths файла inn.conf

Следующим редактирум файл /etc/news/readers.conf. Этот файл отвечает за права пользователей INN - в нем указываются хосты или маски сетей, пользователи которых могут получать эхоконференции с данного новостного сервера:

auth "localhost" {
    hosts: "localhost, 127.0.0.1, stdin"
    default: "<localhost>"
} 
 
 auth "localnet" {
    hosts: "192.0.2.1/24"
    default: "<localnet>"
}
  
access "localhost" {
    users: "<localhost>"
    newsgroups: "*"
    access: RPA - права на "read/post ALL"
}

access "localnet" {
    users: "<localnet>"
    newsgroups: "*"
}

В файле /etc/news/incoming.conf указываются материнские news-сервера, от которых мы будем забирать внешнюю рассылку:

streaming:      true   \  
                        > здесь все нормально, меняем умолчания если только что-то не заведется. 
max-connections:8      /

peer ME {
  hostname: "localhost, 127.0.0.1" - обязательно для правильной работы сервера
}

peer news.example.net {
  hostname: "news.example.net" - имя материнского сервера новостей.
}

Также нужно помнить, что адрес хоста, на который ставим INN, должен быть в списках рассылки эхоконференций "кормящего" news-сервера. Для этого необходимо связаться с его администраторами.

Конфигурация демона innfeed, отвечающего за обмен статьями с другими новостными серверами, находится в файле /etc/news/innfeed.conf:

peer news.example.net {
        ip-name: news.example.net               
        max-connections: 10
}

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

Если для доступа к удаленным серверам новостей, с которых мы планируем забирать статьи, нужен пароль, то это указывается в файле /etc/news/passwd.nntp:

##   Format:
##   <host>:<name>:<pass>[:<style>]
##   <host>          Host this line is for.
##   <name>          Name to use to authenticate with
##   <pass>          Password to send, after sending name
##   <style>         Optional authentication style, defaults to "authinfo"

news.example.net::

В данном случае для доступа к серверу пароль не нужен - поля name и pass остаются пустыми.

/etc/news/newsfeeds - здесь указываем, какие статьи отправлять нашему фидеру, а какие не стоит (начинаются с "!")

news.example.net\
     :!junk,!control*,!local*\
     :Tf,Wnm:

Файл /var/lib/news/active. Этот файл содержит список групп новостей, которые принимает локальный сервер. Все статьи, опубликованные в группы новостей, которые не указаны в файле active отвергаются локальным сервером новостей.

С этих строк должен начинаться любой active-файл:

control 0000000000 0000000001 y
junk 0000000000 0000000001 y

Получить список рассылки вашего фидера можно, присоединившись к нему по telnet на порт 119. В ответ на приветствие сервера введите команду list.

Запуск сервера

В SLES пишем: insserv inn. После этого управление сервером осуществляется командой rcinn [start|restart|stop|status]

Лог

INN ведет лог событий. Основные файлы:

  • /var/log/news/news.notice
  • /var/log/news/news.crit
  • /var/log/news/news.err

Наиболее разрастающийся из них - news.notice. Cюда пишет innd о соединении с ним удаленных NNTP-хостов, демон nnrpd записывает сюда информацию об активности клиентов, в этом же файле информируют о своей работе программы ctlinnd, innxmit, rnews и др. Файл news.crit содержит сообщения о критических ошибках, требующих внимания от администратора сервера новостей. (Например, сервер INN не может открыть файл из-за неверных прав доступа; или здесь появится сообщение о гашении сервера с помощью ctlinnd и т.д.). Файл news.err содержит сообщения о фатальных ошибках сервера.

Всякое

Как быстро добавить группу в SLES 9:

su news
/usr/lib/news/bin/ctlinnd newgroup fido7.su.hardw.grounding m
exit
rcinn restart

Ссылки