FreeBSD2.2.8を自宅の自作DOS/V機にインストール





自作DOS/V機にインストール

ハードスペック
HDD4G
Memory40M
Pentium133MHz

LANカード2枚 ルータの実験をするため
ISA NE2000コンパチ
PCI 10/100BASE 両用タイプ

2GにWin95、残りの2GにBSD2.2.8をインストールする。

BSDパーティション
/    50M
swap  80M  実メモリーの2倍
/var  300M
/home  300M
/usr  残り


サーバのサービスには、Webサーバ、proxyサーバ、mailサーバ、
FTP、TELNETが利用することを可能にしてます。

Webサーバには、apache1.3.11、php3.0.15-i18n-ja、mysql-3.22-gamma
をインストールしてあります。
phpとmysqlを利用したサービスも可能。

Webサーバインストール方法
mysql、apache、php、zlib、gdを同時にインストールする、
スクリプトは以下のとおりです。
#!/bin/sh
#mysql
cd /usr/src
tar zxvf mysql-3.22.15-gamma.tar.gz
cd mysql-3.22.15-gamma
./configure -with-charset=sjis
make
make install
scripts/mysql_install_db
cd ../
tar zxvf zlib-1.1.3.tar.gz
cd zlib-1.1.3
make
make install
cd ../
tar zxvf gd-1.8.2.tar.gz
cd gd-1.8.2
make
cd ../
tar zxvf apache_1.3.11.tar.gz
cd apache_1.3.11
./configure
cd ../
tar zxvf php-3.0.15-i18n-ja.tar.gz
cd php-3.0.15-i18n-ja
./configure --with-mysql --with-gd=../gd-1.8.2 --with-apache=../apache_1.3.11 --enable-i18n --enable-mbregex --enable-track-vars
make
make install
cp /usr/src/gd-1.8.2/libgd.a /usr/src/apache_1.3.11/src/modules/php3/libgd.a


別のファイルにして、続きのスクリプトです。
一部、手入力の場所あり。

#!/bin/sh
cd apache_1.3.11/src
ee Configuration.tmpl      ここで、エディタが起動して、apacheのproxy設定をする
cd ../
./configure --activate-module=src/modules/php3/libphp3.a
make
make install
cp /usr/src/php-3.0.15-i18n-ja/php3.ini-dist /usr/src/local/lib/php3.ini
cd /usr/local/apache/conf
mcopy a:httpd.conf httpd.conf  すでに、proxy変更済みのhttpd.confをコピー
cd /usr/local/etc/rc.d
mcopy a:mysql.sh         mysqlを起動させるスクリプトをコピー
chmod 755 mysql.sh
cd /usr/local/apache/htdocs
mcopy a:test-p~1.pht test-php.phtml  phpのテスト用ファイルをコピー


Configuration.tmplファイルの中で、
# Module proxy_module  mod_proxy.o
という行を探して、最初の#を取り除く。


httpd.confの設定変更場所
Proxy Serverというところを探して、
ProxyRequests On
Onに変更しします。
CacheRootの設定、キャッシュファイルを含むディレトクリを指定します。


mysqlを起動させるスクリプトの中身
/sbin/ldconfig -m /usr/local/lib/mysql
if [ -x /usr/local/bin/safe_mysqld ]
then
        /usr/local/bin/safe_mysqld > /dev/null & && echo -n ' mysql'
fi


phpテスト用ファイルの中身
<?
  phpinfo();
?>


proxyサーバには、squidとapacheの両方が可能。
squidについては、学校サーバのプロキシサーバの設定と同じ要領。


mailサーバは、qpopper2.53を利用してます。
#!/bin/sh
zcat qpopper2.53.tar.Z |tar xf -
cd qpopper2.53
./configure
make
install -c -s popper /usr/local/libexec/popper
cd /etc
ee inetd.conf    #pop3の行を探して、最初の#を取り除く。


ネットワークチェック用にtrafshowとntopをインストール
trafshowをインストール前にカーネルの再構築が必要。
カーネル設定ファイルに下記の1行を追加します。
pseudo-device bpfilter 4

カーネルを再構築後、再起動しスーパーユーザになって、
以下のように入力していきます。
#cd /dev
#./MAKEDEV bpf0 bpf1 bpf2 bpf3

後は次のスクリプトを実行します。
#!/bin/sh
#trafshow
zcat libpcap-0.4.tar.Z | tar -xpvf -
cd libpcap-0.4
./configure
make
cd ../
tar zxvfp trafshow-3.1.tgz
cd trafshow-3.1
./configure
make
make install

実行は、スーパーユーザになって、
#/usr/local/bin/trafshow

trafshowは実行マシンへのアクセスが多い順に
相手先のアドレスを表示する。


ntopのインストール用スクリプト
tar zxvfp ntop-1.1-src.tar.gz
cd ntop-1.1
./configure
make
make install

実行は、
%/usr/local/sbin/ntop -w 3000 &

wwwブラウザで確認するには、http://実行マシンアドレス:3000/
とアドレスを入れると見ることができます。

ntopは自分のいるネットワーク全体の状況を表やグラフにして、
それぞれをwwwブラウザで見えるようにします。
ntopをwwwブラウザで確認画面1
ntopをwwwブラウザで確認画面2


ネットワーク上の他のマシンをバーチャル的に操作する事も
できるVNCをインストールするスクリプトです。
#!/bin/sh
tar zxvf vnc-3_3_3_unixsrc.tgz
cd vnc_unixsrc
xmkmf
make World
cd Xvnc
make World
cd ..
./vncinstall /usr/local/bin
mkdir -p /usr/local/vnc/classes
cp classes/* /usr/local/vnc/classes