作者holishing ()
看板Maple
标题[心得] M3-WindTop-DreamBBS 架设过程记录 @@
时间Sun Jul 23 12:34:00 2017
首先感谢众前辈们无私分享这些 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
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 140.116.101.37
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Maple/M.1500784445.A.74B.html
※ 编辑: holishing (140.116.101.37), 07/24/2017 03:51:09
1F:→ lantw44: 其实在 Linux 上用 useradd / groupadd 应该比 vipw 容易 07/24 22:44
2F:→ holishing: 也是@@ 还会自动检查UID/GID能不能用+帮忙设定不少东西 07/25 03:49
修连结
※ 编辑: holishing (140.116.101.37), 08/02/2017 18:30:27
3F:→ holishing: 然後如果动vipw太大意,把root的资料改掉又储存登出 08/13 01:55
4F:→ holishing: 就... 08/13 01:55