元は1ページの長い文章でしたので、文章が続かない場合はメニューに戻って頭から読んで下さい。
回線が 100Mbpsになったのは良いが、GATE01のメールサーバは 2MBまでしか送受信できない制限がある。
これでは困る事があるので、メールサーバを立てる事にした。
ついでに、FTPや BINDも入れて、色々できるようにしたい。
メールサーバと言う性質上、24時間稼働させなければならない。
ワンルームでそれをしようと思うと、ファンレスパソコンでもなければ、うるさくて眠れない。
ファンレスパソを買おうかと思ったが、そんなお金があるならグラフィッカーに CGを描いてもらう方が良い。
そこで、余っているパソを台所で稼働させる事にした。
長い LANケーブルと、長い電源タップを買うだけで OKだ。
余っているパソに、余っている 30GBの HDDを付ける事にした。
このパソには CDドライブが付いていないので、メインパソの脱着式 HDDを抜いて、そこでインストール作業を行う。
但し、この場合には問題点があって、Linux OSだと他のパソでの起動は難しくなる。
そこで FreeBSD4.7をインストールする。こいつは比較的他のパソへ持っていっても起動するからだ。
カスタムインストールでビシバシ設定しながら進める(私はプロです)
今まで不思議に思っていた事を、マイサーバだからやってみる。
LABEL設定で、どうして /と /usrと /varを分けるんだろうか?
全部 /にした方が、全体の容量だけを気にすれば良いので便利だろう。
と言うわけで、そうした。
あ、カーネルソースは必ず入れて下さい。
カーネルの再構築を行わないと、ムダな CPU&メモリパワーを食います。
高性能サーバなら、それでも大した問題にはなりませんけれど(^^;
インストールが終わったら、サーバにするパソに戻して起動する。
順調に起動して……来ない(:_;)
Mounting root from ufs:/dev/ad2s1a Root mount failed: 6
あれ? なぜ ad2なの?
インストールしたパソはオンボード RAIDの為に、通常の IDEスロットは ad2, ad3になるらしかった。
ここは落ち着いて ad0を指定してやる。
mountroot> ufs:/dev/ad0s1a
そうすると、ちゃんと起動して来ました(^_^)
まずは、/etc/fstabを調整しましょう。
ad2を ad0に直すだけです。あ、CDドライブは全部先頭に #を付けてコメントアウトしておきます(ドライブ付いて無いから)
シングルユーザーモードで起動されているので、shutdown -r nowでリブートし、マルチユーザーモードにします。
/etc/rc.conf内の、ifconfigを編集します。
うちのは、Intelサウスチップのオンボード LANですので、fxpです。
分からない人は、コマンドラインから ifconfigコマンドを実行してみましょう。普通は一番上に表示されるのが LANカードです。
ifconfig_fxp0_alias0="inet 192.168.1.1 netmask 255.255.255.0"
次にインターネットへのルーティング設定をします。
defaultrouter="NO"と書かれている部分に、ゲートウェイIPを記述します。
defaultrouter="192.168.1.254"
簡単ですね。
あ、そうそう IPアドレスをローカルと決めて書きましたが、どんな事情があってもサーバはルータ内に設置して下さい。簡単にハッキングされると、世界中の人が迷惑します。
再起動して、設定を反映して完了です。
まずは、セキュリティホールが発生する可能性のあるデーモンを全てオフにします。
・/etc/resolv.conf
nfs_reserved_port_only="NO"
sendmail_enable="NO"
sshd_enable="NO"
usbd_enable="NO"
・/etc/defaults/rc.conf
inetd_enable="NO"
sendmail_enable="NONE"
sendmail_submit_enable="NO"
sendmail_outbound_enable="NO"
sendmail_msp_queue_enable="NO"
え? こんな事したら何もできなくなるって?
この状態で、ゆっくりコンソールからセキュリティホールが無いように設定すれば良いのですよ。
言うまでもありませんが、リモート操作の人は sshを NOにしないように(どうしようも無くなりますから(^^;)
セキュリティホールの心配が小さくなった(無くなったわけではないので注意!)ところで、カーネルの再構築を行います。
/sys/i386/conf/内に移動して、GENERICをコピーし、LINTを参考にしながら書き替え。
コマンドで書くと、こんな手順ですね。
cd /sys/i386/conf cp GENERIC orgkernel vi orgkernel config orgkernel cd ../../compile/orgkernel make depend make make install
まぁ、FreeBSDの一般常識なので、こんな事はみんな暗記していますよね?(^^;
ススッと終わらせて先へ進みましょう。
※調子に乗りすぎた場合(笑)
カーネルをいぢりすぎて起動しなくなった場合の救済方法です。
1. 起動途中で数字がカウントダウンしている時にスペースキーを叩く
2.unloadコマンドを叩く
3.load kernel.GENERIC
4.boot
これで、GENERICカーネル起動する事ができます。
※カーネルコンパイルがコケるようになった場合
1. cd /usr/src/sys/compile
2. rm -rf カーネルコンフィグ名
にて、コンパイル済みファイルを全て削除してから、最初からやり直すと良い。
ルーターの外のパソコンからサーバーへアクセスしてみる。FTPでも Webでも何でも良い。
それからサーバーで以下のコマンドを実行してみる。
netstat -n
Foreign Addressは正しくアクセスを行ったパソコンのものになっているだろうか?
安物のルーターの場合、ルーターに割り振った IPが表示される事がある。
もしルーターの IPが表示されていたら、IP制限が行えないので無い方がマシである。
取り外すか、買い換えるかしよう。