サーバーOSはFreeBSD 4.4-RELEASEを使用しているが、セキュリティーの関係もあり、最新のOSにバージョンアップしたいと思っている。しかし、肝心の5系列であるが5.2になってもstableにならず、次の5.3まで待たなければならないようである。
しかし、その前に4系列が4.10まで進んでいるので、stableをmake worldを使用して導入してみた。しかし、時間がかかった割にはsshがデフォルトで使えない、qpopperが消えてしまった等であまり芳しくない。
結局、素からクリーンインストールすることにした。
CD-ROM用イメージは下記サイトにあるのでftpで引っ張ってくる。ftpも
CDRへの焼き込みもWinPCで行った。
ftp://ftp.freebsd.org/pub/FreeBSD/ISO-IMAGES-i386/4.10/
サイトには以下のファイルが置いてある。
05/17/2004 12:23午前 680,394,752 4.10-RC3-i386-disc1.iso
05/17/2004 12:24午前 284,393,472 4.10-RC3-i386-disc2.iso
05/17/2004 12:18午前 257,196,032 4.10-RC3-i386-miniinst.iso
今回は、miniinst.isoだけをダウンロードしてCDRへの焼き込み、ブート用に使い、インストール自体はftpサイトから行うことにした。
disc1.isoでCD-ROMを作ればとりあえず、CD-ROMだけでインストールが出来るようである。
インストール自体はノートラブルで終了した。リブートするとデフォルトでsshdとsendmail他が立ち上がっていた。LAN内のWinPCからtelnet代わりのsshで問題なくアクセスできたので、これ以降はWinPCからリモート操作する。
環境整備はメールサーバ、LAN内ftpサーバ、Webサーバ、ipf他で現用の4.4Rと同じ環境を4.10で再現する。
/etc/inetd.confに
#pop3 stream tcp nowait root /usr/local/libexec/popper popper
とあったので、#を外せばpopが使えると思いこんでしまった。
しかし、デフォルトではpopperはインストールされておらず、別途、インストールする必要があると気付くまでにかなり時間がかかってしまった。
当たり前であるがこれではLAN内のPCからpopができない。
popは外部公開していないので4.4Rでも使用したqpopperを使うことにしてportsからインストールした。inetdから起動させるので/etc/hosts.allowにアクセスできる範囲を記述しておく。
sendmail関係の設定ファイル、freebsd.mc、submit.mcは4.4Rで使っていたものをコピー・ペーストして/etc/mailに格納した。
このあたりは以前、sendmailのバージョンアップ"を行ったときのメモが役立った。
ここまでできたら、試験メールをやりとりしてsmtp25とpop110が動作していることを確認し、不正中継をしないかhttp://www.abuse.net/relay.htmlでチェックすると全項目、無事パスした。4.10で使われているsendmailは最新の8.12.11である。
ftpはLAN内でWebサーバーのコンテンツをメンテするだけにしか使用しない。4.10にはデフォルトでftpdが入っているので/etc/inetd.confの当該個所をコメントアウトするだけで使用できる。
#ftp stream tcp nowait root /usr/libexec/ftpd ftpd -l
inetdから起動させるので/etc/hosts.allowにアクセスできる範囲を記述しておく。
4.4Rでも使っていたapache1.3.29をpackageからインストールした。apacheはセキュリテーバグが見つかることが多いので、ソースからコンパイルしてインストールした方が後々のアップデートが容易であるが、今回はとりあえずpackageを採用した。カウンタープログラムはこれも4.4Rで使っていたwwwcounterをこちらはソースからインストールした。ただし、カウンター値を格納するファイルのパーミッションを777にしないと動作しなかった。
こちらもapacheのバージョンアップを行ったときのメモが役立った。
その後、apacheの最新バージョン1.3.31がリリースされた。セキュリテイー確保のためには最新バージョンにしておいた方が好ましいので、packageで導入したapache1.3.29を削除してソースからapache1.3.31をインストールした。
ipfも4.4Rと同じ手順で構築できた。しかし、ルールファイルに flags S/SA を記述すると通るべきものが通らなくなってしまった。そのため、それを全て外して記述した。
最後にfreebsd-updateを導入してとりあえず完成である。
今後、4系列がどこまでメンテされるか不明であるが、5系列が未だにsatbleになつていないのでしばらくは期待できそうである。セキュリティーパッチにfreebsd-updateがどれだけ有効なのか興味があるところである。