mk-mode BLOG

このブログは自作の自宅サーバに構築した Debian GNU/Linux で運用しています。
PC・サーバ構築等の話題を中心に公開しております。(クローンサイト: GitHub Pages

ブログ開設日2009-01-05
サーバ連続稼働時間
Reading...
Page View 合計
Reading...
今日
Reading...
昨日
Reading...

D945GCLF + Fedora10 サーバ構築メモ

[ サーバ構築 ] [ Fedora ]

Fedoraで自宅サーバー構築』を参考にして構築したときのメモです。

以前、Fedora9で構築しようとしましたが、カーネルがD945GCLFのLanカードドライバに非対応のようでインストール自体が失敗したため、Fedora8で構築し運用していました。

しかし、新しい物好きの僕なので、Fedora10でのサーバ構築に挑んでみたのでした。

幸い自分が必要としているサービスは何とか構築できたので、以下に記録として残しておくことにしました。

ただし、基本は『Fedoraで自宅サーバー構築』ですので、あしからず。。。

構築記録

( ■:構築済み、□:未構築、△:不要と判断したもの )

Fedoraインストール

■ Fedora 10 インストール → Fedora 9 のインストールと同様の方法で Fedora 10 をインストール。

内部クライアント(Windows)からLinuxサーバーをリモート操作する

■ WindowsからSSHサーバーへリモート接続(Poderosaパスワード方式ログイン編)

Fedora初期設定

■ Fedora 9初期設定 → ネットワーク設定は kajuhome.com を参照。

仮想マシン構築

△ 仮想マシン構築 △ ドメインUディスクサイズ拡張

Perlモジュールを簡単にインストールできるようにする

■ Perlモジュールパッケージ管理システム導入(cpan2rpm) → cpan2rpm はインストール完了。しかしperlモジュールのインストールはエラー。 ・以下のディレクトリがないとのエラーのようなので、mkdir で作成したら成功。

1
2
3
4
5
/root/rpmbuild/SRPMS/SRPMS
/root/rpmbuild/SRPMS/BUILD
/root/rpmbuild/SRPMS/SOURCES
/root/rpmbuild/SRPMS/SPECS
/root/rpmbuild/SRPMS/RPMS

サーバー公開前のセキュリティ強化

■ ファイル改竄検知システム導入(Tripwire) ■ rootkit検知ツール導入(chkrootkit) ■ アンチウィルスソフト導入(Clam AntiVirus) ■ ファイアウォール構築(iptables)

システム時刻を自動的に合わせる

■ NTPサーバー構築

外部クライアント(Windows)からLinuxサーバーをリモート操作する

△ SSHサーバー構築(OpenSSH) → 次項の"OpenSSH+CHroot"をインストールするため。 ■ SSHサーバー構築(OpenSSH+Chroot) → エラー。(configure: error: PAM headers not found) 以下を実行。

1
yum -y install pam-devel

→ 成功!

1
rpm -Uvh /usr/src/redhat/RPMS/i386/openssh-4.5p1-1.i386.rpm

ではエラーとなるので、以下を実行!

1
rpm -Uvh rpmbuild/SRPMS/RPMS/i386/openssh-4.5p1-1.i386.rpm

→ 成功!

1
rpm -Uvh /usr/src/redhat/RPMS/i386/openssh-server-4.5p1-1.i386.rpm

ではエラーとなるので、以下を実行!

1
rpm -Uvh rpmbuild/SRPMS/RPMS/i386/openssh-server-4.5p1-1.i386.rpm

→ 成功!

1
rpm -Uvh /usr/src/redhat/RPMS/i386/openssh-clients-4.5p1-1.i386.rpm

ではエラーとなるので、以下を実行!

1
rpm -Uvh rpmbuild/SRPMS/RPMS/i386/openssh-clients-4.5p1-1.i386.rpm

→ 成功! よって、

1
rm -f /usr/src/redhat/RPMS/i386/*

ではエラーとなるので、以下を実行!

1
rm -f rpmbuild/SRPMS/RPMS/i386/*

→ 成功! ■ WindowsからSSHサーバーへリモート接続(Poderosa鍵方式ログイン編)

Linuxサーバーをルーターにする

△ PCルーター構築(PPPoE+iptables)

LAN内クライアントマシンへIPアドレスを自動で割当てる

△ DHCPサーバー構築(dhcp)

外部からドメイン名でサーバーにアクセスできるようにする

△ ドメイン名取得(ieServer.Net編)※無料 △ ドメイン名取得(独自ドメイン編)※有料 △ ドメイン名取得(jpドメイン編)※有料

内部からドメイン名でサーバーにアクセスできるようにする

■ DNSサーバー構築(BIND)

インターネットとフレッツ・スクウェアへ同時に接続できるようにする

△ PPPoEマルチセッション設定(PPPoE)

Linuxサーバーに接続したプリンタをLAN内で共有する

△ プリントサーバー構築(CUPS)

Webサーバーを公開する

■ Webサーバー構築(Apache) ■ Webサーバー間通信内容暗号化(Apache+mod_SSL) △ ユーザディレクトリ作成(/~ユーザ名/) △ Webページパスワード制限(htpasswd) △ バーチャルホスト設定 ■ Webサーバー間通信内容圧縮(mod_deflate)

Windowsで作成したWebページをWebサーバーへアップロードする(SCP使用)

■ WindowsからSSHサーバーへファイル転送(WinSCP)

Windowsで作成したWebページをWebサーバーへアップロードする(FTP使用)

■ FTPサーバー構築(vsftpd) △ WindowsからFTPサーバーへファイル転送(FileZilla)

Webページへのアクセス統計をWebブラウザからみれるようにする

■ Apacheアクセスログ解析(AWStats)

1
cpan2rpm --no-sign --make-no-test --install Geo::IPfree

ではエラーとなるので、

1
cpan2rpm --no-sign --make-no-test --install Test::Simple

の後に、以下を実行!

1
cpan2rpm --no-sign --make-no-test --install Geo::IPfree

→ 成功! △ バーチャルホスト用アクセスログ解析(AWStats) ■ リファラスパム対策

自宅サーバーのWebサイト内をGoogleのように検索できるようにする

■ サイト内検索システム構築(Namazu)

独自のメールアドレスをつくる(Postfix編)

■ メールサーバー構築(Postfix+Dovecot) ■ メールサーバー間通信内容暗号化(OpenSSL+Postfix+Dovecot) → 実際にはPOP(110),SMTP(25)で稼動。 ■ taRgreyによるスパム対策(taRgrey)

1
cd rpmbuild/SOURCES/

ではエラーとなるので、以下を実行!

1
cd /root/rpmbuild/SRPMS/SOURCES/

→ 成功!

1
rpmbuild -bb --clean rpmbuild/SPECS/postfix.spec

ではエラーとなるので、以下を実行!

1
rpmbuild -bb --clean /root/rpmbuild/SRPMS/SPECS/postfix.spec

→ 成功! (但し、依存性問題発生したので、必要なpackageインストール)

1
rpm -Uvh --force rpmbuild/RPMS/i386/postfix-2.5.5-1.fc10.i386.rpm

ではエラーとなるので、以下を実行!

1
rpm -Uvh --force /root/rpmbuild/SRPMS/RPMS/i386/postfix-2.5.5-1.fc10.i386.rpm

→ 成功! etc… ■ メールサーバーでウィルス&スパムチェック(Postfix+Clam AntiVirus+SpamAssassin) △ バーチャルドメイン設定(Postfix&Dovecot+qmail&vpopmail) △ vpopmail用メールアカウント&メーリングリスト管理システム導入(Postfix+qmailadmin) △ メール自動返信機能導入(Vacation) △ メーリングリストサーバー構築(Postfix+Mailman) ■ Postfixログ解析ツール導入(pflogsumm)

独自のメールアドレスをつくる(qmail編)

△ メールサーバー構築(qmail+Dovecot) △ メールサーバー間通信内容暗号化(ucspi-tcp-ssl) △ メールサーバーでウィルス&スパムチェック(Qmail-Scanner+Clam AntiVirus+SpamAssassin+maildrop) △ バーチャルドメイン設定(vpopmail) △ vpopmail用メールアカウント&メーリングリスト管理システム導入(qmailadmin) △ qmailログ解析ツール導入(qmailanalog)

メールサーバー共通

■ OP25B(Outbound Port 25 Blocking)対策 ■ 複数ドメイン宛メールの集約(Fetchmail+hotwayd) ■ メール格納形式変更

HotmailやYahoo!メールのようにWebブラウザ上でメールできるようにする

■ Webmailシステム構築(SquirrelMail) → ログイン時、"このページにアクセスするにはアカウントが必要です。" のエラーになる。(/var/lib/php/session のオーナーをapache:apacheにしても) → 再度 “/var/www/webmail/config/conf.pl” を設定しなおしたらOK。(?) △ バーチャルホスト設定(Virtual Host Domain Name Management)

HotmailやYahoo!メールのように携帯電話でメールできるようにする

■ 携帯用Webmailシステム構築(WebMailClient2 for Keitai)

LinuxサーバーをWindowsのファイルサーバーにする

■ Windowsファイルサーバー構築(Samba)

LinuxサーバーをiTunesのミュージックサーバーにする

△ DAAPサーバー構築(Firefly)

Linuxサーバーを内部/外部共用のWindowsのファイルサーバーにする

△ Webフォルダサーバー構築(WebDAV)

一般ユーザにWebブラウザ上での各種設定機能を提供する

△ Usermin導入(Usermin) △ UserminでVacation設定(Usermin::Vacation)

LinuxのパスワードとSambaのパスワードを同期する

△ Windowsネットワーク用統合認証サーバー構築(OpenLDAP+Samba)

データベースシステムを作る(MySQL編)

■ データベースサーバー構築(MySQL) ■ MySQLデータベース自動バックアップ運用(mysqlhotcopy) → DBのバックアップ、リストアは未確認。 ■ MySQL用GUI設定ツール導入(phpMyAdmin)

SNS(ソーシャルネットワーキングサイト)を作る

△ SNS構築(OpenPNE)

Weblog(ブログ)サイトを作る

■ ブログサイト構築(WordPress)

CMSでWebサイトを構築する(XOOPS編)

△ コミュニティサイト構築(XOOPS)

CMSでWebサイトを構築する(joomla!編)

△ CMSによるWebサイト構築(joomla!)

バージョン管理システムを構築する

△ バージョン管理システム構築(Subversion)

サーバーの状態をブラウザから監視する(Nagios編)

■ 統合監視システム構築(Nagios) → インストールしたものの、不要と感じたため、サービスは停止。 △ リモートホストサービス監視(Nagios+nrpe)

サーバーの状態をブラウザから監視する(RRDtool編)

■ サーバー監視システム構築(RRDtool+Cacti) ■ Apacheアクセス統計監視グラフ追加(apachestats) △ BINDアクセス統計監視グラフ追加(bind9-snmp)

サーバーの状態をブラウザから監視する(MRTG編)

△ ネットワークトラフィック監視システム導入(NET-SNMP+MRTG)

Webブラウジングを高速化する

△ プロキシサーバー構築(Squid) △ プロキシサーバーでウィルスチェック(Squid+SquidClamAV+ClamAV)

LinuxをHDDビデオレコーダーにする

△ TV録画機能導入(GV-MVP/RX2+ivtv-1.0) kernel-2.6.22系 △ TV録画機能導入(GV-MVP/RX2+ivtv-0.10) kernel-2.6.21系 △ TV録画機能導入(GV-MVP/RX2+ivtv-0.10) kernel-2.6.20系 △ TV録画機能導入(GV-MVP/RX2+ivtv-0.10) kernel-2.6.19系 △ TV録画機能導入(GV-MVP/RX2+ivtv-0.8) kernel-2.6.18系 △ TV録画機能導入(GV-MVP/RX2+ivtv-0.7) kernel-2.6.17系 △ TV録画予約システム構築(vrs) △ 録画データの活用

サーバー公開後のセキュリティ強化

■ 不正アクセス検知システム導入(Snort+SnortSnarf+Oinkmaster)

1
rpm -Uvh /usr/src/redhat/RPMS/i386/snort-2.8.0.1-1.i386.rpm

ではエラーになる(Fedora10の場合)ので、以下を実行!

1
rpm -Uvh rpmbuild/SRPMS/RPMS/i386/snort-2.8.3.1-1.i386.rpm

→ 成功! ■ iptablesログ解析(IPTables log analyzer) ■ ログ監視ツール導入(SWATCH)

ユーザのホームディレクトリ容量を制限する

△ ホームディレクトリ容量制限(quota)

サーバーのファイルを自動的にバックアップする

■ 自動バックアップ運用(tar+GnuPG+rsync/ftp) △ リアルタイムミラーリングツール導入(lsyncd+rsyncd)

外部から安全にLANへ接続できるようにする

△ VPNサーバー構築(OpenVPN) △ Windows上にVNCサーバー導入(UltraVNC)

その他

■ ハードディスクの温度設定

hddtempのインストール。

1
yum install hddtemp

hddtemp の実行。

1
hddtemp /dev/sda

Comments