M3-WindTop-DreamBBS 架設過程記錄 @@ - BBS

Lauren avatar
By Lauren
at 2017-07-23T12:34

Table of Contents

首先感謝眾前輩們無私分享這些 source code 以及不少參考文件

這邊只是就可以try成功的部分做個記錄


作業系統環境

CentOS 5 ~ 7 32-bit 下應該都可以裝起來 ( 7 要裝 Alt-Arch 版本 )

Debian GNU/Linux 下目前還沒有編譯成功@@ , 還在嘗試orz


大致快速安裝步驟
(直接拿 Maple3-itoc 的部分針對不同處修改)


1. 安裝作業系統及相關環境:

作業系統部分前面提過了,
套件部分則建議先裝好 openssh-server nano vim make gcc git xinetd 等程式


2. 建立 BBS 帳號:

目前自己打算先嘗試把相關的帳號建立好, 以避免之後權限問題

於是就按照手冊該部分的方式

$ sudo su -

== 以下用 root 權限 !! ==

# mkdir /home/bbs
# vipw


我是用 Linux , 所以在最後一行加上:

> -----

bbs:x:9999:994:BBS Administrator:/home/bbs:/bin/bash

> -----

(為求保險起見跟 /etc/passwd 裡列出其他使用者的格式一樣)
(要注意 GID 是否與檔案裡其他提到的使用者重複, 以免出現權限問題)


接下來編輯 /etc/group 來增加 bbs 群組, 自己目前是用 vim 編輯
若對類似編輯器介面不熟也可用 nano 編輯

# vim /etc/group

在該檔最後一行加上:

> -----

bbs:x:994:bbs

> -----
(為求保險起見跟 /etc/group 裡列出其他使用者的格式一樣)
(要注意 GID 是否與檔案裡其他提到的使用者重複, 以免出現權限問題)



然後設定 bbs(管理員) 的密碼

# passwd bbs

記得將 bbs 的家目錄擁有者設定成它自己

# chown -R bbs:bbs /home/bbs

主機帳戶部分設定完成!



3. 下載 BBS 程式:

== 以下用 bbs 的權限即可!! ==

$ cd /home/bbs; git clone https://github.com/ccns/dreamlandbbs
$ cd dreamlandbbs

進去 dreamlandbbs 目錄
會看到除了 README.md 和 .gitignore 以外

裡面有分二個部分:
src web

src 裡面的東西是我們主要要編譯安裝的 BBS 主程式原始碼

web 部分則是現行該版本BBS採用的網頁前端相關檔案 (此部分安裝暫不記錄@@)


4. git 版控環境初始化設定:

我已經有github帳號了並有該 repo 的 commit 權限了,
所以我先將自己的git環境設定好

$ git config --global user.name ""
$ git config --global user.email "@bbs.ptt.cc"

之後若要自行開發改良裡面的 code , 就可用 git 指令進行版本控制

並在必要時自己先另外開 branch 測試/建立debug環境 了


5. 接著將範例裡的設定檔複製到 src/include/ 目錄裡後,
進入 src/ 開始準備設定與編譯:

$ cp sample/config.h src/include/


接著編輯 include/config.h 檔案:
(採用 lantw44 的建議, 使vim猜編碼只有 Big5 這種選擇)

$ vim -c 'set fencs=big5' -c 'e!' src/include/config.h


設定完之後, 先不要急著make, 而是先將bbs裡相關的結構配置好

目前 sample/bbs 的範例目錄
還是套用 WindTopBBS-3.02-20040420-SNAP 的架構

若發現有不合之處, 請成功執行程式後, 再自行調整修改:

