技術評論社 様のご厚意により,
書籍 "ADSLによる Linuxインターネットサーバー構築ガイド" を
ブックレビューコーナー にご献本いただきました.
この本のレビューをして頂くべく,
Linux Users ML
や本サイトにおいて
公募
を行い,
これにご希望頂いた方々より感想などをレビュー記事にまとめていただきました.
ここに, レビューアの方々から寄せられたレビュー記事を公開します. (原稿到着順)
技術評論社 様および レビューアの皆様のご厚意に感謝いたします.
なお, 以下のレビューは初版を対象としています.
ADSL で Linux を使ってインターネットサーバを構築するためには, さまざまな 知識が必要である. 詳細に書けば, 一冊ですべてを網羅することは無理である. 最初に本書全体の構成をみたが, 今年の 7 月で Linux に触れてから 4 年目に入る 私には, すでに熟知している内容であった. それでも最初から丁寧に読んでみた.
本書では, どういう目的で Linux と ADSL を使ってインタ−ネットサーバを 構築するかの説明から始まり, サーバをたてるために必要な前提知識が解り易く 説明されている. 最近聞き慣れたブロードバンドの FTTH, ADSL, CABLE に関する 説明は, まったくの初心者でも理解できる説明である. TCP/IP の基本知識は インターネット接続するために必須な前提知識であり, それも理解し易い 書き方になっている.
サーバをたてるために, 最低限必要な Linux コマンドが説明されている. 半年程度 Linux をかじっていれば, 熟知している内容ではあるが, まったくの初心者のために 記述しているものだと思う.
ISP からグローバル IP アドレス 1 つ, 8 つを使ったネットワーク設計の 方法が記述されており, 中小企業で専任のアドミニストレータがいなくても 兼任で構築できるレベルの説明がいいと思う.
最低限の説明ではあるが, 本書の説明で, 初心者にも DNS, Web, Mail サーバが 構築できる.
最後に ADSL でインターネットに接続する説明がある. 難しい内容ではない.
本書は, 広く浅く ADSL と Linux でインターネットサーバを構築するための書籍である. Linux をさわって 2 年以上の方はすでに熟知している内容である. 中小企業で専任のアドミニストレータ を雇用できない, ITコストを極力低価格で運用したい経営者の方は, 部下に本書を紹介して 兼任で構築させてみるのはいいと思う. 障害時には, 他書籍が必要になる. 一言で, ADSL を使用して インターネットサーバを構築するという広範囲な目的の書籍ではあるが, 旨くまとめられている. 本書はあくまでも, サーバをたてるだけで運用面, トラブルシューティングには他書籍を利用 することになる.
本レビューは、以下のような状況のもとで行っている:
本書のねらいは, 第一章の冒頭に「この本の目的は『Linuxでインターネット サーバーを作る』ことである」と謳われているように, WWW や DNS, メールなどの各種 サーバーの導入, 設置方法を説明することであるが, 実際に本書を開くと, 約 300 ページの紙数の前半ほぼ半分を費やして, ネットワークの仕組み, マシンの選び方, セキュリティの重要性, Red Hat Linux 7.2の導入方法, Linux の基本操作といった初心者 向けの解説がなされている.
このことから本書の対象は, 初心者, 特に「UNIX 系 OS でインターネットサーバー を構築したい Linux 初心者」であることがわかる.
評者の場合, 半年ほど前から Nubus 仕様の Macintosh を用いて Linux で WWWサーバーを稼動させているのだが, 同じ rpm 系パッケージを利用しているとは言え, 本書の購入層の大部分であろう AT 互換機ユーザーのように簡単に導入が進んだわけ ではない. 最初にカーネルのリビルドからはじめなくてはならなかったため, OS の 導入が完了した時点で大抵のことは理解出来るようになっていたが, パッケージや サーバーの導入は簡単ではなく, 特に最近のパッケージは rpm -Uvh 一発で導入出来ない 事もあり, 何時間もかけてビルドし, 設定を書いては試行錯誤する毎日だった.
今回, 本書の評価のために AT 互換機にハードディスクを増設して, 章立てに従って Red Hat Linux 7.2, WWW サーバー, DNS サーバー, SSH サーバーを順に導入し稼動させて みたが, 「導入と設定まで」は, あまりにあっけないので愕然とした.
そんな評者が本書を読んで良いと感じるのは, まず, 解説の順序立て, 内容の 取捨選択の良さである. 本書の内容は, 前半の基礎知識の解説だけでなく, 本題の サーバーの解説についても勿論, 本来それぞれが数百ページ単位の解説書となるのは 間違いのない内容であるが, 本書ではLinux初心者に的を絞ってよく考えられた解説の 順序立てがなされており, 内容に関しても「分量と項目の配分のバランスが絶妙」 なのである.
要は, 設定の方法には実はもっともっと色々な方法があり, それぞれ一長一短 あったりするのだが, 実現のための色々な方法についてあれもこれも書いても, 本書の 様な網羅的解説書では「なにが必要なのか」「どうしてそうするのか」といった肝心の 事が語られる紙幅が不足し, 下手をすると設定の方法すら漏れやミスが発生しがちで ある. それでは初心者を大いに迷わせた挙句, 「よくわからないが, うまく設定出来ない」 という結果にもなりかねない.
その点で, 躊躇せず最低限必要なポイントをうまく突いて書いている点が良いし, 書かれている内容についてもほぼ難のないと思われるものを精選し紹介しているのが, 評者の位置からはよく見えた.
安易に telnet を解説するよりも, 16ページを割いて SSH の設定を紹介している 点も, セキュリティ重視の点から好感がもてる.
全体にわたって言えることだが, 本書には参考文献, URL の紹介がほとんどない. 対象がインターネットやLinux の初心者であり, それらの人々にサーバー運用の 「さわり」的な感覚を紹介することであるなら, 参考文献や, 欲を言えばクールな サイトを紹介して欲しいところである. やる気のある読者なら検索エンジンを利用して 疑問点を解決できる時代ではあるが, 文献は紹介して欲しいところである.
また, 評者は今回, 実運用機(Nubus Mac)で DNS を設定したいという目的があった. 評者のようにルーター内蔵モデムによる ADSL 環境で WWW サーバーを運用して いる方はおわかりと思うが, 公開しているページをLAN 内部のマシンからブラウズ するとき, ドメイン名で URL を指定出来ないのを解決したかったためである. 今回, 本書の「参考」に「キャッシュサーバー」という言葉があったのでインターネットで 検索し, 「キャッシュ DNS」として設定した上でゾーンファイルを書き実現したのだが, 個人で ADSL を導入している多くのケースで同様の利用方法が考えられるので 「キャッシュ DNS」の解説が欲しかったところである.
本書は, ネットワークおよび Linux 初心者がサーバー運用を実現するための良い
ガイドブックである. 例えば crontab のメール出力を抑制する方法に関して,
「MAILTO をコメントアウトする」(p.284)方法では他の出力も抑制されてしまうので,
当該の項目についてのみ > /dev/null 2>&1
とした方が
良いのではないか…, 「よく使われる FTP サーバーは wu-ftpd 」(p.248)と解説して
いるが適切であろうか…, など, 初心者から見て疑問な点も出なくはなかったが,
好みの問題でもあり細かな点である. 全体的に, 章立ておよび内容の選択に優れており,
本書を参考に自力で本格的なサーバー運用へとステップアップしてゆければ無駄な
つまづきが少なくて済む良書と言える.
最後に, レビューの機会を下さった技術評論社, ブックレビュー担当者の方々に 感謝します.
この本は「Linux はとりあえずインストールした. では何をしよう?」と, 次の ステップを考えている人向けです. サーバーと言っても対象は DNS, メール, WWW 等 幅広く, それを独学で習得するのは非常に困難です. 困難であるにも関わらず何故 サーバーを自分で立てようと思うのか. その答えは本書のあとがきである「おわりに」の 一行目に書かれています. 『自分で自分のインターネットサーバーを構築する. なんてエキサイティングな行為だろう』. すべてはこの言葉に集約されていると思います. 理屈ではなく, わくわくするからする. 単純な動機でありながら好奇心を持ち続ける ための大切な要素です. Linux でサーバーを構築してみたいと考えていて, 本書に 興味がある方は立ち読みでもいいのでまずこの「おわりに」を読んでみてはいかがでしょうか. ここに書かれている著者と同じ思いを抱く人であれば, 理屈抜きで挑戦してみるべきです.
扱っている分野が広い割には一通りの説明がされています. 著者も本文で述べて いますが, インターネットサーバーや TCP/IP の説明は深く理解しようとするとそれ だけで一つの本になるほどの量と質になります. しかし, 本書が対象にしている 初心者を脱しようとしている人に取って一番必要なことは「とりあえずやってみよう」と思わせることだと 思います. そういう意味では読み終わった後「やってみよう」と思わせてくれる本で, 非常に良い本だと言えます.
同種の本と比較して他にはなく, 好感を感じたところとして, まずサーバーや ルーターのハード選びで著者の失敗体験が紹介されたり, 具体的な選考ポイントが 書かれていて, 本書は良い指針となると思います. また, 例えばサーバー構築後必要が なくても一度再起動して, きちっとプロセスが上がるか確認することを忘れないこと, といった落とし穴的なポイントにも触れられていて, ユーザーの視点で書かれていると 非常に好感を持ちました.
まず, 随所で挿入されている図が概して 分かりにくいということです. 図を見てもよく分からないことが多く, あまり効果的に 使われているとは思いませんでした. また, ここで図が欲しいと思うところで図がなく, 文章だけで冗長的に説明されている箇所があったりして, 初心者には理解しにくい だろうなと思えるところが何ヵ所かありました.
それと第 10 章で説明されているファイアーウォール構築で, パケット フィルタリングのルールですが, DNS で使用する 53 番ポートの TCP を通す設定になって います. 本文では「DNSは最初にUDPを使い, うまく接続できないとTCPで接続を行います」 と書かれているのですが, これには疑問を感じました. TCP の 53 番ポートを 開けるとセキュリティホールになりやすいため閉じることが多いのですが, DNS が このような挙動をするというのは初耳で専門書で詳しく調べる必要を感じました.
また DNS サーバーの構築において, 対象となるサーバープログラムは BIND の 9系ですが, BIND9 からはゾーンファイルにデフォルト TTL を記述しないと動作上 問題なくてもログにエラーが残ります. しかし本書ではデフォルト TTL の記述がなく, BIND8 系のゾーンファイルを対象にしているように思われました. RedHat 7.2 では デフォルトで BIND9 がインストールされるのでその違いを意識した方が良かったと 思われます.
初心者向けの内容ですのでボリューム的に難しいとは思いますが, カーネルの 再構築についてはさわりだけでも触れて欲しかったと感じました.
難しいことは置いておいてまずは構築してみる, 本書は十分にそのきっかけとなる 本で脱初心者を図りたい方にはお奨めできる本です. 平易な言葉で書かれていますし, サーバーの動作についても難しいことは触れず, それでもある程度は理解できるように 書かれています. そのためサーバー構築の経験がなくても, 読み終えた後 好奇心を刺激されて, 構築してみようという気にさせてくれる本だと思います.
まず, 最初に書籍を手にして表紙や目次や内容などを見て非常に綺麗に纏められて いて読みやすいという印象を受けた. 章立ては初心者向けの基礎的な話から必要と なる最低限の技術まで非常に解りやすく構成されている.
Linux は多少触ったことがあり, インターネットに接続できるサーバーを構築 したいという読者には非常に解り易く良い書籍として薦められる. 特にインターネット や TCP/IP についての知識を整理して簡単にインターネットサーバーを構築するには 最適であろう. しかし, セキュリティーを考慮したネットワーク設計は他の内容と 比較しても少し複雑なように感じられた. 実際にこの書籍を利用してインターネット サーバーを構築する読者は DMZ 方式を利用したネットワークを構築するだろうかという 疑問が残った.
サーバーのアップデートの方式として Red Hat Network が説明されている. 果た してインターネットサーバーとして運用してる場合にこのアップデート方式が 良いのであろうか. サーバーとして安定して稼動し, セキュリティーの問題が無ければ 不必要なアップデートはしないのが普通である. セキュリティーに問題が発見された ソフトウエアを遠隔からでもアップデートができる方式を記述した方が良いと感じた.
本書の後半では動的 IP アドレスによるサーバー構築について記述されてる. 動的 IP アドレスでのインターネットサーバーの運用はテストであれば構わないが, 本格的に運用することは現実的でないと考えられる. ADSL の固定 IP アドレスを 利用した接続方法にもう少し重点を置いて欲しかった.
インターネットサーバーとして必要な DNS Web メール他の設定については必要 最低限の記述である. 本気で記述すれば個々の機能で一冊の本になる位の内容であるから この書籍の目的としてはこのレベルで良いであろう.
DMZ 方式によるネットワーク設計やファイヤーウォールの設定などが詳しく記述されて いる. 強固なネットワークを構築するには非常に参考になるのだが, 読者は DMZ 方式以外の構成でどのように接続すれば良いか迷ってしまう. また, DMZ 方式に 力を入れている割にゲートウェイマシンの構築についての記述が簡単すぎると思われる.
はじめに述べた通り,非常に解りやすい構成である. 昨今問題となった CodeRed Nimda なども取り上げられ, セキュリティーに関する記述が充実しているのでこれか らインターネットサーバーを構築する(この書籍のタイトルそのもの)人にお勧めできる 書籍である. ただし, Linux 自体を操るための記述は本当に最小限にとどめられて いるので Linux に不慣れな人にはもう一冊 Linux 関連の書籍が必要となるであろう. また, ブロードバンドルータが 1 台, サーバーが 1 台, Windowsなどのクライアントが 1 台というようなシンプルな構成でのネットワーク構築方法の記述が欲しいと感じられた.
本書は RedHat 7.2(書籍に CD-ROM が付属している)で, Internet に公開された DNS(bind), Web(Apache), Mail(Sendmail/POP/IMAP), FTP(wu-ftp) サーバを, 「とりあえず」「手っ取り早く」構築することを目的とした内容となっている. 内容の詳細については版元の技術評論社のWebサイト に詳細な目次が掲載されているので, そちらも参照されたい. 大まかには
という構成になっている. fml や設定用スクリプトが欠けている RP-PPPoE といった例外を除き, RedHat 7.2 に含まれているソフトウェアを使用し, その設定方法を極めて具体的に, 分かりやすく提示している. 私自身, 同じく RedHat 7.2 をインストールした Linux Box で DNS, Web, SMTP/POP サーバを運用して いるが, 自分の知識が不完全なものであることも再確認できた. 例えば "service"(143ページ)というコマンド(実態はシェルスクリプト)が存在することを 知らず, 一生懸命フルパスを打っていたりする.
従って, 本書はこれから RedHat でサーバを「とりあえず」「手っ取り早く」 構築しようという人にはかなり参考になる. しかしながら, 自分一人で, 本書の目指す ADSL を専用回線として使用した公開のサーバを構築する, という目的を考えると 不満な点がある.
著者の目指すように, まずはサーバを立てて動かしてみる, という目的を, それほどページ数を取らずに達成するためには, 決して軽んじることのできない情報でも ばさばさとカットする必要があることは首肯する. しかし, カットした情報源への リンクは最小限残しておく必要がある. 私なら, 初めて RedHat を触る人にはまず ショップへ行って, 公式マニュアルの付属したパッケージを購入することを勧める. 経験者には, 例えば O'Reilly Japan の「Linux ネットワーク管理」といった, 高価でも リファレンスとして役に立つ書籍を常備するように言うだろう. 本書にはそういった 「参考文献」やリンクが類書に比べて少ない. 自学自習用の書籍としてこれ一冊では 心許ない, と判断した一番の理由はここにある.
もう一点. 自分が公開サーバを構築するにあたって気を遣ったのは, RedHat の設定よりも, ルータの選定である. 本書でも安物のブロードバンドルータには 気をつけるよう警告していたり(279 ページ), ルータ選択の指針を述べているが(79 ページ), 具体的な商品名を挙げるまでには至っていない. 現時点でも, PPPoE が使える 高機能ルータはかなり限られる. タイトルに "ADSL" という文字を入れるぐらいなら, もう少しこの辺をつっこんで解説して欲しかった, と思うのは私だけだろうか? 参考までに, 私はアライドテレシスの AR320 を使用していることを申し添えておく.
最後に. 初版ということもあって止むを得ないとは思うが, 誤植が散見される点は 頂けない. 102 ページで「起動手順いついて」とか, 160 ページで「Transration」というのは 兎も角, 74 ページの図でルータの内部側の IP アドレスが unnumbered になっている とか(外向きが unnumbered では?), 95 ページのグローバル IP アドレスが 「202.32.55.32/39」(IPv6 か?)というのはまずかろう. 次刷での修正をお願いしたい.
初心者(に限らないが)が知識を習得する過程には誤解や曲解が付き物で, それは 痛い目に遭わないうちに修正されることが望ましい. 経験のある先輩にアドバイスを 貰ったり, 信頼性の高いリファレンスを参照しつつ, 本書を実習マニュアルとして 使用すると正しい知識の習得が可能になろう. サーバを構築していけば, 当然 マニュアルから外れた設定も必要になってくるわけで, そうなったとき, 本書だけで 「幸せになろう」とするのはちょっと虫が良すぎる.
にしても RedHat をインストールするだけでこれだけのサーバ類をセットアップ できるなんて, ずいぶんと楽になったなぁ・・・. 本書を読了してつくづくそう思い知らされた. 基本は tar.gz を 解凍してソースからコンパイル・インストールだろ! という熟練者も, 本書を読んで 一度そのお手軽さを実体験してみてはどうだろうか.