稍微簡介一下,m0n0wall是一套防火牆系統,基於FreeBSD發展的微型化作業系統,作為NAT有比得上高級硬體防火牆的功能,而且只需要很低等級的電腦硬體就可以安裝使用了。
如果有興趣需要更進一步的內容,煩請請各位google一下了。
在這裡的重點,是將他繁體中文化。簡體的部分大陸有,請參閱
http://bbs.m0n0china.org

由於他是FreeBSD的系統,要變更內容,必須安裝一套FreeBSD才行。使用VMWare安裝FreeBSD 6.2,然後把從官網下載的generic-pc-1.236.img ftp到安裝好的FreeBSD中,開工。

1.建立工作資料夾
# cd $HOME
# mkdir devel
# mkdir devel/change
# mkdir devel/system
# cd devel

2.下載m0n0的映像檔,上傳到$HOME/devel資料夾下

3.解壓縮generic-pc-1.236.img
# mv generic-pc-1.236.img generic-pc-1.236.img.gz
# gzip -d generic-pc-1.236.img.gz

4.將m0n0的映像檔mount到作業系統
# mdconfig –a –t vnode –u 0 –f generic-pc-1.236.img
# mount /dev/md0 system/

5.複製m0n0的檔案資料到change資料夾。
# cp system/mfsroot.gz change/

6.卸載m0n0的映像檔
# umount system/
# mdconfig -d -u 0

7.解壓縮mfsroot.gz
# gzip -d change/mfsroot.gz

8.不能直接存取mfsroot,需將mfsroot mount到作業系統
# mdconfig -a -t vnode -u 0 -f change/mfsroot
# mount /dev/md0 system/

9.進入usr/local/www/,將這裡所有的*.php, *.inc檔案複製出來,然後中文化。
全部修改完後再 將所有網頁覆蓋到 /mnt/md0/usr/local/www
記得 從 Windows 過來要加一個 chmod +wxrxrxr *
不然等 iso 做好安裝好 看不到網頁

10.卸載映像檔
# cd $HOME/devel
# umount system/
# mdconfig -d -u 0

11.重新製作映像檔
# gzip -9 change/mfsroot
# mdconfig -a -t vnode -u 0 -f generic-pc-1.236.img
# mount /dev/md0a system/
# cp change/mfsroot.gz system/
# umount system/
# mdconfig -d -u 0
# gzip -9 generic-pc-1.236.img
# mv generic-pc-1.236.img.gz generic-pc-tc-1.236.img

12.登入m0n0,利用此新的映像檔,更新firmware。

以上參考
http://mail.lsps.tp.edu.tw/~gsyan/os/m0n0wall.html
http://www.pczone.com.tw/vbb3/thread/29/128871/
http://bbs.m0n0china.org/viewthread.php?action=printable&tid=12718

感覺m0n0對於其他的語言很不友善,例如BrazilFW,不同語言是另外的設定檔,只要翻譯、套用,就可以變更了,而m0n0直接寫在php裡,要中文化必須一個個php打開來編輯,而且也不能用poedit之類的翻譯軟體...
基於開放原始碼,在這裡也放了一份給需要的人,其中的字句有不宜之處,請不吝賜教。

下載

==========
2009-11-12更新
找了google,其實有更聰明的作法...
官網提供以下這支shell scripts,實在太聰明了...只要下指令
./workon.sh 映像檔名稱
就可以「開始工作」,修改完相關檔案,打exit 跳出shell就自動umount、壓縮...把上面所有的步驟一次搞定。
以下為程式碼

#!/bin/sh
# Instructions (as root)-- make a directory and put this script inside it.
# chmod +x workon.sh
# Download or copy an image file into the directory
# ./workon.sh wrap-1.11.img
# This will start your SHELL inside the mounted image.
# When you are done, type exit. This exits your SHELL and lets
# this script proceed (umount, gzip, etc).
# The image file now contains your changes (and is no longer signed).

# Set your shell -- /bin/csh will always work
SHELL=/usr/local/bin/bash
[ ! -x $SHELL ] && echo "${SHELL} not executable (try /bin/csh)" && exit 1

# No more edits

IMAGE=$1

# Make dirs
mkdir -p tmp; mkdir -p mnt1; mkdir -p mnt2

# Decompress IMAGE
gzip -dc < ${IMAGE} > tmp/${IMAGE}

# Mount IMAGE
mdconfig -a -t vnode -f tmp/${IMAGE} -u 90
mount /dev/md90a mnt1

# Decompress mfsroot
gzip -dc < mnt1/mfsroot.gz > tmp/${IMAGE}-mfsroot

# Mount mfsroot
mdconfig -a -t vnode -f tmp/${IMAGE}-mfsroot -u 91
mount /dev/md91 mnt2

# cd to 2nd mount and exec SHELL
cd mnt2
${SHELL}

# SHELL has exited -- clean up and compress
for vtmp in `find . | grep '~$'`; do
echo Removing: ${vtmp}
rm -f ${vtmp}
done
cd ../

umount mnt2
mdconfig -d -u 91

gzip -c9 < tmp/${IMAGE}-mfsroot > mnt1/mfsroot.gz
rm -f tmp/${IMAGE}-mfsroot

umount mnt1
mdconfig -d -u 90

gzip -c9 < tmp/${IMAGE} > ${IMAGE}
rm -f tmp/${IMAGE}

程式碼結束

直接下載:
workon.sh
小弟我就收下啦 ^^"

但我有一個問題,我在使用上不能設定[靜態]的IP,設定都存不進去。

不知道板大有沒有試過?

當時還在跟別人說有中文化的話,結果不能設定,當場三條線^^"

不過還是謝謝分享
是指wan的部分嗎?



如圖,類型選 靜態,然後在 靜態IP設置 裡輸入就行了。
2009-11-12更新
找了google,其實有更聰明的作法...
官網提供以下這支shell scripts,實在太聰明了...只要下指令
./workon.sh 映像檔名稱
就可以「開始工作」,修改完相關檔案,打exit 跳出shell就自動umount、壓縮...把上面所有的步驟一次搞定。
詳情請看原po
請問還有中文版可以下載嗎????版本不拘....希望是繁體的!!感謝您
一定要繁體的話,只有1.22這個澎湖縣網做的版本最好,但是很多新的機器都不能裝是缺點。
而且只有img檔,安裝的方法請自行google了~
下載
Dear plovea
謝謝您的幫忙,我終於找到了~~~~感激
再次請教,若是我 m0n0 後面接一個switch,switch後面再接一個switch2,那switch & switch2 兩個後面接的電腦,當使用頻寬平均後,會都依樣嗎???還是只有switch會被平均掉,而switch2 只當做一個電腦的頻寬?感謝您!!!
我不太記得1.22版本中是不是翻成「平均頻寬」了?應該「流量管理」的功能吧。
假設你接的設備都是switch hub 而不是單純hub,那麼不管下面接幾部,依照網路的原則,所有的電腦都分享到同樣的資源。
例如,流量管理限定流量10M,那麼所有的電腦都會分享這10M,m0n0的流量管理會把這10M平均分享給以下的電腦,不會讓任何一部獨佔。
謝謝大大說明,感覺起來比brazilfw有效率的感覺耶!!再次感謝~~~
文章分享
評分
評分
複製連結

今日熱門文章 網友點擊推薦!