В FIDO ПО ТРЕБОВАНИЮ.

версия 1.1

Обещал я как-то рассказать про проблему настройки клиентского софта (программного обеспечения) для пойнтов (fido-end-users). У многих все еще остаются вопросы по настройке своего клиентского комплекта программ. Попробую еще разок пролить свет на сей темный угол.

Я сейчас использую связку bforce + hpt + GoldEd. Но это не означает, что надо поступать точно также. Честно говоря, такой набор уже малость приносит дискомфорт. Например, GoldEd временами не очень разумно ведет себя в терминалах xterm и ему подобных.

Про выбор ПО можно говорить бесконечно. Кто-то будет уверять, что этот рассказ не имеет права на существование, потому что пропагандирует не unix-way подход, другие, возможно, будут мне благодарны за те крохи информации, которые они смогут здесь найти. Спорить я не собираюсь. Уверяю вас, мне сейчас удобнее использовать именно ту схему, про которую здесь расскажу.

Сначала стоит обмолвиться об моей идеологии размещения программ. Все собираю (если это возможно) с опцией --prefix=/opt/название_программы-версия. Затем, делаю символические линки на /usr/local структуру. Например:

$ ls -l /usr/local/bin/bforce 
lrwxrwxrwx    1 root     root           26 Авг  2 22:00 /usr/local/bin/bforce
-> /opt/ftn/bforce/bin/bforce

Это мне дает возможность не городить rpm пакеты, и в тоже время держать систему более менее в разумном порядке. Если что-то хочется деинсталлировать, достаточно удалить /opt/удаляемый_софт и почистить /usr/local от "мертвых" линков.

Так что не пугайтесь, если где-то увидите странные пути. :)

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

Кстати, пора привести список нужных нам программ:

  • bforce-0.22.7 - программа дозвонки
  • fidoconfig-0.10c
    hpt-0.9.7d
    huskybse-0.1b
    smapi-2.0.0
    sqpack-1.1.0b - программы обработки и хранения почты
  • gps114-7 - программа для работы с почтой GoldEd 1.1.4-7

Предположим, что настройки будут лежать в каталоге (папке) /etc/ftn.

ls -l /etc/ftn
итого 20
drwxr-xr-x    2 den      root         4096 Авг  2 21:57 bforce
-rw-rw----    1 den      den          2930 Авг  2 23:16 config
drwxr-xr-x    5 den      root         4096 Авг  2 23:12 golded
-rw-r--r--    1 den      den          1417 Окт 26  1998 outaltkoi8
-rw-r--r--    1 den      den          1559 Окт 26  1998 outkoi8alt

В директории /etc/ftn/bforce располагаются настройки программы-звонильщика, в /etc/ftn/golded - настройки программы-читальщика GoldEd.
Файлам outaltkoi8 и outkoi8alt место где-нибудь в /usr/local/share.. они не содержат никаких настраиваемых параметров. Они нужны лишь для перекодировки писем из кодировки koi8-r в cp866 и обратно.
В файл /etc/ftn/config включены настройки пакета hpt.

ПРИМЕЧАНИЕ: Как вы могли заметить, все файлы принадлежат мне. Я могу это себе позволить, как единственному и неповторимому пользователю. Идеологически правильнее нужно было создать группу (например, ftn или fido), и включить себя в ее ряды. Вы вольны поступать как пожелаете.

Настройка дозвонщика bforce

Структура каталога с настройками bforce:

$ ls -1 /etc/ftn/bforce
bforce.conf                     - основной файл настроек
bforce.passwd                   - файл с паролями
bforce.subst                    - файл, описывающий куда и когда можно звонить
freq.aliases                    - эти файлы потребуются, когда у вас возникнет
freq.dirs                       желание отдавать FREQ. 

Особо сильно усердствовать в настройках bforce не следует. Все достаточно приятно описано прямо в файле конфигурации. Надо лишь внимательно читать про те параметры, которые собираетесь настраивать.

Приведу лишь основные моменты:

--- bforce.conf ---

address 2:5028/52.999@fidonet   # наш адрес

log_file_daemon /var/log/bforce/bf-daemon
log_file /var/log/bforce/bf-log
debug_file /var/log/bforce/bf-debug
                                # здесь мы ожидаем увидеть логи (журналы
                                # службы bforce)

nodial_flag /etc/nodial         # иногда проще поднять флаг,
                                # чем аппаратно выключить модем
                                
inbound_directory (Protected) /var/spool/ftn/pin
                                # ящик для входящих пакетов по парольному линку

inbound_directory /var/spool/ftn/in
                                # ящик для не парольных линков

outbound_directory /var/spool/ftn/out
                                # исходящая почта.

amiga_outbound_directory /var/spool/ftn/aout
                                # здесь мы будем поднимать poll-флаг

nodelist_directory /var/spool/ftn/ndl
                                # папка с нодлистами

modem_port /dev/ttyS1:115200    # мой модем висит на COM2

modem_dial_prefix ATDP          # моя АТС не понимает тональный набор.

modem_stat_command AT&V1|       # так я смотрю статистику на Acorp 33600
                                # для Вашего модема эта строка будет иной

nodelist pnt052.ndl     2:5028/52.*
nodelist pnt5028.ndl    2:5028/*.*
phone_translate 7-0852-

system_name Super-Puper-My-BBS
location Yaroslavl, Zavolga     # правильнее было бы Yaroslavl, Russia.. :)
sysop_name Nasha Svetlost'      # Имя, Фамилия, отпечатки пальцев
phone 7-0852-private            # можно и телефончик свой указать

--- bforce.conf end ---
--- bforce.passwd ---

passwd 2:5028/52 secret         # пароль для связи с Боссом.
                                # если у вас еше нет пойнта на 
                                # станции Босса, лучше никакой
                                # пароль не вписывать.

--- bforce.passwd end ---
--- bforce.subst ---

override 2:5028/52 Phone 328683 Worktime 19:00-7:30 \
            Hidden Phone 328444 Flags CM

--- bforce.subst end ---

На mainline (328683) лучше звонить с 7-и вечера до пол восьмого утра, на hidden - можно и круглосуточно.

ВНИМАНИЕ: Прежде чем звонить, телефоны стоит уточнить.

ПРИМЕЧАНИЕ: 2:5028/52 в силу перенагруженности больше не в состоянии принимать новых пойнтов. Обращайтесь к 2:5028/61, 2:5028/63. Контактные телефоны можно найти в нодлисте 5028.

ПРИМЕЧАНИЕ_2: 2:5028 - это Ярославская область.

Настройка hpt-пакета.

Сам по себе комплект hpt дает не самое разумное решение для нашей проблемы. Но он работает, и это нас устраивает.
Итак, посмотрим его конфигурационный файл.

--- config ---
Name Super-Puper-My-BBS
Location Yaroslavl, Zavolga
Sysop Nasha Svetlost'

LogLevels 456789

Address 2:5028/52.999

Unpack  "unzip  -j -Loqq $a -d $p" 0 504b0304
Pack  zip zip -9 -j -q $a $f

Link Milice_BBS
Aka 2:5028/52
Password secret
AllowEmptyPktPwd on
Level 100
LinkGrp C
AccessGrp A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,1,2,3,4,5,6,7,8,9,0
EchoMailFlavour Direct
AutoAreaCreate on
AutoAreaCreateDefaults -p 14 -dupeCheck move -dupeHistory 11
AutoAreaCreateFile /var/spool/ftn/areas
AutoFileCreate on
AutoFileCreateDefaults -d "New FileEcho"
AutoFileCreateFile /var/spool/ftn/fileareas
forwardRequests on
Packer zip
Route direct 2:5028/52 2:*
RouteFile direct 2:5028/52 2:*

include /var/spool/ftn/areas
include /var/spool/ftn/fileareas

Inbound         /var/spool/ftn/in/
ProtInbound     /var/spool/ftn/pin/
tempInbound     /var/spool/ftn/pin/tmp/
LocalInbound    /var/spool/ftn/in/local/
Outbound        /var/spool/ftn/out/
tempOutbound    /var/spool/ftn/out/tmp/
MsgBaseDir      /var/spool/ftn/msgb
FileAreaBaseDir /var/spool/ftn/fileareasb

intab           /etc/ftn/outaltkoi8
outtab          /etc/ftn/outkoi8alt

echotosslog     /var/log/ftn/echotoss.log
importlog       /var/log/ftn/import.log

LinkWithImportLog kill

logFileDir      /var/log/ftn/
DupeHistoryDir  /var/spool/ftn/msgb/dupes
NodelistDir     /var/spool/ftn/ndl

NetmailArea NetmailArea /var/spool/ftn/msgb/netmail -b msg
BadArea     BadArea     /var/spool/ftn/msgb/bad -b Squish
DupeArea    DupeArea    /var/spool/ftn/msgb/dupe -b Squish

LocalArea carbonArea       /var/spool/ftn/msgb/carbonArea  -b Squish

CarbonTo Nasha Svetlost'
CarbonArea carbonArea

ReportTo my.robot
--- config end ---

Для тех, кто уже имел удовольствие настраивать t-mail & co. ничего необычного в этом файле не найдут.

Настройка редактора GoldEd так же тривиальна. Рассматривать ее не будем. В Сети и так достаточно трактатов по этому поводу.

Как вы могли заметить, много ссылок идет на /var/log и /var/spool/ftn.

Спул

Вся обрабатываемая почта будет лежать в /var/spool/ftn

Структура директории /var/spool/ftn:

$ ls -l /var/spool/ftn
drwxr-xr-x    2 den      root         4096 Ноя  6 23:29 aout
-rw-rw-r--    1 den      den          7310 Авг 14 17:13 areas
drwxr-xr-x    2 den      den          4096 Авг  2 23:37 bforce
-rw-rw-r--    1 den      den             0 Июл 15 23:56 fileareas
drwxr-xr-x    2 den      root         4096 Авг  2 23:16 fileareasb
-rw-------    1 den      den         15465 Ноя  6 23:29 history
drwxr-xr-x    3 den      root         4096 Авг  2 23:15 in
drwxr-xr-x    4 den      root         8192 Ноя  6 18:53 msgb
drwxr-xr-x    2 den      root         4096 Авг  2 23:28 ndl
drwxr-xr-x    3 den      root         4096 Ноя  6 23:29 out
drwxr-xr-x    3 den      root         4096 Ноя  6 23:29 pin

Отметим некоторые интересные для нас подкаталоги.

  • /var/spool/ftn/msgb - здесь мы скоро найдем базу golded. То есть базу, содержащую все наши письма.
  • /var/spool/ftn/ndl - здесь лежат пойнт- и нод- листы. Файлы, содержащие адреса наших возможных адресатов.
  • /var/spool/ftn/out - папка исходящих пакетов
  • /var/spool/ftn/pin - папка входящих пакетов.

Все письма ходят в виде пакетов.. Про технологии обмена почтой в ftn-средах, и, в частности, в ФИДО лучше поговорить как-нибудь в другой раз.

Вот как примерно может выглядеть /var/spool на работающей системе.

$ tree /var/spool/ftn
.
|-- aout                # здесь мы поднимаем флаг дозвонки
|-- areas               # файл описывающий наши любимые эхоконференции
|-- bforce              # служебная папка для bforce
|   `-- 2.5028.52.0.sts
|-- fileareas           # 
|-- fileareasb
|-- history
|-- in
|   `-- local
|-- msgb                # база наших писем (squish)
|   |-- 1.sqd
|   |-- 1.sqi
|   |-- 1.sql
|   |-- 1072.compnews.sqd
|   |-- 1072.compnews.sqi
|   |-- 1072.compnews.sql
...
|   |-- carbonArea.sqd
|   |-- carbonArea.sqi
|   |-- carbonArea.sql
|   |-- commonplace.sqd
|   |-- commonplace.sqi
|   |-- commonplace.sql
|   |-- dupe.sqd
|   |-- dupe.sqi
|   |-- dupes
|   |   |-- 1.dpd
|   |   |-- 1072.compnews.dpd
...
|   |-- my.robot.sqd
|   |-- my.robot.sqi
|   |-- my.robot.sql
|   |-- netmail                 # Мои письма (netmail), формат msg
|   |   |-- 1.msg
|   |   |-- 10.msg
...
|   |-- xsu.cellular.sqd
|   |-- xsu.cellular.sqi
|   `-- xsu.cellular.sql
|-- ndl                         # скомпилированные нод- и пойнт листы
|   |-- goldnode.gxa
|   |-- goldnode.gxl
|   |-- goldnode.gxn
|   |-- nodelist.004
|   |-- pnt052.ndl
|   |-- pnt052.ndl.index
|   |-- pnt5028.ndl
|   `-- pnt5028.ndl.index
|-- out                         # бокс исходящей почты
|   `-- tmp
`-- pin                         # бокс входящей почты
    `-- tmp

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

Журнальные файлы (логи)

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

$ ls -1 /var/log/ftn
bforce                  # папка с журналами результатов сессий
golded.log              # файл регистрации жизнедеятельности редактора GoldEd
hpt.log                 # файл с творчеством hpt
outman.log              # журнал созданных флагов

$ ls -1 /var/log/ftn/bforce/
bf-daemon               # лог демона (службы) bforce
bf-log                  # эти журнальные файлы возникли в момент отладки системы.
bf-log.pts-2
bf-log.ttyS1            # лог 'общения' bforce с модемом

$ ls -l /var/log/bforce         # А это на всякий случай... Вдруг в каком
                                # файле встретится.
lrwxrwxrwx    1 root     root           19 Авг  2 23:28 /var/log/bforce -> 
/var/log/ftn/bforce

Немного полезных утилит.

Чем я запускаю редактор GoldEd:

$ cat bin/ged
gedlnx -C/etc/ftn/golded/etc/golded.cfg

Чем я подготавливаю почту к отправке:

$ cat bin/hpt_scan 
#!/bin/sh
/usr/local/bin/hpt scan
/usr/local/bin/hpt pack
/usr/local/bin/sqpack

Чем я разбираю пришедшую почту:

$ cat bin/hpt_toss 
#!/bin/sh
/usr/local/bin/hpt toss
/usr/local/bin/hptlink -t -s

Как я поднимаю флаг для прозвонки:

$ cat bin/poll
#!/bin/sh
/home/den/bin/outman poll 2:5028/52

Сам скрипт outman
$ head -10 bin/outman 
#!/usr/bin/tclsh
#
# Copyright (c) 2000 by Alexander Belkin 
#
# $Id: outman,v 1.4 2000/07/01 18:53:07 adb Exp $
#
# Tcl script for creating polls, file requests and file attaches
#
##################
взят из директории contrib пакета bforce.

Послесловие

Надеюсь, что это описание уменьшит список ваших вопросов. Большинство проблем возникает из-за неаккуратности в настройках и невнимательном прочтении FAQ, HOWTO, README и INSTALL.

Успехов.

С Уважением,
Денис Якимов
FidoNet: 2:5028/52.52, 2:5028/52.219. E-mail: dnkmv|долойспам|mail.ru
11 ноября 2002



Наш баннер
Вы можете установить наш баннер на своем сайте или блоге, скопировав этот код:
RSS новости