ע ļ˱̨վ Firebird BBS 3.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] Զ login BBS ʺŰװ 
                          [9] BBSnet, Lynx, Archie client, IRC..etcװ 
  
                        () Ÿ BBS վʹ߼ E-mail Post װ 
  
                          [1] ȷŴ 
                          [2] ޸ϵͳʹ BBS վ User յ Intermail 
                          [3] E-mail post װʹ 
  
                        () תųʽ INNBBSD İװ 
  
                          [1] װתųʽ 
                          [2] 趨ת趨 
                          [3] תŵķ 
                          [4] οļ [֪ News Server б] 
                          [5] Զųʽ expire  
  
  
 
                              ǰ 
 
  
    Ǵ FPUG ( Firebird Power User Group ) Ƴ FB3.0 1003 SNAP 
    չһ֧֧ AddWater BBS վվ  deardragon 
      GNU 忪Ÿɿʹá޸ġ 

    ʵʵҪԭе Firebird BBS ṹ˼ĸĶ
    ˲΢ܣҼ˴ʵõĹܣϵͳ
    ߡ
  
    濪ôץȡĿϣø Firebird ϵеվཻ̨ 
    ˼棬һ뷢չʹ Firebird BBS зøӵľƾ 
  
     BSD Licence ·Уڲ޸ԭ֮Ȩ£λ⿽ 
    ޸ġиССҪ󣬾һЩ޸ģ 
    ӹܣرչС飬 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 -g 999 bbs   
            
    Ȼٽһ bbs û 
            
            [root@bbs /root]# adduser -u 9999 -g bbs bbs   
            
     󣬼ʾ bbs û bbs û ID  9999 Ȼ㻹ҪΪ
     bbs û룬ǣ
     
            [root@bbs /root]# passwd bbs
            
     Ȼ޸ /etc/group ļ bbs 뵽 bbs:x:999: ĺ棬ʹ֮Ϊ
     bbs:x:999:bbs ½ʺŵĲϵͳͬв죬ڽʺ֮
     ǰοϵͳֲᡣ UID 9999 ԭΪ˱һʹߵ
      UID ͻ 
  
    һ㽨ʺź󣬿 /etc/passwd пµݣ 
  
      bbs:x:9999:999::/home/bbs:/bin/bash 
  
    Ŀǰ FB2000 Ѿϳ bbsrfԲٿ bbsbbsuser ʺţֻ
      һʺ( bbs )ɡ bbs ר޸ĳϵͳʺš
  
    Ϊ bbs Դ򴴽Ŀ¼ bbssrc , bbs
    
              [root@bbs /root]#  mkdir /home/bbssrc ; mkdir /home/bbs
              [root@bbs /root]#  chown bbs.bbs bbssrc bbs
              
    ϲ root ִеġ
  
  
 [2] ȡ BBS ʽ 
  
     bbs ½ϵͳץȡ BBS source source λַȡã 
  
      http://fb2000.dhs.org/download/FB2000v0918.tar.gz
  
    ȡ,⿪ FB2000v0918.tar.gz ԭʼʽԽаװ 
    ⿪ FB2000v0918.tar.gz ķ: 
  
      [bbs@bbs bbs]$ cd /home 
      [bbs@bbs bbs]$ tar zxvf FB2000v0918.tar.gz
  
    
 [3] 趨װ BBS 
  
    1.ֶ趨 
  
     bbs login༭ bbssrc/include/functions.hһЩ bbs  
    ҪܣҪ򿪻رաĿǰ FB3 Ԥʹ bbsdbbsrf Ѿ 
    ϳ
  
    2.Զ趨ϵͳдҪ BBS  
  
    ͬ bbs login bbssrc/ Ŀ¼ִָ 
  
      % ./configure 
  
    ִеĹӦ»棺 
  
 .................................. 
   Please fill data for your BBS 
   дվص BBS .
 .................................. 
