★ 一台主機上架二個 BBS 站 ★

  一、安裝作業系統
  二、下載 BBS 程式
  三、建立 BBS 帳號
  四、安裝 BBS
  五、設定 BBS 環境 -- (A)如果有 inetd【FreeBSD】
  五、設定 BBS 環境 -- (B)如果有 xinetd【Linux】
  五、設定 BBS 環境 -- (C)如果沒有 inetd/xinetd
  六、其他設定
  七、享用您自己的 BBS


    本文件是寫給要安裝 itoc 所維護的 bbs 程式版本所使用的,並不適用
  其他 bbs 版本。

  
  一、安裝作業系統

    我想這步驟,您應該已經完成了。

  
  二、下載 BBS 程式

    在 http://home.pchome.com.tw/soho/itoc/ 可以找到最新的程式版本,
  應該長得像 MapleBBS-3.10-20yymmdd-PACK.tgz 這樣的檔名,這是主程式。

  
  三、建立 BBS 帳號

    以 root 身分登入。

  -root- # vipw
           如果您是 FreeBSD 的話,在最後一行加上
           bbs2:*:9998:98::0:0:BBS2 Administrator:/home/bbs2:/bin/tcsh
           如果您是 Linux 的話,在最後一行加上
           bbs2:x:9998:998:BBS2 Administrator:/home/bbs2:/bin/tcsh
           (當然您也可以用 pw 或 useradd 的指令來完成相同的動作)

  -root- # joe /etc/group
           (假設編輯器是 joe,如果不是的話,請自行改變)
           如果您是 FreeBSD 的話,在最後一行加上
           bbs2:*:998:bbs2
           如果您是 Linux 的話,在最後一行加上
           bbs2:*:998:bbs2
           (當然您也可以用 pw 或 groupadd 的指令來完成相同的動作)

  -root- # passwd bbs2
           輸入 bbs2 的密碼

  -root- # tar xvfz /tmp/MapleBBS-3.10-20yymmdd-PACK.tgz -C /tmp/
           mv -f /tmp/bbs /home/bbs2
           假設您把 BBS 程式檔案放在 /tmp/

  -root- # chown -R bbs2:bbs2 /home/bbs2

  
  四、安裝 BBS

    以 bbs2 身分登入。

  -bbs2- % joe /home/bbs2/src/include/config.h

           (A) 修改 HOST_ALIASES,把您所有的 fqdn 都加進去

#define HOST_ALIASES    {MYHOSTNAME, MYIPADDR, \
                         "wolf.twbbs.org", "wolf.twbbs.org.tw", \
                         NULL}

           (B) 如果您是 FreeBSD 的話,改 BBSGID 為 98
               如果您是 Linux 的話,改 BBSGID 為 998

#define BBSGID          98                      /* Linux 請設為 998 */

           (C) 修改 BBSHOME 及 BAKPATH

#define BBSHOME         "/home/bbs2"            /* BBS 的家 */
#define BAKPATH         "/home/bbs2/bak"        /* 備份檔的路徑 */

           (D) 修改 port 及 shm/sem key,數字不要和已有的服務相衝

#define MAX_BBSDPORT    1       /* bbsd 要開幾個 port,隨 BBSD_PORT 而變 */
#define BBSD_PORT       {3023}  /* bbsd   所用的 port (bbsd.c) */
#define BMTA_PORT       3025    /* SMTP   所用的 port (bmtad.c) */
#define POP3_PORT       3110    /* POP3   所用的 port (bpop3d.c) */
#define GEMD_PORT       3070    /* Gopher 所用的 port (gemd.c) */
#define FINGER_PORT     3079    /* Finger 所用的 port (bguard.c) */
#define CHAT_PORT       6838    /* 聊天室 所用的 port (chat.c xchatd.c) */
#define INNBBS_PORT     "8888"  /* 轉信   所用的 port (channel.c) */

#define BRDSHM_KEY     12997    /* 看板 */
#define UTMPSHM_KEY    11998    /* 使用者 */
#define FILMSHM_KEY    12999    /* 動態看板 */
#define PIPSHM_KEY     14998    /* 電子雞對戰 */

#define BSEM_KEY       12000    /* semaphore key */

  -bbs2- % joe /home/bbs2/bin/install.sh
           修改 schoolname bbsname ... msg_bmw 等數項,例如改成以下這樣
           (請注意不要有空白或是[]符號)

schoolname="太陽星系"
bbsname="火星樂園"
bbsname2="Solar.Mars.BBS"
sysopnick="戰神馬斯"
tag_valid="MarsBBS"
myipaddr="200.100.50.25"
myhostname="solarmars.twbbs.org"
bbs_token="Mars"
msg_bmw="火球"

          如果您是使用 Linux 的話,還要改

