The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Ftrack+FIDOGATE mini-howto v1.3 (fido howto)


<< Предыдущая ИНДЕКС Поиск в статьях src Установить закладку Перейти на закладку Следующая >>
Ключевые слова: fido, howto,  (найти похожие документы)
- RU.LINUX (2:5077/15.22) ------------------------------------------ RU.LINUX - From : Serge N. Pokhodyaev 2:5020/1838 07 Apr 00 16:28:12 Subj : Ftrack+FIDOGATE mini-howto v1.3 ------------------------------------------------------------------------------- Ftrack+FIDOGATE mini-HOWTO Serge N. Pokhodyaev, 2:5020/1838, snp@ru.ru $Id: Ftrack+FIDOGATE,v 1.3 2000/04/07 12:26:45 snp Exp $ Как прикрутить Ftrack к FIDOGATE ______________________________________________________________________________ Содержание 1. Компиляция smapi. 2. Компиляция Ftrack. 3. Инсталляция 4. Hастройка ______________________________________________________________________________ 1. Компиляция smapi. % tar -xzvf smapi-latest.tar.gz -C /usr/local/src % cd /usr/local/src/smapi % ln -s makefile.lnx Makefile Теперь редактируем Makefile. Hадо заменить пару строчек чтобы собиралась только библиотека .a (smapi нам понадобится только для Ftrack'а, поэтому для простоты можно обойтись статическими библиотеками). Hеобходимые изменения приведены в формате unified diff: ===-COPT= -O3 -fomit-frame-pointer -fstrength-reduce -fPIC +COPT= -O3 -fomit-frame-pointer -fstrength-reduce -ALL: $(TARGET) libsmapilnx.so.$(VER) +ALL: $(TARGET) ==% make 2. Компиляция Ftrack. % unzip ftr300b2s.zip -d /usr/local/src/ftrack % cd /usr/local/src/ftrack % cp /usr/local/src/smapi/*.h smapi % cp /usr/local/src/smapi/*.a smapi Если планируется использование ASO (AmigaDOS outbound), прикладываем вот этот патч: === ftrack_aso.diff ===- --- ftrack/src/outbound.cpp.orig Sun Feb 20 20:09:37 2000 +++ ftrack/src/outbound.cpp Wed Mar 15 02:03:54 2000 @@ -85,18 +85,26 @@ char *MakePktName(FA &f) { static char Buff[1024]; strcpy(Buff,Outbound); - if (Buff[strlen(Buff)-1] == PATHDELIMC) { - Buff[strlen(Buff)-1] = '\0'; - } - if ((MyAddr.Zone() & 0xffff) != (f.Zone() & 0xffff)) { - sprintf(Buff+strlen(Buff),".%03x",(word)(f.Zone() & 0xffff)); - } - strcat(Buff,PATHDELIMS); - sprintf(Buff+strlen(Buff),"%04x%04x",(word)(f.Net() & 0xffff),(word)(f.Node() & 0xffff)); - if ((f.Point() & 0xffff) != 0) { - strcat(Buff,PntExtension""PATHDELIMS"0000"); - sprintf(Buff+strlen(Buff),"%04x",(word)(f.Point() & 0xffff)); +// if (Buff[strlen(Buff)-1] == PATHDELIMC) { +// Buff[strlen(Buff)-1] = '\0'; +// } +// if ((MyAddr.Zone() & 0xffff) != (f.Zone() & 0xffff)) { +// sprintf(Buff+strlen(Buff),".%03x",(word)(f.Zone() & 0xffff)); +// } +// strcat(Buff,PATHDELIMS); +// sprintf(Buff+strlen(Buff),"%04x%04x",(word)(f.Net() & 0xffff),(word)(f.Node() & 0xffff)); +// if ((f.Point() & 0xffff) != 0) { +// strcat(Buff,PntExtension""PATHDELIMS"0000"); +// sprintf(Buff+strlen(Buff),"%04x",(word)(f.Point() & 0xffff)); +// } + if (Buff[strlen(Buff)-1] != PATHDELIMC) { + strcat(Buff,PATHDELIMS); } + sprintf(Buff+strlen(Buff),"%u.%u.%u.%u", + (word)(f.Zone() & 0xffff), + (word)(f.Net() & 0xffff), + (word)(f.Node() & 0xffff), + (word)(f.Point() & 0xffff)); return Buff; } ==% cd linux Редактируем Makefile: ===-CFLAGS= -Wall -W -Werror -fno-rtti +CFLAGS= -Wall -W -fno-rtti -COPT= -I../hpp -I../src -O3 +COPT= -I../hpp -I../src -I../smapi -O3 -LFLAGS= -s +LFLAGS= -s -L../smapi ==% make 3. Инсталляция % mkdir /usr/local/lib/ftrack % cd /usr/local/lib/ftrack % cp /usr/local/src/ftrack/linux/ftrack . % chown root.root ftrack % chmod 755 ftrack Кладем в /usr/local/lib/ftrack вот такой скрипт: === ftrack-start ===#!/bin/sh libdir="/usr/local/lib/ftrack" etcdir="/usr/local/etc/ftrack" fgdir="/usr/local/lib/fidogate" outbound="/var/spool/fido/outb" uid="fido" ########## End of configurable part ########################################## if [ "`id -un`" != "${uid}" ]; then echo "Run as user ${uid}!" exit 1 fi # First unpack all mail ${fgdir}/bin/rununpack in ${fgdir}/bin/rununpack pin # Now track it ${libdir}/ftrack -c ${etcdir}/ftrack.conf >/var/log/ftrack/stdout 2>&1 if [ $? != 0 ]; then echo Error! >&2 exit 1 fi # Remove void string inside Vias for i in `find ${outbound} -name \*.\[hdoc\]ut`; do bsyname="${outbound}/`basename ${i} | sed -e 's,\.[hdoc]ut$,,'`.bsy" [ -f ${bsyname} ] && continue touch ${bsyname} perl -e 'while(<>) { $_ =~ s,(^\r)(\001Via ),$2,; print; }' <${i} >${i}_ touch -r ${i} ${i}_ mv -f ${i}_ ${i} rm ${bsyname} done # Fix permissions chmod -R go-rw ${outbound} ==% mkdir /usr/local/etc/ftrack % mkdir /var/spool/fido/ftrack/in_bad % mkdir /var/spool/fido/ftrack/in_insecure % mkdir /var/spool/fido/ftrack/in_secure % mkdir /var/spool/fido/ftrack/out % chown -R fido.fido /var/spool/fido/ftrack 4. Hастройка Hиже приведен реальный конфиг, но вначале несколько пояснений. Вначале FTrack сканирует несколько директорий, а именно: парольный и непарольный аутбаунды и директории, в которые кладутся сгейтованные FIDOGATE'ом сообщения. При сканировании эхомейл игнорируется, а нетмейл конвертируется в формат *.msg и перемещается в директории `/var/spool/fido/ftrack/in_insecure' или `/var/spool/fido/ftrack/in_secure'. Затем происходит обработка нетмейла, находящегося в этих директориях, после чего он перемещается в директорию `/var/spool/fido/ftrack/out' для последующего роутинга. === ftrack.conf ===\ \\\\\\\\\\ My addresses \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ Address: 2:5020/1838 aka: 2:5020/1354.500 2:5020/1354.* SysopName: "Serge N. Pokhodyaev" Origin: "none" FileInbound: "/var/spool/fido/inb-protected" Outbound: "/var/spool/fido/outb" Trafficlog: "/var/log/ftrack/traffic" LogFile: "/var/log/ftrack/log" \ LogLevel: 5 LogLevel: 2 UseNewVIA LoopStr: "2:5020/1838 @" UseOwnZone ForceINTL BadMessages: move "/var/spool/fido/ftrack/in_bad" CheckPoints: Never NodelistPath: "/var/spool/fido/nl.d" Nodelist: "net5020.ndl" 2 Nodelist: "pnt5020.ndl" 2 IndexFile: "/var/spool/fido/nl.d/ftrack_index" MaxNodelistAge: 60 \ \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ \ Insecure... ScanDir: "##/var/spool/fido/inb" KludgeMask: "AREA:*" * * Action: Ignore Mask: * * * * * * Action: Move "/var/spool/fido/ftrack/in_insecure" ScanDir: "##/var/spool/fido/inb-listed" KludgeMask: "AREA:*" * * Action: Ignore Mask: * * * * * * Action: Move "/var/spool/fido/ftrack/in_insecure" \ Secure ... ScanDir: "##/var/spool/fido/inb-protected" KludgeMask: "AREA:*" * * Action: Ignore Mask: * * * * * * Action: Move "/var/spool/fido/ftrack/in_secure" ScanDir: "##/var/spool/fido/outpkt" KludgeMask: "AREA:*" * * Action: Ignore Mask: * * * * * * Action: Move "/var/spool/fido/ftrack/in_secure" ScanDir: "##/var/spool/fido/outpkt/mail" Mask: * * * * * * Action: Move "/var/spool/fido/ftrack/in_secure" \ \\\\\\\\\\ Inbound insecure netmail \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ ScanDir: "/var/spool/fido/ftrack/in_insecure" \ Все мыло для меня направляем на роутинг (предварительно вставив предупреждение) Mask: * * * 2:5020/1838.1 * * Mask: * * * 2:5020/1838.0 * * Mask: * * * 2:5020/1354.500 * * Action: AddNote "/usr/local/etc/ftrack/tmpl/insecure_to_me" Action: Move "/var/spool/fido/ftrack/out" \ Все остальное шлем на 2:5020/1838.0 Mask: * * * * * * Action: NewMsg "/usr/local/etc/ftrack/tmpl/copy_to_me" "/var/spool/fido/ftrack/out" "FTrack" @ "Serge N. Pokhodyaev" 2:5020/1838.0 "Insecure netmail" * Action: Delete \ \\\\\\\\\\ Inbound secure netmail \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ ScanDir: "/var/spool/fido/ftrack/in_secure" \ Hи отправителя, ни получателя нет в нодлисте -- прибиваем \ Mask: * !# * !# * * \ Action: NewMsg "/usr/local/etc/ftrack/tmpl/copy_to_me" "/var/spool/fido/ftrack/out" "FTrack" @ "Serge N. Pokhodyaev" 2:5020/1838.0 "Bad from and to" * \ Action: Delete \ Отправителя нет в нодлисте -- отлуп \ Mask: * !# * * * * \ Action: NewMsg "/usr/local/etc/ftrack/tmpl/copy_to_me" "/var/spool/fido/ftrack/out" "FTrack" @ "Serge N. Pokhodyaev" 2:5020/1838.0 "Bad from" * \ Action: NewMsg "/usr/local/etc/ftrack/tmpl/badfrom" "/var/spool/fido/ftrack/out" "FTrack" @ % % "Bad source address" * \ Action: Delete \ Получателя нет в нодлисте -- отлуп \ Mask: * * * !# * * \ Action: NewMsg "/usr/local/etc/ftrack/tmpl/copy_to_me" "/var/spool/fido/ftrack/out" "FTrack" @ "Serge N. Pokhodyaev" 2:5020/1838.0 "Bad to" * \ Action: NewMsg "/usr/local/etc/ftrack/tmpl/badto" "/var/spool/fido/ftrack/out" "FTrack" @ $ $ "Bad destination address" * \ Action: Delete \ Луп обнаружили -- отлуп Mask: * # * # * +7 Action: NewMsg "/usr/local/etc/ftrack/tmpl/copy_to_me" "/var/spool/fido/ftrack/out" "FTrack" @ "Serge N. Pokhodyaev" 2:5020/1838.0 "Routing loop detected" * Action: NewMsg "/usr/local/etc/ftrack/tmpl/loop" "/var/spool/fido/ftrack/out" "FTrack" @ $ $ "Routing loop detected" * Action: Delete \ Все мыло для меня направляем на роутинг Mask: * * * 2:5020/1838.1 * * Mask: * * * 2:5020/1838.0 * * Mask: * * * 2:5020/1354.500 * * Action: Move "/var/spool/fido/ftrack/out" \ Hа мыло для несуществующих поинтов шлем отлупы Mask: * * * 2:5020/1838.* * * Action: NewMsg "/usr/local/etc/ftrack/tmpl/no_point" "/var/spool/fido/ftrack/out" "FTrack" @ % % "No such point" * Action: Delete \ Все остальное направляем на роутинг Mask: * * * * * * Action: Move "/var/spool/fido/ftrack/out" ScanDir: @AfterRoute \ Ответим на ARQ Mask: * * * * * +b Action: NewMsg "/usr/local/etc/ftrack/tmpl/audit" "/var/spool/fido/ftrack/out" "FTrack" @ $ $ "Audit receipt" * \ \\\\\\\\\\ Тут мыло, готовое для роутинга \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ ScanDir: "/var/spool/fido/ftrack/out" \ Для меня Mask: * * * 2:5020/1838.1 * * Action: Rewrite * * * 2:5020/1838.0 * * Mask: * * * 2:5020/1838.0 * * Mask: * * * 2:5020/1354.500 * * Action: route hold % \ Мои линки Mask: * * * 2:5020/278.* * * Mask: * * * 2:5020/1124.* * * Mask: * * * 2:5020/1354.* * * Mask: * * * 2:5020/3500.* * * Mask: * * * 2:5020/7100.* * * Action: route normal %.0 \ Остальной фидонет (зоны с 1 по 6) Mask: * * * 1:*/*.* * * Mask: * * * 2:*/*.* * * Mask: * * * 3:*/*.* * * Mask: * * * 4:*/*.* * * Mask: * * * 5:*/*.* * * Mask: * * * 6:*/*.* * * Action: route normal 2:5020/278.0 \ Всякие левонеты Mask: * * * * * * Action: NewMsg "/usr/local/etc/ftrack/tmpl/no_zone" "/var/spool/fido/ftrack/out" "FTrack" @ % % "No such zone" * Action: Delete ===--- FIDOGATE 4.4.0-snp10 * Origin: none (2:5020/1838.0)

<< Предыдущая ИНДЕКС Поиск в статьях src Установить закладку Перейти на закладку Следующая >>

 Добавить комментарий
Имя:
E-Mail:
Заголовок:
Текст:




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру