深情篇
天气:
 分类:心情日记 日记本:wuyu 作者:1587 2015-05-05 17:05 阅读数:

Firebird BBS 3.0 版

"注:以下文件乃编改自台湾种子站FirebirdBBS3.0版之使用手册。 ————————————————————————————————————                          目      录————————————————————————————————————                        (零)前言                        (一)架站前的考量                          [1]硬体的准备                         [2]网路流量的考量                         [3]系统安全的考量                         [4]身份确认的重要性                        (二)安装BBS程式                          [1]建立BBS的相关帐号                         [2]取得BBS程式                         [3]设定及安装BBS程式                         [4]测试BBS程式及错误的排除                         [5]其他版本BBS升级须知                        (三)设定BBS的相关档案                          [1]修改系统设定档                         [2]修改BBS的选单                         [3]开版及建立精华区                         [4]BBS目录下档案说明                         [5]活动看板的设定与使用                        (四)外部工具程式使用                          [1]简介自动程序                         [2]上站人数统计                         [3]上站人次统计                         [4]上站次数,发表文章次数,使用时间排名                         [5]十大热门话题统计                         [6]讨论区使用率统计                         [7]观看.PASSWDS的程式--showuser.c                         [8]自动loginBBS帐号安装                         [9]BBSnet,Lynx,Archieclient,IRC..etc安装                        (五)寄信给BBS站内使用者及E-mailPost安装                          [1]身份确认信处理的流程                         [2]如何修改系统使BBS站内User能收到Intermail                         [3]E-mailpost安装及使用                        (六)转信程式INNBBSD的安装                          [1]安装转信程式                         [2]设定转信所需的设定档                         [3]申请转信的方法                         [4]参考文件[已知NewsServer列表]                         [5]自动砍信程式expire介绍  —————————————————————————————————————                         第零章 前言—————————————————————————————————————    本板是从FPUG(FirebirdPowerUserGroup)推出的FB3.01003SNAP发   展而来的一个分支。这支代码由AddWaterBBS站站长 deardragon继续开发   发布。本代码秉持GNU软体开发精神而开放给大家自由拷贝使用、修改。   本板代码根据实际的需要,对原有的FirebirdBBS结构功能做了极多的改动,   不仅仅舍弃了部分微弱功能,而且加入了大量实用的功能,并对系统性能做了   大幅度提高。    本板开放让大家抓取,其目的在於希望能让各Firebird系列的站台互相交流,   集思广益,一齐参与发展,使FirebirdBBS在研发方面做得更加的尽善尽美。    本板在BSDLicence下发行,在不修改原有之版权宣告的情形下,各位可任意拷   贝及修改。但是我们有个小小的要求,就是若您对它作了一些修改,或修正错误   ,或添加功能,请回报给发展小组,或在Firebird连线版上post出您改过的   地方,好让大家也能分享您的成果。与人分享的快乐,胜过独自拥有,这是本板   发行的目的。  —————————————————————————————————————                         第一章 架站前的考量—————————————————————————————————————  [1]硬体的准备    足够的记忆体及SWAP是影响上站人数上限的关键,硬碟的大小则影响到各板文   章能保留篇数的多少,在架站前需衡量所需配备。据观察,一台具有32MB记忆   体的Linux机器在BBS人数达80人左右时开始会用SWAP。(Linux作业系统   在记忆体不足的状况下才会用SWAP)    因为BBS的档案多以信件,讨论区文章为多,这些都是1K~2K的小档案,所   以系统的档案结构每个inode以1K或2K为佳,您可以下df-i指令观察目   前inode的使用状况。inode的大小通常是在newfs时选择的。  [2]网路流量的考量    当您的BBS站公开给外界使用以後,通常会遇到以下麻烦:    如果有大量使用者透过网路连接您的BBS,会对您们当地的网路造成「有点大,   又不会太大」的网路交通量。    ==>对策:礼貌性知会网路管理单位,统计网路交通流量,了解BBS系统对网路             的影响程度,以调整BBS的管理策略。  [3]系统安全的考量    由於BBS站是一般cracker觊觎的对象之一,因此设立BBS站之後,容易让您   的工作站成为显著的入侵目标。    ==>对策:请更加注意您的系统安全,尤其当执行外部程式(如gopher,lynx,             tin....etc),务必确定程式没有执行上的漏洞,或者寻找修改过专为             BBS用的版本,并请勤於修补作业系统的漏洞。  [4]身份确认的重要性    除非您的BBS站是封闭式的BBS(也就是使用者必须经过严格的申请程序才能拥   有帐号),否则请注意匿名使用者的问题。匿名使用者的言责问题一直是网路上   争议的论点之一,因此请您在开站之前考虑您的做法。    ==>对策:确认使用者身份以後才给予发表文章的权利,而且规定使用者身份只             能透过系统管理员查询。如此即可适度保障使用者隐私权、又可在发             生问题时追查责任的归属。  —————————————————————————————————————                         第二章 安装BBS程式—————————————————————————————————————  [1]建立BBS的相关帐号   在安装BBS之前,请您先在系统中加入以下使用者。步骤是:用root登陆入系   统,使用groupadd命令,为系统创建一个专门用于bbs的组用户 bbs。命令   是                      [root@bbs/root]#groupadd-g999bbs                然后再建一个bbs用户。命令是                      [root@bbs/root]#adduser-u9999-gbbsbbs                 建立后,即表示用于bbs的用户名是bbs,用户ID是9999。然后你还要为    bbs用户设置密码,命令是:               [root@bbs/root]#passwdbbs               然后再修改/etc/group文件,将bbs加入到bbs:x:999:的后面,使之成为    bbs:x:999:bbs。(新建帐号的步骤会因系统不同而有差异,请您在建立帐号之    前参考您的系统管理手册。采用UID9999的原因是为了避免与一般使用者的     UID产生冲突)    一般建立好新帐号后,可以在/etc/passwd中看到以下的内容:      bbs:x:9999:999::/home/bbs:/bin/bash    ※目前FB2000已经废除bbsrf,所以不必再开两个bbs、bbsuser两个帐号,只     需一个帐号(bbs)即可。bbs是专门用于修改程序的系统帐号。    为bbs的源程序创建两个目录bbssrc,bbs:                [root@bbs/root]# mkdir/home/bbssrc;mkdir/home/bbs             [root@bbs/root]# chownbbs.bbsbbssrcbbs                以上操作均是以root身份执行的。  [2]取得BBS程式    请以bbs登陆入系统,再抓取BBSsource,本板的source可由以下位址取得:      http://fb2000.dhs.org/download/FB2000v0918.tar.gz    取回後,解开FB2000v0918.tar.gz的原始程式,以进行安装程序。   解开FB2000v0918.tar.gz的方法:      [bbs@bbsbbs]$cd/home     [bbs@bbsbbs]$tarzxvfFB2000v0918.tar.gz    [3]设定及安装BBS    1.手动设定    以bbslogin,编辑bbssrc/include/functions.h,这个档定义了一些bbs的   重要功能,您可以视需要打开或关闭。目前FB3预设使用bbsd,bbsrf则已经   废除。    2.自动设定系统环境及填写主要BBS资料    同样以bbslogin,到bbssrc/目录底下执行以下指令:      %./configure    执行的过程应类似以下画面: ..................................  PleasefilldataforyourBBS  请填写与贵站相关的BBS数据...................................HomedirectoryofBBS-->[/home/bbs]                  ==>bbs目录所在UIDofBBS-->[9999]                                  ==>bbs的系统UIDUSERofBBS-->[bbs]==>bbs的系统帐号GIDofBBS-->[999]                                   ==>bbs的系统GIDGROUPofBBS-->[bbs]==>bbs的系统组TheIDofyoursite-->[AddWaterBBS]               ==>贵站的英文代号Thenameofyoursite-->[快意灌水站]                 ==>贵站名称(中文可)Thedomainnameofyoursite-->[some.where.on.earth] ==>贵站domainnameTheIPaddressofyoursite-->[127.0.0.1]            ==>贵站IPaddressTheDefaultboardofyoursite,onlychangeitifupgradingfromoldsystemwithdifferentdefaultboard-->[sysop]==>预设看板Maximumnumberofusers-->[20236]                    ==>最大使用人数Maximumnumberofboards-->[256]                     ==>开板最大数目Maximumnumberofon-lineusers-->[256]              ==>最大同时上线人数ShowidletimeofBBSusers?-->[Y]                  ==>显示idle时间UseDLM?-->[Y]==>使用动态连接模块Makebbsusersinvisible(-DINVISIBLE)?-->[N]       ==>是否不写入系统utmpPLEASECHOOSETHISCAREFULLYIslibcrypt""DES""correct?-->[Y]                     ==>密码编码方式........................................updatingcache./config.cachecreating./config.statuscreatingMakefilecreatingconfig.hcreatingInstall.sh ........................................................................YoumayreviewtheMakefilenow.Then,type'make'tobuildyoursystem.........................................................................    在设定一些数值时,请确切考虑您的硬体设备是否足够支撑。特别是最大同时上   线人数,它是与记忆体的大小非常有关的。    如果您使用FreeBSD,请注意您系统的密码编码方式是MD5还是DES,若您从   旧BBS系统升级到FB2000,在这里您别无选择,必须使用DES,没安装的话,   请先安装DES後,再执行configure。    程式会自动判断您所用的系统,并且询问您所架设的BBS之基本资料,以造出必   要的Makefile。顺利的话,您应该可以在bbssrc/目录底下找到刚打造出来的   Makefile。您可以观看此档的设定,若有必要,可手动修改之。    在bbssrc/include下亦可找到config.h这个档,在编译程式之前您亦可对它   作一些手动的修改。同一个目录下可找到chat.h这个档,您可以在此更改聊天   室的名称和portnumber。    还有一个要注意的地方,在bbssrc/src/Makefile中,有个EXTRADEF的定义,   您可以在最後面加上-DWITHOUT_ADMIN_TOOLS,这样就不会编译SYSOP会用到的   系统管理程式,可以节省记忆体,对大型BBS本功能尤其有效。     3.编译BBS程式    以bbs登入,在bbssrc/下执行如下指令:      [bbs@bbsbbs]$make    进行编译动作。编译过程无错误的话,bbssrc/src目录底下应该会产生bbsd(或   bbs),chatd以及thread几个执行档。这几个档案都已产生的话,代表BBS程   式的编译已经完成。    如果因为任何error导致BBS程式无法产生的话,请先检查安装程序是否有错   误,然後重新。若无法解决,可将编译过程产生的讯息张贴至快意灌水站BBSdev   板求助。    4.安装BBS程式    以bbslogin,在/home/bbssrc目录底下执行:      #makeinstall    即可大功告成。请继续测试您刚架设完成的BBS站。  [4]测试BBS程式及错误的排除    1.测试前准备      执行:     [root@bbs/root]$/home/bbs/bin/bbsd2000    这里的2000是指你的BBS端口号。即port.别人访问你的BBS时,   就可以通过telnetyour.server.id2000来连接你的bbs。当然,port   可以随意用您喜欢的port,若您要用port23,请先关掉系统原有的   telnetd,关掉telnetd的方式请参考的说明文件,否则可以跳过此节。          如果您要使用系统原有的port23,你必须关掉系统原有的telnetd,   如果您要直接使用bbsrf,请跳到2。关掉telnetd的步骤是:(全部是以   root的身份执行)          1).修改/etc/inetd.conf,寻找以下的字串:     telnet   stream tcp nowait root /usr/libexec/telnetd telnetd            把该行改成:     telnet1  stream tcp nowait root /usr/libexec/telnetd telnetd            ※因作业系统不同,您看到的设定可能与上述设定不尽相同,请把            握一个原则,就是在第一个telnet後面加上1就对了。        2).接著修改/etc/services,在适当位置加上:     telnet1     2300/tcp         #previousin.telnetddaemon            ※这行设定将您旧的telnetdport设到2300,您可以自行修改您               喜欢的port数字,建议往後面设,如54321。            ※又:由于你将系统的telnetd端口设成了其他的number,那么                缺省的telnet将使用portnumber,如果你使用telnet登陆                其他使用23port的主机时,你需要人为地加上对方主机使用的                port。如:登陆快意灌水站:telnet210.38.240.15823        3).执行以下指令,找出inetd的PID:              [root@bbs/root]$ps-ax|grep""inetd""            接著执行以下指令,就可重新起动inetd(或重开机也可):              [root@bbs/root]kill-HUP(PID)   2.测试BBS并取得SYSOP权利    在你的系统的shell里使用telnetlocalhostport登陆到你的bbs中。应该   可见到BBS的进站画面。此时,当BBS程式要求您输入代号时,请输入new,   以便注册一个新使用者。由於名称为SYSOP的使用者拥有一切权利,因此您必须   先注册SYSOP,并且设定密码。    【注意】:SYSOP必需完全为大写字母。   ※请注意:如果你登陆SYSOP帐号只能在你的bbs主机上(或登陆到bbs主机             上),使用telnetlocalhostport来登陆。否则会得到一个警告,并禁止登陆,您如果不希望这样,您可以在/home/bbssrc/include/functions.h中屏蔽该功能。   接下来,请再注册guest帐号,此帐号为BBS的参观帐号,不须输入密码即可   进入BBS(注册时随便打个密码即可)。如果您不想提供guest帐号,可以略过此   步骤,并记得把guest加入""不可注册之ID""的名单内。若您提供了guest帐   号,请参考稍後的文件说明替guest设定「恰到好处」的权限。通常guest帐   号是只能参观不可发言的,因此通常不具有发表文章或聊天的功能。    3.错误的排除   如果天不从人愿,程式一声不响地结束了,请您以bbs登入系统,执行ipcs指   令,查看sharedmemory,SHM的使用情形与owner是否正确,正常的owner   应该是bbs,如果不是的话,请利用ipcrm清除之,然後重新执行bbs。通常此   类误会有Error!shmaterror!key=ooxx的讯息。    若还是不行,请检查~bbs/etc中是否有menu.inisysconf.ini这两个档案,   内容是否完整。如果完整的话,请试著删除~bbs/sysconf.img档案,再重新进   入BBS测试。    如果还是不行的话,请试著清除整个BBS系统,重新开机後再安装几次试试。如   果真的没有办法,请到fb2000.dhs.org的BBSdev讨论区求助,或者给dragon@fb2000.dhs.org写信。在此特别推荐第一种做法,因为这样子可以   在网路上遇到较多使用FirebirdBBS20000系统的管理者,得到立即回应的机   会较大。当然啦,在求助之前请详述您的系统平台、所用的编译器,以及出现的   错误讯息等资讯,这样子大家才能容易帮您找出可能发生问题的地方,不然可能   会没人回答您的问题喔!   又,在发问前,请先往前找找是否有人回答过相同的问题。  [5]其他版本BBS升级须知    目前本系统提供从其他版本的BBS到本板本的转换程式,具体情况请参阅   本目录下的Update_To_FB2000文件内容。  —————————————————————————————————————                         第三章 设定BBS的相关档案—————————————————————————————————————    以下介绍主要的设定档,以便使用者架出一个符合自己要求的BBS  [1]修改系统设定档    修改~bbs/etc/sysconf.ini    以下分别说明sysconf.ini中选项的意义 #comment EMAILFILE      =""etc/mailcheck""   <--如果把这行前面加上#就不寄身份确认信#NEWREGFILE    =""etc/newregister"" <--如果把这行前面#拿掉就有新手三天限制 PERM_BASIC     =0x00001           <--以下为一些权限的定义,将在menu.iniPERM_CHAT      =0x00002               中使用(请小心修改以免造成问题)PERM_PAGE      =0x00004.......................... PERM_SPECIAL6  =0x8000000PERM_SPECIAL7  =0x10000000PERM_SPECIAL8  =0x20000000 PERM_ESYSFILE  =PERM_SYSOP,PERM_WELCOME,PERM_ACBOARD^^^^^^^^^^^^^^拥有修改部份/全部系统档的权限PERM_ADMENU    =PERM_ACCOUNTS,PERM_OVOTE,PERM_SYSOP,PERM_OBOARDS,\                 PERM_WELCOME,PERM_ACBOARD,PERM_DENYPOST^^^^^^^^^^^^^^可看到并使用管理者选单PERM_BLEVELS   =PERM_SYSOP,PERM_OBOARDSPERM_UCLEAN    =PERM_SYSOP,PERM_ACCOUNTS AUTOSET_PERM   =PERM_CHAT,PERM_MESSAGE,PERM_PAGE,PERM_POST,PERM_LOGINOK^^^^^^^^^^^^^^设定身份确认通过的使用者可得到的权限 #include""etc/menu.ini""    注意!修改完sysconf.ini後,请至BBS主选单按Shift+~或者砍掉   ~bbs/sysconf.img,以便更新系统设定。  [2]修改BBS的选单    1.加入背景:在每个选单背後都有一个背景,以主选单为例,它的背景就是由     screen这行所指定的S1_MAIN所决定: #---------------------------------------------------------------------%S1_MAIN                   这里是背景                  我是可爱的哲哲!!                  我好帅喔!! %#---------------------------------------------------------------------        在%S1_MAIN与%中的文字都会被当成背景印出.    2.menu.ini内各设定的意义(以主选单为例)  %menuTOPMENUscreen      3,0,S1_MAIN                  ^^^^^^^指定用那个背景 title       0,0,""欢迎光临靠边站(CobaBBS)      ""            ^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^这是每个选单都            欲印出的座标                          有的标题 !M_EGROUP   3,0,0,         ""EGroup"",   ""E)分类讨论区""            ^^^^ ^^不限权限皆可用            从(3,0)开始印  !M_MAIL     0,0,PERM_BASIC,""Mail"",     ""M)私人信件服务""^^^^^^^           ^^^^^^^^^^要有BASIC权限才看的到这个选项跳到M_MAIL选单 !M_TALK     0,0,PERM_BASIC,""Talk"",     ""T)进入聊天选单""            ^^^^(0,0)表接著上行印 #!M_INFO     0,0,PERM_BASIC,""Info"",    ""I)设定个人资料""^^^^^^^^这行前加了个#,代表拿掉这行    以上只简介了大致上的设定方法,详细可使用的功能请参考   ~bbsroot/bbssrc/bbshome/etc/menu.ini的档案,对照修改您   现在使用的menu.ini。    注意!修改完menu.ini後,请至BBS主选单按Shift+~或者砍掉   ~bbs/sysconf.img,以便更新系统设定。  [3]开板及建立精华区    1.开板及分类讨论区    刚建好的BBS除了预设的讨论区外,什麽讨论区也没有,站长可以视使用者需要   开启适当的讨论区,同时为了BBS使用者找寻讨论区方便起见,必需将相关的讨   论区分类在同一个群组中(Group),讨论区群组的设定请见~bbs/etc/menu.ini,   以下是参考的设定: title       0,0,""分类讨论区选单""screen      3,0,S_EGROUP@BoardsNew  11,25,0,  ""New"",         ""N)阅读新文章 New""@EGroups    0,0,0,  ""0BBS"",        ""0)BBS系统--[站内]""..(略)..    ..(略)..  ..(略)...      .......(略)...............@EGroups    0,0,0,  ""6Sports"",     ""6)体育健身--[运动][职棒]""@EGroups    0,0,0,  ""7Talk"",       ""7)物理专业--[中国物理协会]""@BoardsAll  0,0,0,  ""Boards"",      ""B)所有讨论区""!..         0,0,0,  ""Exit"",        ""E)回到主选单""%EGROUP0=""0""............EGROUP6=""rs"" <--rs为分类码,开板时会用到,r与s皆定义为EGROUP6EGROUP7=""xf""EGROUPT=""*""    请特别注意分类选单的0)将会分到EGROUP0,6)将会分到EGROUP6...    开启新板的方式是到主选单下选A)系统管理功能表的N)开启新的讨论区,第   一个建立的板必需为sysop(安装时已预先建立好),请如下输入:    讨论区名称:sysop               <--填入讨论区的英文板名    讨论区说明:0[站内]○站务管理区               ^讨论区说明的第一个字为分类码(定义於menu.ini),以此0为例                ,将会分至EGROUP0,也就是0)BBS系统--[站内],其馀部份                的讨论区说明请按此形式填写,以免到时板面排的不好看。    讨论区管理员:SYSOP             <--指定讨论区的BM   是否限制存取权利(Y/N)?[N]:n <--指定只有某些权限者才能存取此板   是否加入匿名板(Y/N)?[N]:n   <--是否为匿名板            1.本站系统           system.faq           2........            ..........           14.其他               other.faq    请输入你的选择:1                <--选择精华区要放那?以後可再调整位置   已经置入精华区.....    新讨论区成立    2.建立精华区   使用者在讨论区按下x键便会跳至该讨论区的精华区,要达成此功能必须要正确   设定~bbs/0Announce/.Search档案内容,在一般情况下,您不用手工来设置它,   如果确有变动,则修改该文件。该文件可能的内容如下:      linux:       Linux     installbbs:  Linux/bbs     sysop:       sysop     ....         .......    其中冒号前代表boardname,後面的代表对映的目录名例如:在installbbs板   按下x时,FirebirdBBS就会去找~bbs/0Announce/Linux/bbs下的精华区。    正常开板时即会自动写入此档,平常无需自加,但如果精华区目录有更动时,请   记得修改此档。  [4]BBS目录下档案说明    以下说明在~bbs目录下各重要档案的功能,请详加阅读以便能更掌控贵站的正   常运作。     PartI.☆主要资料档案☆ ——————————————— 1.BBS_HOME/.PASSWDS   存放每位使用者的基本资料,宣告structuserec。   欲观看此档内容,请参考第四章[7]的说明。  2.BBS_HOME/.BOARDS   存放讨论区的基本资料,宣告structboardheader,里面有一个element.flag   是用来存放讨论区的状况  3.BBS_HOME/WelcomeWelcome.rec   进站後的欢迎画面,和记录读取情况。可直接用编辑器修改Welcome   的内容,注意!!只有当Welcome有更新过时,使用者才会看到。  4.Welcome2   与Welcome类似,但每次进站都会看到,且允许有多重画面,以@login@   彼此隔开。  5.BBS_HOME/home/A-Z   存有各个使用者的目录,并依照使用者ID的第一个字来分类排放:   例如:SmallPig使用者的目录就放在BBS_HOME/home/S/SmallPig,         wildwolf使用者的目录就放在BBS_HOME/home/W/wildwolf。  6.BBS_HOME/boards   里面存有各讨论区的directory。  7.BBS_HOME/vote   里面记录各讨论区的投票控制档,以及讨论区简介。  8.BBS_HOME/0Announce   里面记录精华区资料。  9.BBS_HOME/etc   系统控制档案。 10.BBS_HOME/help   各控制键说明文件档案。   PartII.☆使用者目录☆ —————————————— BBS_HOME/home/A-Z/USERID/*  1.friends     记录好友名单,宣告structfriend。 2.logout      使用者自订离站画面。 3.maillist    寄信给一群人列表。(目前已删除) 4.notes       个人备忘录。 5.plans       个人说明档。 6.signatures  签名档。 7.mailcheck   身份确认暂存档。 8.register    身份确认记录档。  PartIII.☆投票目录☆ —————————————— BBS_HOME/vote/BOARDNAME/*  1.notes      讨论区介绍(备忘录)。 2.noterec    记录讨论区读取情况。 3.control    投票控制档。 4.desc.????? 投票描述。 5.flag.????? 使用者投票记录。 6.results    投票结果。 7.secnotes   秘密备忘录。  PartIV.☆系统控制档案☆ —————————————— BBS_HOME/etc/*  1.anonymous  匿名板名单(目前已移至~bbssrc/include/config.h中控制) 2.autopost   每日系统自动Post列表。  使用法如下:在autopost档中填入以下内容  /home/bbs/0Announce/bbslist/board1   bbslists       讨论区使用率(图) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^   ^^^^^^^^       ^^^^^^^^^^^^^^^^       欲自动张贴的档案名             张贴至何板     张贴时用的标题  ※自动张贴的原理是当有使用者上站时,去检查~bbs/etc/checknotepad内存的时   间,是否距离上次自动张贴已经过24小时,是便自动张贴,否则不动作。   3.boardref    站长开板时所用的参考文件。 4.checknotepad记录留言板与自动Post的时间记录。 5.f_fill      填写注册单失败的mail内容。 6.s_fill      填写注册单成功的mail内容。 7.firstlogin  新手上路将阅读的文件。 8.fmail       身份确认失败的mail内容。 9.smail       身份确认成功的mail内容。10.goodbye     login三次错误的画面。11.issue       进站前的画面。12.junkboards  不记文章数的板。  ※只要板名列入junkboards,BBS使用者在此板发表的文章均不列入个人张贴文章   数统计,适合用於灌水板或匿名板等。 13.mailcheck   身份确认寄出信件的内容。  ※请务必修改此档内容,以免使用者收到确认信还莫名其妙。 14.menu.ini    选单控制档。  ※一些需要使用外部程式的选项在一开始是被#符号mark起来的。倘若您已安装   好相关外部程式,可将其在menu.ini前面的#去掉,存档後按Shift+~或   把~/bbs/sysconf.img砍除,则该选项随後就会在选单中出现了。 15.sysconf.ini 系统控制档。16.newregister 注册说明档。17.notepad_tmp 使用者留言暂存处。18.notepad     留言板。19.sysops      站长列表。  ※请在此档中加入站长的ID及职称,例如:    wildwolf    系统管理   aci         站务管理    当使用者有建议时,便可在离站时选择适当职务的管理者,留信给他。 20.user_full   注册人数已满。21.loginfull   上站人数已满。22.register    新使用者注册帐号之辅助画面。23.logout      离站画面。  ※离站画面可使用多个,只要中间以@logout@隔开即可,请bbssrc/bbshome/ete/\   logout的范例。 24.wmail       退信讯息档。  ※当认证信被退回时,系统将会以此封信内容告知使用者。 25.whatdate    纪念日清单。  ※可以在这里面设定特别的日子并加以描述,当天BBS将会将该日子的描述显示在   画面下方。注意!字与字之间请勿输入空白,若发现显示错误或输入错误而要更   改,需重新开机方可生效。 26.expire.ctl  expire(post)程式设定档。  ※这个档案用来设定各板面保留文章的天数,上限及下限等。   PartV.☆讨论区目录☆ —————————————— BBS_HOME/boards/BOARDNAME/*  .DIR           文章资料档。 .DIGEST        文摘资料档。 .THREAD        同标题模式文章资料档。 M.123456789.A  文章。 [5]活动看板的设定与使用    FB3.0的活动看板采用新的机制,活动看板的内容来源从notepad板中的文摘   (也就是被g起来的文章)中选录。活动看板的宽度也从五行改成七行,您可从   include/functions.h设定是否加大活动看板为七行)。    当您安装一套新的系统时,预设在notepad板安装了三个活动看板。您可以自行   修改,增添。如果你是FB3.00614-SNAP之前的FB3使用者,请先清除movie   的shared-memory(shmkey:30030),因为更动到相关的资料结构,若不清除则   上站会被踢出。    新增一个活动看板很简单,只需要发表一篇文章在notepad板,然後去把那个文   章给收录文摘(在文章之前按一下g),然後重新上站,你可以发现~bbs/trace会   纪录活动看板更新的讯息。此後,只要notepad有新增或删除文摘的话,就会自   动更新活动看板。    ※本来程式在收录活动看板时会自动跳过4行的档头,然後才抓取7(或5)行     的资料来做为活动看板的内容,在这里你可以在活动看板的文章标题上,来控     制程式从这个档案的第几行开始收录成为活动看板,你只要将标题的第一个字     元改成$,然後第二个字元设成你所想要的行号(0~9)。      Ex:      $0  <-这个活动看板从档案的开始(系统预设的活动看板即采用此方法)。     ※新活动看板机制由edwardc从MagicBBS990424移植过来。  —————————————————————————————————————                         第四章 外部工具程式使用—————————————————————————————————————    本章主要是介绍在~bbssrc/util下的程式,这些程式在安装BBS程式时并未安   装,贵站可以视需要参考以下章节的说明安装这些外部程式。  [1]简介自动程序    在完成基本的BBS架设之後,就要开始安装BBS程式以外的一些应用程式,而   这些应用程式有些可能5分钟就要跑一次,有些可能是定时每天的xx时xx分   要执行某这些动作当然不可能每次都由我们自己来做,所以才需要由电脑定时的   为我们执行。以下便是简单的介绍执行自动程序的方法。    一个描述自动程序的档内容可能是这样的: 0,30   8,9,10,11      *      *      *      /home/bbs/bin/account^^^^   ^^^^^^^^^      ^      ^      ^      ^^^^^^^^^^^^^^^^^^^^^minute hour        monthdaymonth weekday   command    我们先把他写在一个档里,叫cron.bbs,然後执行:      %crontabcron.bbs    此时User指定的自动程序就会被加入系统中。如果我们想要更改自动程序时,   可以再去修改cron.bbs然後再执行一次crontabcron.bbs即可。你可以执行   crontab-l确认一下自动程序是否已加入。但值得注意的是,谁执行了crontab   cron.bbs,自动程序就会加入谁的自动程序中,以後电脑自动执行程式时,也会   以那个人的身份来执行。所以像以下我们所介绍的应用程式都要用bbs的身份来   执行时,在下crontabcron.bbs时,就必需要确认此时是以bbs的身份来   执行,请特别注意这点。  [2]上站人数统计    请确定先前执行configure时,到Makebbsusersinvisible(-DINVISIBLE)   选项时您选N,如果您当时选Y,请修改bbssrc/Makefile将-DINVISIBLE拿   掉了,之後makeupdate更新bbs程式。接下来请至~bbssrc/util/local_utl   下,修改averun.c的90行附近,将其改为贵站的中文站名,再下如下指令:      %makeaverun    把averun拷到~bbs/bin下并在~bbs/下建立cron.bbs,加入以下内容:    0,5,10,15,20,25,30,35,45,50,55****/usr/bin/uptime>>\     /home/bbs/reclog/uptime.log   57****/home/bbs/bin/averun/home/bbs/reclog/uptime.log;/bin/rm\     /home/bbs/reclog/uptime.log   560***/bin/mv/home/bbs/0Announce/bbslist/today\     /home/bbs/0Announce/bbslist/yesterday;/bin/rm/home/bbs/reclog/ave.src    ※为方便阅读,太长的命令用""\""断开,切成两行,实作时请务必写成一行,并     将""\""拿掉。    再来用bbs的身份login,建立/home/bbs/reclog的目录,这个目录是用来存   放累计用的资料,之後再进入BBS的精华区,在精华区主目录下,开一个目录叫   bbslist(用g功能),在bbslist的目录之下建两个档案,一个叫today(今日   上站人数统计),另一个叫yesterday(昨日上站人数统计),然後离开BBS,切到   ~bbs/目录下,用bbs身份下:      %crontabcron.bbs    以後电脑就会自动更新这两个档的内容。  [3]上站人次统计    请至~bbssrc/util/local_utl下,修改account.c108行附近有关站名的中文   部份,然後执行:       %makeaccount    再把accountcopy到~bbs/bin下,接著进入BBS,在bbslist目录下开两个   档,一个叫countusr(今日上站人次统计),一个叫countusr.last昨日上站人   次统计),内容先空白。然後修改~bbs/cron.bbs,加入如下内容:    0,5,10,15,20,25,30,35,40,45,50,55****/home/bbs/bin/account   00***/bin/cp/home/bbs/0Announce/bbslist/countusr\     /home/bbs/0Announce/bbslist/countusr.last    ※上述指令中,原本采用mv,会造成每天晚上12:00以後进不去的问题,所以     改用cp指令。    之後在~bbs/目录下,以bbs身份下crontabcron.bbs就做完上站人数的自   动统计功能了。  [4]上站次数,发表文章次数,使用时间排名    请至~bbssrc/util/local_utl下执行:      %makebbstop    再把bbstopcopy到~bbs/bin下,进入BBS,至精华区bbslist目录下开四   个档,分别是toplogin(上站次数排行),toppost(post次数排行),topstay(使   用时间排行),topall(总积分排行),然後修改~bbs/cron.bbs的内容,加入如   下叙述:    00***/home/bbs/bin/bbstop/home/bbs501>\     /home/bbs/0Announce/bbslist/toplogin   00***/home/bbs/bin/bbstop/home/bbs502>\     /home/bbs/0Announce/bbslist/toppost   00***/home/bbs/bin/bbstop/home/bbs503>\     /home/bbs/0Announce/bbslist/topstay   00***/home/bbs/bin/bbstop/home/bbs504>\     /home/bbs/0Announce/bbslist/topall    在~bbs/目录下,以bbs身份下crontabcron.bbs以後电脑就会自动更新这   四个档的内容。  [5]十大热门话题统计    请至~bbssrc/util/local_utl执行:      %makepoststat    再把poststat拷至~bbs/bin,建立~bbs/etc/posts目录(owner为bbs)进入   BBS,在bbslist目录下开四个新档day,week,month,year;分别是本日十大   热门话题,本周十大热门话题.....。然後用bbs的身份把~bbs/etc/posts下   的对映档link至这(即在~bbs/etc/posts下指令:    rm~bbs/0Announce/bbslist/day;ln-sday~bbs/0Announce/bbslist/day    其馀依此类推。再修改~bbs/cron.bbs加入如下叙述:    10****/home/bbs/bin/poststat/home/bbs    在~bbs/目录以bbs身份下crontabcron.bbs,之後每小时会做一次统计。注   意!只要某板有设ReadorPost限制,那个板便不列入统计,所以一般板请勿   设ReadorPost限制。  [6]讨论区使用率统计    请至~bbssrc/util/local_utl目录下:      %makeusage    把usage拷至~bbs/bin下,再进入BBS,在精华区bbslist目录下建两个档   board1(图表式的讨论区使用率统计),board2(文字式的讨论区使用率统计),再   修改~bbs/cron.bbs加入:    15****/home/bbs/bin/usage0;/home/bbs/bin/usage1    在~bbs/目录以bbs身份下crontabcron.bbs即可。  [7]使用者生肖、星座统计    到~bbssrc/util/local_utl执行:      %makehoroscope    把horoscope拷至~bbs/bin下,再进入BBS,在精华区bbslist目录下建两   个档:counthoro(星座统计),countani(生肖统计),再修改~bbs/cron.bbs加   入:    0****/home/bbs/bin/horoscope    在~bbs/目录以bbs身份下crontabcron.bbs即可。  [8]观看.PASSWDS的程式--showuser.c    showuser.c这支程式。可以把.PASSWDS的资料列出来。先至~bbssrc下如下   指令:      %makeshowuser    再将showuser拷至~bbs/bin下,只要下如下指令:      %showuser~bbs/.PASSWDSi8n12r12m30u8    即可列出使用者的各项资料,详细参数执行showuser便有说明。  [9]Lynx,Gopherclient,MJ..etc安装    1.Lynx的安装     Lynx功能定义於特别服务选单的@WWW,这个功能选项会去执行~bbs/bin/\     www.sh,只要在www.sh中执行lynx即可。(lynx是一种只有文字介面的浏     览器。请特别注意,lynx必需先经修改,不能让使用者有更改编辑器设定的选     项,也不能让使用者可以进入shell,以免系统被侵入,如果你对这方面不熟,     请先至转信installbbs板询问清楚再安装此功能。)    2.ArchieClient的安装     Gopher功能定义於网路功能选单的@ExecArchie,这个功能选项内定会去执行     ~bbs/bin/archie.sh。archieclient程式可以由以下位址取得:     ftp://ftp.firebird.org.tw/pub/Firebird/add-ons/archie-1.4.1.tar.gz    3.IRCClient的安装     IRC功能定义於网路功能选单的@ExecIRC,这个功能选项内定会去执行~bbs/\     bin/irc.sh,只要在irc.sh中执行irc即可。     irc程式可以到ftp://ftp.firebird.org.tw/pub/firebird/add-ons/\     ircii-2.8.tar.gz,请自行阅读内附说明安装至贵站系统中。    4.POP3D的安装     POP3D可以让BBS使用者通过POP3Client,如NetscapeMail,Micorsoft     Outlook,Eudora等等,离线阅读他们在BBS信箱内的信件。要使用pop3d     请到~bbssrc/util/local_utl执行makebbspop3d,接著把编出来的bbspop3d     放在适当地方(如/home/bbs/bin)再以root执行之。您必需以root来执     行,一旦执行後便会常驻了,可考虑把它设定成开机自动执行。    5.bbs-fingerd的安装    fingerd可以让使用者透过fingerclient(port79)来查看BBS站的线上使    用者,或query个人资讯,就好像在站上query使用者一样。要使用fingerd    请到~bbssrc/util/fingerd里执行make,接著把fingerd档放置到适当地方    ,例如~bbs/bin,或/usr/local/bin。请注意,因为这个程式占用了port79    的fingerport,请您务必要用root执行,并请勿更改档案权限,否则程式会    无法执行。且执行前请先确定系统中有无其他fingerd或其他程式正使用port    79,若有bbs-fingerd无法bindport79,将不会作用。  —————————————————————————————————————           第五章 寄信给BBS站内使用者及E-mailPost安装—————————————————————————————————————    这章所要安装的是最难处理的sendmail的设定修改,因为各OS以及sendmail   的版本都会有所差异,所以本章只能大略的说明一般性的安装流程,如果安装有   问题,请将完整退信内容,及~bbs/bbslog档案内的讯息张贴至转信installbbs   板求助。 [1]身份确认信处理的流程    本板FB3.0在使用者注册後,便会以SYSOP.bbs的身份发身份确认信给使用者   的E-mail位址处,当使用者收到信件後,直接reply信件,将确认信回寄给原   发信者SYSOP.bbs,便可通过身份确认(使用暗码认证无须此步动作)。如果我们   详细的解说其流程则是如下所示:    send:   =====   SYSOP.bbsmailtouser->sendmail(bbs)->sendmail(user)->user    receive:   ========   usermailtoSYSOP.bbs=>sendmail(user)=>sendmail(bbs)=>   mailtoSYSOP->bbsmail->mail2bbs->SYSOP.bbs    一般未修改过的sendmail.cf并不接受收信者为xxx.bbs的型式,所以主要要   更改的就是这个部份。以下[2]便说明如何修改,请特别注意!对sendmail.cf   而言,空白与TAB是不同的东西(虽然看起来好像一样),请仔细参阅说明更改。  [2]如何修改系统使BBS站内User能收到Intermail    1.请至~bbssrc/util/mail2bbs,编辑Makefile,查看DomainName与一些档     案的路径是否有误,修正後,以root身份在该目录下打make,如没遇到错误     ,系统会自动把编译出的档案拷背到/home/bbs/bin中,您可到~bbs/bin中     查看是否有bbsmailmailgate.plmail2bbs等程式。    2.修改/etc/sendmail.cf     sendmail.cf中的Rule可分为三段,第一个段是检查进来的信件header某     部分是否符合该Rule,如果是,就交给第二段做转换,不是就pass给下一个     Rule,直到信被收进来或退回;而第三段是注解或错误讯息,方便使用者了解     这个Rule的动作。注意!Rule的每一段以Tab分开,不可偷懒用空白。      随便一个rule来做介绍:      R$*                    $:$>Parse0$1         initialparsing        ^^^^^^^^^^^^^^^^^^^^^             ^^^^^^^^^^     ""R$*""是第一段,""$:$>Parse0$1""是第二段,initialparsing是注解。这     三段中间用^^^^^^标示的部分需以Tab分开。      以下开始介绍要修改的地方。      找寻下面的段落: R$*                    $:$>Parse0$1         initialparsingR<@>                   $#local$:<@>         specialcaseerrormsgs     在这两行中间加入下面几行: #挡拨接线路来的广告信啦!R$*dialup$*$|$*      $#error$@5.7.1$:""noaccessfromdialupsystem""R$+ts$+hinet$+$|$*   $#error$@5.7.1$:""Byebye,HiNetdialupuser...""#BBSmailer(这行是注解)R$+.bbs<@$=w.>    $#bbsmail$:$1        bbsmailgateway     找寻下面段落: #handlelocallydeliverednamesR$=L                   $#local$:@$1        speciallocalnamesR$+                    $#local$:$1          regularlocalnames     在这两行中间加入下面两行: #BBSmailer(这行是注解)R$+.bbs                $#bbsmail$:$1        bbsmailgateway     找寻下面段落: #####################################################  LocalandProgramMailerspecification  #####################################################     其後加入: Mbbsmail,      P=/home/bbs/bin/bbsmail,F=lsSDFMuhP,S=10,R=20,               A=bbsmail-d$u     ※再次强调,rule的三个栏位须以Tab隔开,不是Space!    3.测试改好的sendmal.cf      执行sendmail-C/etc/sendmail.cf-bt       >0SYSOP.bbs       rewrite:ruleset  0  input:SYSOP.bbs       rewrite:ruleset199  input:SYSOP.bbs       rewrite:ruleset199returns:SYSOP.bbs       rewrite:ruleset 98  input:SYSOP.bbs       rewrite:ruleset 98returns:SYSOP.bbs       rewrite:ruleset198  input:SYSOP.bbs       rewrite:ruleset198returns:$#bbsmail$:SYSOP       rewrite:ruleset  0returns:$#bbsmail$:SYSOP      若最後不会refer到bbsmail,检查是否如上2.所示加入所属rule,并确     实以Tab区隔栏位。    4.执行kill-1`cat/var/run/sendmail.pid`重跑sendmail。      修改完/etc/sendmail.cf後,kill-1`cat/var/run/sendmail.pid`,这样     系统便会重新启动sendmail并读入刚刚设定的/etc/sendmail.cf。请执行:        #ps-ax|grepsendmail      如果有看到sendmail:acceptingconnectionsonport25等字眼就代表你     的mail2bbs已经装好了!赶快寄一封信到你的bbs信箱试试看吧!BBS的信     件格式是YourID.bbs@YourBBS.Domain.Name。  [3]E-mailpost安装及使用    注意!此方法因为有些安全上的问题,故不建议使用,我们正研究替代方案中!    E-mailpost的安装只是利用原先sendmail就提供的forward信件功能,将寄   给bbs这个帐号的信件,经程式处理後转贴至BBS站上。因mailpost与下一   章的news转信程式combine在一起,需一起安装,因此以下同时介绍两者的安   装方式:    1.以bbslogin先至~bbssrc/util/innbbsd/下,编辑Makefile,查看前面几     行设定是否有误,然後执行make;makeinstall,这样即可装好。    2.在~bbs/下编辑.forward档内容,加入如下内容:       ""|/home/bbs/innd/mailpost/home/bbs""      请注意!!双引号的部份也要写入档案中    3.确定已在/etc/shells中加上bbs的shell。    4.写一篇测试用的mail叫email_test,档头一开始是       #name:user-id      #password:user-password      #board:board-name      #title:article-tile      #localpost:          <---如果有加这行此篇文章便不转信出去      (空一行)      ...............      ...............      然後mailbbs@your-domain-name<email_test看看E-mailpost是否正常    5.检查~bbs/bbslog,看看是否内容像      postto/home/bbs/boards/board-name/M.820143515.A     ...........................................      就完成E-mailPost安装了!    注:在~bbssrc/doc/examples目录下有修改好的sendmail.cf档供参考喔!  —————————————————————————————————————                     第六章 转信程式INNBBSD的安装—————————————————————————————————————    转信程式的设定会随贵站所需的转信方式而有所不同,本章只简介安装INNBBSD   这套转信程式的方法,并只介绍client读取抓信方式的转信设定,其馀的设定   请参考~bbssrc/util/innbbsd/README的说明。    FB3的INNBBSD内含bbsnnrp档信系统,预设是关闭的,如果您有需要,请参   照~bbssrc/util/innbbsd/README.antispam来自己设定您的设定档。  [1]安装转信程式    安装方式请参阅上一章最後一节mailpost的说明,在此不赘述。  [2]设定转信所需的设定档    1.在~bbs/innd修改如下的几个档案(最好使用vi来做)      [bbsname.bbs]      JCPP <---与你在执行configure时写的BBSID一样。      [nodelist.bbs ]      csie     news.csie.nctu.edu.tw          POST(119)      Csie     JCPP     sexboy.Dorm12.nctu.edu.tw      IHAVE(7777)    CobaBBS     ^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^      ^^^^^^^^^^^    ^^^^^^^^     BBSID    你的BBShostname              转信方式       注解      这个档案描述了NewsServer的Domain与NewsServer的代号的对映表,     例如:news.csie.nctu.edu.tw->csie     而POST(119)代表使用nnrpaccess的方式(跟tin很像),IHAVE(7777)则     代表贵站使用port7777的innbbsd来收信。其中BBSID千万不要跟别站相     同,以免会有信件回流的误判。      [newsfeeds.bbs]      tw.bbs.test              test           csie      请按照~bbssrc/doc/TW_NewsGroup_List的参考文件,将想转的Newsgroups     写在第一栏,而第二栏写的是要转进贵站的那个板名(请先建立好),而第三栏     则是写明这个Newsgroup是从那个NewsServer转进,以後送信时便会送到     那里。      [csie.active]      tw.bbs.test              0000000000     0000000001     y      csie.active则是定义要从那个NewsServer抓那些groups,对於每个News     Server都要建立一个对映的activeFile(例如:以上只有从csie抓,所以     只需有一个activefile,档名则自定)。後面两个0000000000则是active     number,以後会随著每次抓信动作而更新。也就是记录抓信抓到那了!    2.写好这些档案後,以bbs身份在~bbs/innd下执行innbbsd,或以root将     innbbsd写入/etc/inetd.conf以inetd启动设定方式如下:      innbbsdstream tcp   wait  bbs  /home/bbs/innd/innbbsdinnbbsd-i      再执行ctlinnbbsdreload(重读设定档)。      ※写入/etc/inetd.conf的方式不建议用。    3.现在测试抓信,以bbs身份在~bbs/innd下打:      ./bbsnnrpnews.csie.nctu.edu.tw  ./csie.active               ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^               到那个NewsServer抓  对映的activeFile      再进入BBS观看信件是否转入。    4.现在测试送信,以bbs身份在~bbs/innd下打:      bbslink-v/home/bbs      观看送信过程是否有error,再setenvNNTPSERVER=news.cise.nctu.edu.tw     用tin-r连至NewsServer的tw.bbs.test讨论区,检查信件是否送出!    5.转信程式非常敏感,请勿用bbs以外的身份来跑innbbsd,bbsnnrp,bbslink     ...etc之类的程式,会造成BBS系统无法正常运作。    6.本板之程式,将所有欲送出的信件先统一放入一记录档,当执行bbslink时,     便可免除逐步搜寻讨论区寻找新信件的麻烦,如贵站之前已有装过innbbsd,     请务必改用FB3packages中附的innbbsd程式。    7.转信送信均正常後,可将bbsnnrp&bbslink的动作写入crontab中。 [3]申请转信的方法    不论是用主动抓信或由上游NewsServer□信,皆以离贵站最近的NewsServer   为佳。以上的转信范例皆以交大资工的NewsServer为例,不过因为这台load   很重,建议另寻别台。当贵站所要转进的Newsgroups很多时,建议改采server   feed的方式,不要用bbsnnrp抓信。申请转信可以参考下一节说明,直接mail   给管理者申请。 [5]自动砍信程式介绍    FB3.0以後采用用C改写後的expire来取代原先效能低落的perl程式,该   程式位於~bbs/bin中,设定档在~bbs/etc/expire.ctl,你可以在BBS的管理   选单中利用「编辑系统档案」功能直接编修各板上限,各种设定方法与使用方法"
     
     
     此篇日记共有0个评论
         
     
     
首页 最新日记 佳作推荐 最新日记本 日记本排行 日记搜索 管理日记 服务中心