ostype="linux"

  -bbs2- % /home/bbs2/bin/install.sh
           您需要等待一段時間來完成編譯

  -bbs2- % rm -f /home/bbs2/bin/install.sh
           sed 用過一次以後就沒用了,那就跟它說聲再見吧

  -bbs2- % crontab /home/bbs2/doc/crontab
           把 doc/crontab 的內容加入 crontab

  
  五、設定 BBS 環境 -- (A)如果有 inetd

    如果沒有 /etc/inetd.conf 這檔案,請跳到五(B),通常 FreeBSD 應該有
  inetd 才對。

    以 root 身分登入。

  -root- # joe /etc/inetd.conf
           加入以下數行
#
# MapleBBS2
#
telnet2  stream  tcp     wait    bbs2    /home/bbs2/bin/bbsd      bbsd -i
finger2  stream  tcp     wait    bbs2    /home/bbs2/bin/bguard    bguard -i
pop32    stream  tcp     wait    bbs2    /home/bbs2/bin/bpop3d    bpop3d -i
gopher2  stream  tcp     wait    bbs2    /home/bbs2/bin/gemd      gemd -i
smtp2    stream  tcp     wait    bbs2    /home/bbs2/bin/bmtad     bmtad -i
xchat2   stream  tcp     wait    bbs2    /home/bbs2/bin/xchatd    xchatd -i
bbsnntp2 stream  tcp     wait    bbs2    /home/bbs2/innd/innbbsd  innbbsd -i

  -root- # joe /etc/rc.d/rc.local
           加入以下數行

#
# MapleBBS2
#
su bbs2 -c '/home/bbs2/bin/camera'
su bbs2 -c '/home/bbs2/bin/account'

  
  五、設定 BBS 環境 -- (B)如果有 xinetd

    如果沒有 /etc/xinetd.d/ 這目錄,請跳到五(C),通常 Linux 應該有
  xinetd 才對。

    以 root 身分登入。

  -root- # joe /etc/xinetd.d/telnet2

service telnet2
{
        disable         = no
        flags           = REUSE
        socket_type     = stream
        wait            = yes
        user            = bbs2
        server          = /home/bbs2/bin/bbsd
        server_args     = -i
}

  -root- # joe /etc/xinetd.d/xchat2

service xchat2
{
        disable         = no
        flags           = REUSE
        socket_type     = stream
        wait            = yes
        user            = bbs2
        server          = /home/bbs2/bin/xchatd
        server_args     = -i
}

  -root- # joe /etc/xinetd.d/bbsnntp2

service bbsnntp2
{
        disable         = no
        flags           = REUSE
        socket_type     = stream
        wait            = yes
        user            = bbs2
        server          = /home/bbs2/innd/innbbsd
        server_args     = -i
}

  -root- # joe /etc/xinetd.d/pop32

service pop32
{
        disable         = no
        socket_type     = stream
        wait            = yes
        user            = bbs2
        server          = /home/bbs2/bin/bpop3d
        server_args     = -i
}

  -root- # joe /etc/xinetd.d/finger2

service finger2
{
        disable         = no
        socket_type     = stream
        wait            = yes
        user            = bbs2
        server          = /home/bbs2/bin/bguard
        server_args     = -i
}

  -root- # joe /etc/xinetd.d/smtp2

service smtp2
{
        disable         = no
        socket_type     = stream
        wait            = yes
        user            = bbs2
        server          = /home/bbs2/bin/bmtad
        server_args     = -i
}

  -root- # joe /etc/xinetd.d/gopher2

service gopher2
{
        disable         = no
        flags           = REUSE
        socket_type     = stream
        wait            = yes
        user            = bbs2
        server          = /home/bbs2/bin/gemd
        server_args     = -i
}

  -root- # joe /etc/rc.local
           加入以下數行

#
# MapleBBS2
#
su bbs2 -c '/home/bbs2/bin/camera'
su bbs2 -c '/home/bbs2/bin/account'

  
  五、設定 BBS 環境 -- (C)如果沒有 inetd/xinetd

    沒 inetd 也沒 xinetd,改用 standalone 啟動

    以 root 身分登入。

  -root- # joe /etc/rc.local
           加入以下數行

#
# MapleBBS2
#
/home/bbs2/bin/bbsd
/home/bbs2/bin/bmtad
/home/bbs2/bin/bpop3d
/home/bbs2/bin/gemd
/home/bbs2/bin/bguard
/home/bbs2/bin/xchatd
/home/bbs2/innd/innbbsd

su bbs2 -c '/home/bbs2/bin/camera'
su bbs2 -c '/home/bbs2/bin/account'

  
  六、其他設定

  以 root 身分登入。

  -root- # joe /etc/services
           加入以下數行

telnet2         3023/tcp                # 第二個BBS
xchat           6838/tcp
xchat           6838/udp
bbsnntp         8888/tcp   usenet       #Network News Transfer Protocol
bbsnntp         8888/udp   usenet       #Network News Transfer Protocol

  -root- # reboot
           重開機吧

  
  七、享用您自己的 BBS

    您的 BBS2 應該已經架好了,試著 telnet 看看,那就這樣好好享用吧。

--
                                                    交大電子 杜宇軒
                               E-Mail: itoc.bbs@bbs.tnfsh.tn.edu.tw
                           WWW: http://home.pchome.com.tw/soho/itoc