Home directory of BBS --> [/home/bbs]                   ==> bbs Ŀ¼ 
UID of BBS --> [9999]                                   ==> bbs ϵͳ UID 
USER of BBS --> [bbs]					==> bbs ϵͳʺ
GID of BBS --> [999]                                    ==> bbs ϵͳ GID
GROUP of BBS --> [bbs]					==> bbs ϵͳ 
The ID of your site --> [AddWaterBBS]                	==> վӢĴ 
The name of your site --> [ˮվ]                  ==> վ (Ŀ) 
The domain name of your site --> [some.where.on.earth]  ==> վ domain name 
The IP address of your site --> [127.0.0.1]             ==> վ IP address 
The Default board of your site, only change it if upgrading 
from old system with different default board --> [sysop]==> Ԥ迴 
Maximum number of users --> [20236]                     ==> ʹ 
Maximum number of boards --> [256]                      ==> Ŀ 
Maximum number of on-line users --> [256]               ==> ͬʱ 
Show idle time of BBS users ? --> [Y]                   ==> ʾ idle ʱ 
Use DLM ? --> [Y]					==> ʹö̬ģ
Make bbs users invisible (-DINVISIBLE) ? --> [N]        ==> Ƿдϵͳ utmp 
PLEASE CHOOSE THIS CAREFULLY 
Is libcrypt "DES" correct? --> [Y]                      ==> 뷽ʽ 
........................................ 
updating cache ./config.cache 
creating ./config.status 
creating Makefile 
creating config.h 
creating Install.sh 
  