$ cp -r sample/bbs/* ~/;cp sample/bbs/.* ~/

接著就開始編譯囉!

$ cd src/; make clean linux install; cd ../

目前測試是在 CentOS 32bit 環境下 (Debian GNU/Linux下還沒編譯成功)
如果相關變數都有定義到的會應該就是可以順利編譯完成


然後記得系統執行正常排程:
$ crontab sample/crontab

(裡面的設定調整還有很多還沒整理,
建議自行檢視裡面的設定是否符合需求, 以及自己調整裡面一些程式的執行路徑)

至於在設定bbs執行環境的部分

在啟動 bbsd 主程式前, 請務必先相關程式先啟動

$ /home/bbs/bin/camera
$ /home/bbs/bin/account
$ /home/bbs/bin/acpro
$ /home/bbs/bin/makefw

或是自行拿 sample/sh 裡面的 start.sh 這個 shell script 去執行也可以

之後要提供 port 23 的 telnet 連線的話, 請用 root 權限執行:

# /home/bbs/bin/bbsd

即可, 若要提供連線的 port 編號 > 3000, 則以 bbs 權限執行即可, 如:

$ /home/bbs/bin/bbsd 3456

之後開機自動執行的部分, 可以參考 sample/sh/start.sh 的內容

自己建立 /etc/rc.loacl 檔案寫進去:

> -----

#! /bin/sh
# MapleBBS-WindTop-DreamBBS

su -c bbs '/home/bbs/bin/camera'
su -c bbs '/home/bbs/bin/account'
su -c bbs '/home/bbs/bin/acpro'
su -c bbs '/home/bbs/bin/makefw'

> -----

並讓 rc.local 的權限設定為「可執行」(+x)


其他部分因為目前只想先提供telnet連線

所以若要裝 xinetd 可照以下設定

(安裝xinetd套件後, 將以下內容複製到 /etc/xinetd.d/telnet 裡[原本無此檔案])

> ----

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


> ----


或 standalone 啟動: 將 /etc/rc.local 的內容再加上:

> ----

su -c bbs '/home/bbs/bin/bbsd 3456' # 大於3000的備用port可這樣設定
/home/bbs/bin/bbsd # port 23 請直接用 root 權限啟動

> ----

理論上之後外面就可以連進來自己啟動的 BBS 程式了。


但要注意 CentOS 作業系統內是否有 firewalld iptables 等防火牆設定擋住連線

若有請自己參閱相關資料進行設定。

自己是先:

# firewall-cmd --zone=public --permanent --add-port=23/tcp
# firewall-cmd --zone=public --permanent --add-port=3456/tcp

之後直接重新啟動:

# service firewalld restart

即可完成相關防火牆設定


以上為大致安裝記錄敘述, 若有其他補充, 將會以回文方式,


或是在 github 上更新相關文件:
https://github.com/ccns/dreamlandbbs

(其他開發中的 branch 也可以參考一下@@)

歡迎有興趣者路過參考並提出相關建議 :)

--
你知道PTT有小天使嗎? 能幫助你唷! 小主人我來了^Q^
●β
HELP 想呼叫屬於你的使嗎? /
` 〈○〉 ▃▃▃ 只要按hh,就可以了唷!! Δ
>_<~
// ▅▅▅ 快按下"hh"呼叫你的小天使吧!\(≧▽ν≦)ωgarnier

--
Tags: BBS

All Comments

Eartha avatar
By Eartha
at 2017-07-26T18:38
其實在 Linux 上用 useradd / groupadd 應該比 vipw 容易
Frederica avatar
By Frederica
at 2017-07-30T00:43
也是@@ 還會自動檢查UID/GID能不能用+幫忙設定不少東西
Erin avatar
By Erin
at 2017-08-02T06:48
然後如果動vipw太大意,把root的資料改掉又儲存登出
就...

登入後立刻斷線

Lauren avatar
By Lauren
at 2017-07-15T23:58
如題, OS 是 Ubuntu 10.04.2 LTS Maple_itoc 版本應該是 NTHU CS MapleBBS Ver 3.10 站址是 telnet://catholic.twbbs.org 不知何時起變成一登入就會斷線 已經重新安裝 make clean linux install ...

請教chromecast訪客模式的問題

Ida avatar
By Ida
at 2017-06-28T16:16
最近買了chromecast,但遇到一個問題,就是訪客模式是不是 每次都要用手機去開啟,因為每次要投放的時候都找不到投放的那個按鈕, 只能去連接chromecast連接的那個wifi,才能投放畫面, 所以想請問是不是我有什麼地方沒操作,才會遇到這種狀況, 希望版上的大大們能幫我解惑,謝謝各位 PS:手機發文 ...

Maple3-itoc 目前架設待解決問題 (Debian)

Caroline avatar
By Caroline
at 2017-06-20T13:26
1. 還沒成功在 64bit 下編譯 之後會嘗試: → lantw44:可以嘗試編成 32 位元的可執行檔 08/14 21:37 → lantw44:CFLAGS 加上 -m32 LDFLAGS 加上 -melf_i386 08/14 21:38 → tjjh89017:請問是在哪裡加上參數? 08/1 ...

Maple3-itoc 近期架站記錄心得

Una avatar
By Una
at 2017-06-16T17:33
因為我已經fork好並改成我要的架構了 所以以下內容將修正: ※ 引述《holishing ()》之銘言: : 3. 下載 BBS 程式: : 我目前是用 git 套件指令把維護者放在 github 的資料載下來 : (在此之前請先用 apt 或 yum 之類的去安裝 git 套件) : # apt in ...

Maple3-itoc 近期架站記錄心得

Tristan Cohan avatar
By Tristan Cohan
at 2017-06-15T23:49
目前還沒有很熟, 只有到讓它順利跑起來, 可以開帳號, 開看板, 發文的程度 但看板人氣還是會顯示負幾萬的程度 其他更進階hack的招式相信相對資訊已經非常多了, google 應該很好用 不然就去相關類型的站台逛逛也可 官方說明手冊: http://processor.tfcis.org/~itoc ...