000145:JIROのFreeBSD 5.3化計画 その3

その2でセキュリティ対策まで終了しました。
思えば、JIROのFreeBSD 5.3化計画ですが、今はSHIROで作業していますねぇ。

しかし、後々これがJIROになる作戦なのです。
さて、現在JIROで提供しているサービスは、以下のものがあります。

  • Web (Apache)
    • Wiki (PukiWiki)
    • BBS (Cyclamen)
    • AWSTATS
    • htmllint (Another HTMLlint)
  • DNS (djbdns)
    • for Outside (tinydns)
    • for Inside (tinydns)
    • cache (dnscache)
  • SMTP/POP3 (qmail+vpopmail)
  • Database (MySQL)
    • phpMyAdmin
  • samba (ja-samba)
なんだか、色々やってますね。

Apacheのインストール
まずは、Apacheから行きましょう。
ここでも、TAKE-LABO.JPさんのお世話になります。
(参照:http://sakura.take-labo.jp/freebsd/www_apache13.html
/usr/local/etc/apache/httpd.confの設定は、TAKE-LABO.JPさんの情報を参考に、山中家用にアレンジします。
コンテンツの移行については、別の機会にしましょう。
メインサイトのサブディレクトリ的に運用している一部のコンテンツを、別サイトに移す予定です。

sambaのインストール
まぁ、色々な作業をWindowsパソコンからも行うので、sambaは先にやってしまいましょう。
さて、
[root@shiro]/usr/ports# portinstall japanese/samba
ってやってみたところ、どうもsambaに整数型のオーバーフローが起こる問題があったようで、portauditに警告されました。
(参考:http://www.freebsd.org/ports/portaudit/3b3676be-52e1-11d9-a9e7-0001020eed82.html
TAKE-LABO.JPさんの手順でインストールを進めてきたので、助かったというわけですね。
ま、ここは深く考えず、
[root@shiro]/usr/ports#portinstall japanese/samba3

としました。
あとは

[root@shiro]/usr/ports# cd /usr/local/etc/
[root@shiro]/usr/local/etc# cp smb.conf.default smb.conf
[root@shiro]/usr/local/etc# ee smb.conf
てな感じで。
  • workgroup
  • server string
  • hosts allow
  • 共有の作成
その後、/etc/rc.conf に samba_enable="YES" を追加して再起動しました。

djbdnsの設定
メールの運用を移行する前に、DNSを設定して動作確認しておかないといけませんね。
DNSはLAN用のDNSとDNSキャッシュ、インターネット向けのDNSを設定します。
FreeBSD-AT RANDOMさんを参考に作業していきます。
(参考:http://www.f-bell.net/FreeBSD/djbdns.html

daemontoolsのインストール
[root@shiro]/usr/ports# portinstall sysutils/daemontools
/etc/rc.confに、2行追加
svscan_enable="YES"
svscan_servicedir="/var/service"
それと、
[root@shiro]/usr/ports# mkdir /var/service

djbdnsのインストール
vipwでDNS用のユーザーを追加します。あと、グループも。

そして、

[root@shiro]/usr/ports# portinstall dns/djbdns
でOK。

tinydnsの設定
まず、内向き、外向きの設定をしましょう。
[root@shiro]/usr/ports# tinydns-conf tinydns dnslog /usr/local/etc/tinydns-i 192.168.1.5
[root@shiro]/usr/ports# cd /usr/local/etc/tinydns-i/root
[root@shiro]/usr/local/etc/tinydns-i/root# ee data
[root@shiro]/usr/local/etc/tinydns-i/root# make
[root@shiro]/usr/ports# tinydns-conf tinydns dnslog /usr/local/etc/tinydns-o 192.168.1.205
[root@shiro]/usr/ports# cd /usr/local/etc/tinydns-o/root
[root@shiro]/usr/local/etc/tinydns-o/root# ee data
[root@shiro]/usr/local/etc/tinydns-o/root# make
[root@shiro]/usr/local/etc/tinydns-o/root# ee /etc/rc.conf
ifconfig_vr0_alias0="inet 192.168.1.205 netmask 255.255.255.255" を追記
dnscashの設定
続いてキャッシュの設定です。
[root@shiro]/usr/local/etc/tinydns-o/root# dnscache-conf dnscache dnslog /usr/local/etc/dnscache 127.0.0.1
[root@shiro]/usr/local/etc/tinydns-o/root# cd /usr/local/etc/dnscache/root/ip/
[root@shiro]/usr/local/etc/dnscache/root/ip# touch 192.168.1
[root@shiro]/usr/local/etc/dnscache/root/ip# cd /usr/local/etc/dnscache/root/servers/
[root@shiro]/usr/local/etc/dnscache/root/servers# echo 192.168.1.5 > yamanakake.com
[root@shiro]/usr/local/etc/dnscache/root/servers# echo 192.168.1.5 > yamanakas.net
[root@shiro]/usr/local/etc/dnscache/root/servers# echo 192.168.1.5 > 1.168.192.in-addr.arpa
[root@shiro]/usr/local/etc/dnscache# echo 1 > env/FORWARDONLY
[root@shiro]/usr/local/etc/dnscache# ee root/servers/@
・・・ここでプロバイダのDNSサーバアドレスを記入・・・
最後に
[root@shiro]/usr/local/etc/dnscache# ln -s /usr/local/etc/dnscache /var/service/dnscache