........................................................................ 
You may review the Makefile now. Then, type 'make' to build your system. 
........................................................................ 
  
    趨һЩֵʱȷпӲ豸Ƿ㹻֧šرͬʱ 
    ĴСǳйصġ 
  
    ʹ FreeBSDעϵͳ뷽ʽ MD5  DES
     BBS ϵͳ FB2000ѡ񣬱ʹ DESûװĻ 
    Ȱװ DES ᣬִ configure 
  
    ʽԶжõϵͳѯ BBS ֮ϣ 
    Ҫ Makefile˳ĻӦÿ bbssrc/ Ŀ¼ҵմ 
    MakefileԹۿ˵趨бҪֶ޸֮ 
  
     bbssrc/include ҵ config.h ڱʽ֮ǰɶ 
    һЩֶ޸ġͬһĿ¼¿ҵ chat.h , ڴ˸ 
    ҵƺ port number 
  
    һҪעĵط bbssrc/src/Makefile Уи EXTRADEF Ķ壬 
     -DWITHOUT_ADMIN_TOOLSͲ SYSOP õ 
    ϵͳʽԽʡ壬Դ BBS Ч 
  
  
    3. BBS ʽ 
  
     bbs 룬 bbssrc/ ִָ 
  
      [bbs@bbs bbs]$ make 
  
    б붯޴Ļbbssrc/src Ŀ¼Ӧû bbsd( 
    bbs), chatd Լ thread ִе⼸ѲĻ BBS  
    ʽıѾɡ 
  
    Ϊκ error  BBS ʽ޷Ļȼ鰲װǷд 
    Ȼ¡޷ɽ̲ѶϢˮվ BBSdev
     
  
    4.װ BBS ʽ 
  
     bbs login /home/bbssrc Ŀ¼ִУ 
  
      # make install 
  
    ɴ󹦸ɡռɵ ££ վ 
  
  
 [4]  BBS ʽų 
  
    1.ǰ׼ 
  
      ִУ
      [root@bbs /root]$ /home/bbs/bin/bbsd 2000 
  
     2000 ָ BBS ˿ںš port .˷ BBS ʱ
    Ϳͨ telnet your.server.id 2000  bbs  Ȼport
    ϲ port Ҫ port 23ȹصϵͳԭе 
    telnetdص telnetd ķʽο˵ļ˽ڡ 
  
          Ҫʹϵͳԭе port 23 صϵͳԭе 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          # previous in.telnetd daemon

              趨ɵ telnetd port 赽 2300޸
                ϲ port ֣裬 54321
              ֣㽫ϵͳ telnetd ˿  number ô
                 ȱʡ telnet ʹ port number ʹ telnet ½
                 ʹ 23 port ʱҪΪؼ϶Էʹõ
                 port 磺½ˮվtelnet 210.38.240.158 23

         3).ִָҳ inetd  PID

               [root@bbs /root]$ ps -ax |grep "inetd"

             ִָͿ inetd (ؿҲ)

               [root@bbs /root] kill -HUP (PID)


    2.ԣ££Ӳȡ SYSOP Ȩ 
  
    ϵͳ shell ʹ telnet localhost port ½ bbs СӦ
    ɼ BBS Ľվ档ʱ BBS ʽҪʱ new
    ԱעһʹߡΪ SYSOP ʹӵһȨ
    ע SYSOP趨롣 
  
    ע⡿SYSOP ȫΪдĸ 

    ע⣺½ SYSOP ʺֻ bbs ϣ½ bbs 
              ϣʹ telnet localhost port ½õһ,
		ֹ½ϣ 
		/home/bbssrc/include/functions.h θùܡ
 
    ע guest ʺţʺΪ BBS Ĳιʺţ뼴 
     BBS(עʱ뼴)ṩ guest ʺţԹ 
    裬ǵð guest  "ע֮ID" ڡṩ guest  
    ţοļ˵ guest 趨ǡôȨޡͨ guest  
    ֻܲι۲ɷԵģͨз»Ĺܡ 
  
    3.ų 

    첻Ըʽһؽˣ bbs ϵͳִ ipcs ָ
    鿴 shared memory, SHM ʹ owner Ƿȷ owner 
    Ӧ bbsǵĻ ipcrm ֮Ȼִ bbsͨ
     Error! shmat error! key = ooxx ѶϢ 
  
    ǲУ ~bbs/etc Ƿ menu.ini sysconf.ini  
    ǷĻɾ ~bbs/sysconf.img ½ 
     BBS ԡ 
  
    ǲеĻ BBS ϵͳ¿ٰװԡ 
    ûа취뵽 fb2000.dhs.org  BBSdev ߸ 
	dragon@fb2000.dhs.org дšڴرƼһΪӿ
    ·϶ʹ Firebird BBS 20000 ϵͳĹߣõӦĻ
    ϴ󡣵Ȼ֮ǰϵͳƽ̨õıԼֵ
    ѶϢѶӴҲװҳܷĵطȻ
    û˻شร
    ֣ڷǰǰǷ˻شͬ⡣
  
  
 [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.ini 
PERM_CHAT       = 0x00002                ʹ(С޸) 
PERM_PAGE       = 0x00004 
.......................... 
  
PERM_SPECIAL6   = 0x8000000 
PERM_SPECIAL7   = 0x10000000 
PERM_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_OBOARDS 
PERM_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 ڸ趨 (ѡΪ) 
  
  
%menu TOPMENU 
screen       3, 0, S1_MAIN 
                   ^^^^^^^ָǸ 
  
title        0, 0, "ӭٿվ(Coba BBS)       " 
             ^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ÿѡ 
             ӡ                           еı 
  
!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"  <-- r s Ϊ, ʱõ, r  s ԶΪ EGROUP6 
EGROUP7 = "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 
      ....          ....... 
  
    ðǰ board nameĴӳĿ¼磺 installbbs  
     x ʱFirebirdBBS ͻȥ ~bbs/0Announce/Linux/bbs µľ 
  
    ʱԶд˵ƽԼӣĿ¼иʱ 
    ǵ޸Ĵ˵ 
  
  
 [4] BBS Ŀ¼µ˵ 
  
    ˵ ~bbs Ŀ¼¸ҪĹܣĶԱܸƿعվ 
     
  
     Part I.Ҫϵ 
   
  1.BBS_HOME/.PASSWDS 
    ÿλʹߵĻϣ struct userec 
    ۿ˵, ο [7] ˵ 
  
  2.BBS_HOME/.BOARDS 
    Ļϣ struct boardheaderһ element.flag 
    ״
  
  3.BBS_HOME/Welcome Welcome.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 
    Ƽ˵ļ 
  
   Part II.ʹĿ¼ 
   
  BBS_HOME/home/A-Z/USERID/* 
  
  1.friends      ¼ struct friend  
  2.logout       ʹԶվ档 
  3.maillist     ŸһȺбĿǰɾ 
  4.notes        ˱¼ 
  5.plans        ˵ 
  6.signatures   ǩ 
  7.mailcheck    ȷݴ浵 
  8.register     ȷϼ¼ 
  
  Part III.ͶƱĿ¼ 
   
  BBS_HOME/vote/BOARDNAME/* 
  
  1.notes       (¼) 
  2.noterec     ¼ȡ 
  3.control     ͶƱƵ 
  4.desc.?????  ͶƱ 
  5.flag.?????  ʹͶƱ¼ 
  6.results     ͶƱ 
  7.secnotes    ܱ¼ 
  
  Part IV.ϵͳƵ 
   
  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   İ塣 
  
  ֻҪ junkboardsBBS ʹڴ˰巢¾ 
    ͳƣʺ춹ˮȡ 
  
 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) ʽ趨 
  
  趨汣µ޼޵ȡ 
  
  
  Part V.Ŀ¼ 
   
  BBS_HOME/boards/BOARDNAME/* 
  
  .DIR            ϵ 
  .DIGEST         ժϵ 
  .THREAD         ͬģʽϵ 
  M.123456789.A   ¡ 
  
 [5] 趨ʹ 
  
    FB 3.0 ĻµĻƣԴ notepad еժ 
    (ҲǱ g ) ѡ¼ĿҲиĳУɴ 
    include/functions.h 趨ǷӴΪ) 
  
    װһµϵͳʱԤ notepad 尲װ塣 
    ޸ģ FB 3.0 0614-SNAP ֮ǰ FB3 ʹߣ movie 
     shared-memory (shm key: 30030)ΪصϽṹ 
    վᱻ߳ 
  
    һܼ򵥣ֻҪһƪ notepad 壬ȻȥǸ 
    ¸¼ժ(֮ǰһ g)ȻվԷ ~bbs/trace 
    ¼µѶϢᣬֻҪ notepad ɾժĻͻ 
    »塣 
  
    ʽ¼ʱԶ 4 еĵͷȻץȡ 7 ( 5)  
      Ϊݣڻ±ϣ 
      Ƴʽĵڼпʼ¼Ϊ壬ֻҪĵһ 
      Ԫĳ $ȻڶԪҪк(0~9) 
  
      Ex: 
  
      $0   <-ӵĿʼ(ϵͳԤĻ弴ô˷) 
  
  
    » edwardc  Magic BBS 990424 ֲ 
  
  
 
                              ⲿ߳ʽʹ 
 
  
    Ҫǽ ~bbssrc/util µĳʽЩʽڰװ BBS ʽʱδ 
    װվҪο½ڵ˵װЩⲿʽ 
  
  
 [1] Զ 
  
    ɻ BBS ֮ᣬҪʼװ BBS ʽһЩӦóʽ 
    ЩӦóʽЩ 5 ӾҪһ, ЩǶʱÿ xx ʱ xx  
    ҪִĳЩȻÿζԼԲҪɵԶʱ 
    ΪִС±Ǽ򵥵ĽִԶķ 
  
    һԶĵݿģ 
  
0,30    8,9,10,11       *       *       *       /home/bbs/bin/account 
^^^^    ^^^^^^^^^       ^       ^       ^       ^^^^^^^^^^^^^^^^^^^^^ 
minute  hour         monthday month  weekday    command 
  
    Ȱдһ cron.bbsȻִУ 
  
      % crontab cron.bbs 
  
    ʱ User ָԶͻᱻϵͳСҪԶʱ 
    ȥ޸ cron.bbs Ȼִһ crontab cron.bbs ɡִ 
    crontab -l ȷһԶǷѼ롣ֵעǣ˭ִ crontab 
    cron.bbsԶͻ˭ԶУԶִгʽʱҲ 
    Ǹ˵ִСܵӦóʽҪ bbs  
    ִʱ crontab cron.bbsʱͱҪȷϴʱ bbs  
    ִУرע㡣 
  
  
 [2] վͳ 
  
    ȷǰִ configure ʱ Make bbs users invisible (-DINVISIBLE) 
    ѡʱѡ Nʱѡ Y޸ bbssrc/Makefile  -DINVISIBLE  
    ˣ֮ make update  bbs ʽ ~bbssrc/util/local_utl 
    £޸ averun.c  90 иΪվվָ 
  
      % make averun 
  
     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 
    56 0 * * * /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 £ 
  
      % crontab cron.bbs 
  
    ԾͻԶݡ 
  
  
 [3] վ˴ͳ 
  
     ~bbssrc/util/local_utl £޸ account.c 108 ийվ 
    ݣȻִУ 
  
       % make account 
  
    ٰ account copy  ~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 
    0 0 * * * /bin/cp /home/bbs/0Announce/bbslist/countusr \ 
      /home/bbs/0Announce/bbslist/countusr.last 
  
    ָУԭ mvÿ 12:00 ȥ⣬ 
       cp ָ 
  
    ֮ ~bbs/ Ŀ¼£ bbs  crontab cron.bbs վ 
    ͳƹˡ 
  
  
 [4] վ´ʹʱ 
  
     ~bbssrc/util/local_utl ִУ 
  
      % make bbstop 
  
    ٰ bbstop copy  ~bbs/bin £ BBS bbslist Ŀ¼¿ 
    ֱ toplogin(վ)toppost(post)topstay(ʹ 
    ʱ)topall(ܻ)Ȼ޸ ~bbs/cron.bbs ݣ 
     
  
    0 0 * * * /home/bbs/bin/bbstop /home/bbs 50 1 > \ 
      /home/bbs/0Announce/bbslist/toplogin 
    0 0 * * * /home/bbs/bin/bbstop /home/bbs 50 2 > \ 
      /home/bbs/0Announce/bbslist/toppost 
    0 0 * * * /home/bbs/bin/bbstop /home/bbs 50 3 > \ 
      /home/bbs/0Announce/bbslist/topstay 
    0 0 * * * /home/bbs/bin/bbstop /home/bbs 50 4 > \ 
      /home/bbs/0Announce/bbslist/topall 
  
     ~bbs/ Ŀ¼£ bbs  crontab cron.bbs ԾͻԶ 
    ĸݡ 
  
  
 [5] ʮŻͳ 
  
     ~bbssrc/util/local_utl ִУ 
  
      % make poststat 
  
    ٰ 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 -s day ~bbs/0Announce/bbslist/day 
  
    ơ޸ ~bbs/cron.bbs  
  
    10 * * * * /home/bbs/bin/poststat /home/bbs 
  
     ~bbs/ Ŀ¼ bbs  crontab cron.bbs֮ÿСʱһͳơע 
    ⣡ֻҪĳ Read or Post ƣǸ㲻ͳƣһ 
     Read or Post ơ 
  
  
 [6] ʹͳ 
  
     ~bbssrc/util/local_utl Ŀ¼£ 
  
      % make usage 
  
     usage  ~bbs/bin £ٽ BBSھ bbslist Ŀ¼½ 
    board1(ͼʽʹͳ)board2(ʽʹͳ) 
    ޸ ~bbs/cron.bbs 룺 
  
    15 * * * * /home/bbs/bin/usage 0 ; /home/bbs/bin/usage 1 
  
     ~bbs/ Ŀ¼ bbs  crontab cron.bbs ɡ 
  
  
 [7] ʹФͳ 
  
     ~bbssrc/util/local_utl ִУ 
  
      % make horoscope 
  
     horoscope  ~bbs/bin £ٽ BBSھ bbslist Ŀ¼½ 
    counthoro(ͳ)countani(Фͳ)޸ ~bbs/cron.bbs  
    룺 
  
    0 * * * * /home/bbs/bin/horoscope 
  
     ~bbs/ Ŀ¼ bbs  crontab cron.bbs ɡ 
  
  
 [8] ۿ .PASSWDS ĳʽ -- showuser.c 
  
    showuser.c ֧ʽ԰ .PASSWDS г ~bbssrc  
    ָ 
  
      % make showuser 
  
    ٽ showuser  ~bbs/bin £ֻҪָ 
  
      % showuser ~bbs/.PASSWDS i8 n12 r12 m30 u8 
  
    гʹߵĸϣϸִ showuser ˵ 
  
  
 [9] Lynx, Gopher client ,MJ..etcװ 
  
    1.Lynx İװ 
      Lynx ܶرѡ @WWWѡȥִ ~bbs/bin/ \ 
      www.shֻҪ www.sh ִ lynx ɡ(lynx һֻֽ 
      رע, lynx Ⱦ޸ģʹиı༭趨ѡ 
      Ҳʹ߿Խ shellϵͳ룬ⷽ治죬 
      ת installbbs ѯٰװ˹ܡ) 
  
    2.Archie Client İװ 
      Gopher ܶ·ѡ @ExecArchieѡڶȥִ 
      ~bbs/bin/archie.sharchie clientʽλַȡã 
      ftp://ftp.firebird.org.tw/pub/Firebird/add-ons/archie-1.4.1.tar.gz 
  
    3.IRC Client İװ 
      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 ʹͨ POP3 Client Netscape Mail, Micorsoft 
      Outlook, Eudora ȵȣĶ BBS ڵżҪʹ pop3d 
      뵽 ~bbssrc/util/local_utl ִ make bbspop3dѱ bbspop3d 
      ʵط ( /home/bbs/bin)  root ִ֮ root ִ 
      Уһ᳣ִפˣɿǰ趨ɿԶִС 
  
    5.bbs-fingerd İװ 
     fingerd ʹ͸ finger client (port 79) 鿴 BBS վʹ 
     ߣ query Ѷͺվ query ʹһҪʹ fingerd 
     뵽 ~bbssrc/util/fingerd ִ make fingerd õʵط 
      ~bbs/bin /usr/local/binע⣬Ϊʽռ port 79 
      finger portҪ rootִУĵȨޣʽ 
     ޷ִСִǰȷϵͳ fingerd ʽʹ port 
     79 bbs-fingerd ޷ bind port 79á 
  
  
 
                Ÿ BBS վʹ߼ E-mail Post װ 
 
  
    ҪװѴ sendmail 趨޸, Ϊ OS Լ sendmail 
    İ汾죬ԱֻܴԵ˵һԵİװ̣װ 
    ⣬뽫ݣ ~bbs/bbslog ڵѶϢתinstallbbs 
     
  
 [1] ȷŴ 
  
     FB 3.0 ʹעᣬ SYSOP.bbs ݷȷŸʹ 
     E-mail λַʹյżᣬֱ reply żȷŻؼĸԭ 
     SYSOP.bbsͨȷ(ʹð֤˲) 
    ϸĽ˵ʾ 
  
    send: 
    ===== 
    SYSOP.bbs mail to user -> sendmail (bbs) -> sendmail (user) -> user 
  
    receive: 
    ======== 
    user mail to SYSOP.bbs => sendmail (user) => sendmail (bbs) => 
    mail to SYSOP -> bbsmail -> mail2bbs -> SYSOP.bbs 
  
    һδ޸Ĺ sendmail.cf Ϊ xxx.bbs ʽҪҪ 
    ĵľݡ [2] ˵޸ģرע⣡ sendmail.cf 
    ԣհ TAB ǲͬĶ(Ȼһ)ϸ˵ġ 
  
  
 [2] ޸ϵͳʹ BBS վ User յ Intermail 
  
    1. ~bbssrc/util/mail2bbs༭ Makefile鿴 Domain Name һЩ 
      ·Ƿᣬ root ڸĿ¼´ makeû 
      ϵͳԶѱĵ /home/bbs/bin Уɵ ~bbs/bin  
      鿴Ƿ bbsmail mailgate.pl mail2bbs ȳʽ 
  
    2.޸ /etc/sendmail.cf 
      sendmail.cf е Rule ɷΪΣһǼż header ĳ 
      Ƿϸ RuleǣͽڶתǾ pass һ 
      Ruleֱűս˻أעѶϢʹ˽ 
       Rule Ķע⣡Rule ÿһ Tab ֿ͵ÿհס 
  
      һ rule ܣ 
  
      R$*                     $: $>Parse0 $1          initial parsing 
         ^^^^^^^^^^^^^^^^^^^^^              ^^^^^^^^^^ 
      "R$*" ǵһΣ"$: $>Parse0 $1" ǵڶΣinitial parsing ע⡣ 
      м ^^^^^^ ʾĲ Tab ֿ 
  
      ¿ʼҪ޸ĵĵط 
  
      ѰĶ䣺 
  
R$*                     $: $>Parse0 $1          initial parsing 
R<@>                    $#local $: <@>          special case error msgs 
  
  
    м漸У 
  
# ·Ĺ 
R$*dialup$* $| $*       $#error $@ 5.7.1 $: "no access from dialup system" 
R$+ts$+hinet$+ $| $*    $#error $@ 5.7.1 $: "Bye bye, HiNet dialup user..." 
# BBS mailer (ע) 
R$+.bbs < @ $=w . >     $#bbsmail $: $1         bbs mail gateway 
  
  
    Ѱ䣺 
  
# handle locally delivered names 
R$=L                    $#local $: @ $1         special local names 
R$+                     $#local $: $1           regular local names 
  
  
    мУ 
  
#BBS mailer (ע) 
R$+.bbs                 $#bbsmail $: $1         bbs mail gateway 
  
  
    Ѱ䣺 
  
################################################## 
###   Local and Program Mailer specification   ### 
################################################## 
  
  
    룺 
  
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 
        > 0 SYSOP.bbs 
        rewrite: ruleset   0   input: SYSOP . bbs 
        rewrite: ruleset 199   input: SYSOP . bbs 
        rewrite: ruleset 199 returns: SYSOP . bbs 
        rewrite: ruleset  98   input: SYSOP . bbs 
        rewrite: ruleset  98 returns: SYSOP . bbs 
        rewrite: ruleset 198   input: SYSOP . bbs 
        rewrite: ruleset 198 returns: $# bbsmail $: SYSOP 
        rewrite: ruleset   0 returns: $# 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|grep sendmail 
  
      п sendmail: accepting connections on port 25 ۾ʹ 
       mail2bbs ѾװˣϿһŵ bbs ԿɣBBS  
      ʽ YourID.bbs@YourBBS.Domain.Name 
  
  
 [3] E-mail post װʹ 
  
    ע⣡˷ΪЩȫϵ⣬ʲʹãоУ 
  
    E-mail post İװֻԭ sendmail ṩ forward żܣ 
     bbs ʺŵżʽת BBS վϡ mailpost һ 
    µ news תųʽ combine һһװͬʱߵİ 
    װʽ 
  
    1. bbs login  ~bbssrc/util/innbbsd/ £༭ Makefile鿴ǰ漸 
      趨ǷȻִ make; make installװá 
  
    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:           <---мдƪ±㲻תųȥ 
       (һ) 
       ............... 
       ............... 
  
      Ȼ mail bbs@your-domain-name < email_test  E-mail post Ƿ 
  
    5. ~bbs/bbslog , Ƿ 
  
      post to /home/bbs/boards/board-name/M.820143515.A 
      ........................................... 
  
       E-mail Post װˣ 
  
    ע ~bbssrc/doc/examples Ŀ¼޸ĺõ sendmail.cf οร 
  
  
 
                          תųʽ INNBBSD İװ 
 
  
    תųʽ趨վתŷʽֻͬ鰲װ INNBBSD 
    תųʽķֻ client ȡץŷʽת趨ŵ趨 
    ο ~bbssrc/util/innbbsd/README ˵ 
  
    FB 3  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)     Coba BBS 
      ^^^^      ^^^^^^^^^^^^^^^^^^^^^^^^^       ^^^^^^^^^^^     ^^^^^^^^ 
      BBSID      BBS hostname               תŷʽ        ע 
  
       News Server  Domain  News Server ĴŵĶӳ 
      : news.csie.nctu.edu.tw -> csie 
       POST(119) ʹ nnrp access ķʽ( tin )IHAVE(7777)  
      վʹ port 7777  innbbsd š BBSID ǧҪվ 
      ͬżС 
  
      [ newsfeeds.bbs ] 
  
      tw.bbs.test               test            csie 
  
      밴 ~bbssrc/doc/TW_NewsGroup_List Ĳοļת News groups 
      дڵһڶдҪתվǸ(Ƚ) 
      д News group ǴǸ News Server תʱ͵ 
       
  
      [ csie.active ] 
  
      tw.bbs.test               0000000000      0000000001      y 
  
      csie.active ǶҪǸ News Server ץЩ groupsÿ News 
      Server Ҫһӳ active File (磺ֻдcsie ץ 
      ֻһ active file , Զ) 0000000000  active 
      numberÿץŶ¡ҲǼ¼ץץˣ 
  
    2.дЩᣬ bbs  ~bbs/innd ִ innbbsd root  
      innbbsd д /etc/inetd.conf  inetd 趨ʽ£ 
  
      innbbsd stream  tcp    wait   bbs   /home/bbs/innd/innbbsd innbbsd -i 
  
      ִ ctlinnbbsd reload (ض趨) 
  
      д /etc/inetd.conf ķʽá 
  
    3.ڲץţ bbs  ~bbs/innd ´ 
  
      ./bbsnnrp news.csie.nctu.edu.tw   ./csie.active 
                ^^^^^^^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^ 
                Ǹ News Server ץ   ӳ active File 
  
      ٽ BBS ۿżǷת롣 
  
    4.ڲţ bbs  ~bbs/innd ´ 
  
      bbslink -v /home/bbs 
  
      ۿŹǷ error setenv NNTPSERVER=news.cise.nctu.edu.tw 
       tin -r  News Server  tw.bbs.test żǷͳ 
  
    5.תųʽǳУ bbs  innbbsd, bbsnnrp, bbslink 
      ...etc ֮ĳʽ BBS ϵͳ޷ 
  
    6.֮ʽͳżͳһһ¼ִ bbslink ʱ 
      ѰѰż鷳վ֮ǰװ innbbsd 
      ظ FB 3 packages и innbbsd ʽ 
  
    7.תžᣬɽ bbsnnrp & bbslink Ķд crontab С 
  
 [3] תŵķ 
  
    ץŻ News Server ţվ News Server 
    ΪѡϵתŷԽʹ News Server ΪΪ̨ load 
    أѰ̨վҪת News groups ܶʱĲ server 
    feed ķʽҪ bbsnnrp ץšתſԲοһ˵ֱ mail 
    롣 
  
 [5] Զųʽ 
  
    FB 3.0  C д expire ȡԭЧܵ perl ʽ 
    ʽλ ~bbs/bin У趨 ~bbs/etc/expire.ctl BBS Ĺ 
    ѡá༭ϵͳֱӱ޸ޣ趨ʹ÷ 

