|
自宅サーバー構築 (備忘録なので随時更新していきます) |
||||||||||||||||
|
ここではPC初心者でド素人の私がタダ同然で手に入れたPCを |
||||||||||||||||
| ■ なぜ自宅サーバーなんてやってみようと思ったのか? ADSLを導入してから、メインマシンのGR9/K・サブマシンのC1XE・自作マシンのPC3台とプリンターで家庭内LANの様なことはやっていました。 C1XEをナビにするためにあちこちで情報を集め、それが実現したあと、その過程を紹介するために簡単なページを作って無料レンタルサーバー で公開していました。その後、V-CLUBさんのサイトの「遠くのVAIO」に私のC1XEを登録させて頂き、紹介文の中で私のページにリンクを貼って 下さったことを機会に、HPの様なものを作ってみようと考えていました。 しかし・・・考えているうちに無料サーバーで公開していたページがデリられました(笑) まったく更新していなかったのが原因と思われます。 違うところに公開したのですが、これが微妙に重い! 自前のCGIも使える無料レンタルサーバーなので仕方がないのですが、これではちょっとなぁ・・・と感じました。 そんなところに古いFMV-DESKPOWERを入手しました。しかし、既にPCは3台ありますのでこれと言った使用法が思い浮かびません。 貧弱PCなので大したことは出来ないので考えついたのは、家庭内でのファイル&プリンタサーバー。 でも、それだけではもったいないです。そんな時に思いついたのが自宅サーバーです。 光回線のような太い回線ではないですが、いちおうADSLです。下りはいまいちですが上りはそこそこの速度が出ています。 自分のHPを自宅サーバーで公開すればデリられる心配もないですし、CGI等の制限もありません。 どうせ家庭内ファイル&プリンタサーバーとしてほぼ休み無く稼働するんですから、自宅サーバーにして24時間稼働させても同じです。 メールで送ると迷惑なたくさんのファイル(旅行や飲み会の時の写真など)も自宅サーバーでアップすれば、迷惑を掛けることなく相手の都合で 見てもらえます。うまく使えばこれほど便利なことはありません。 で、いろんなところを回って調べてみると、そんなに難しそうではありません。 ほんの少し頑張れば自分のような初心者でも出来そうだという感触を得たので、やってみようと言うことになりました。 |
||||||||||||||||
| ■ 自宅サーバーって? そのまんまなんですけどね(笑) 自宅にあるPCをWWWサーバー等にするということです。 HPを公開する時、プロバイダーのHP公開サービスや無料レンタルサーバー、有料レンタルサーバーを使うのが一般的だと思います。 それを自宅にあるPCを使って公開してしまおうと言うことですね。 また、WWWサーバーの他にもFTPサーバー、Mailサーバー等を構築することも出来ますが、 HPの公開が主目的なのでまずはWWWサーバーとFTPサーバーの二つの構築にチャレンジしてみました。 |
||||||||||||||||
| ■ 自宅サーバのメリットは? これは、色々とあると思います。 ・容量を気にしなくていい レンタルサーバーだと容量に制限がありますが、この容量を気にせずにサイトが作成できる。HDDの空きさえあれば実質無制限。 アップできるファイルのサイズ制限もないので画像や動画の様なファイルサイズが大きくなりがちな物も置き放題。 ・CGI も使い放題 普通無料レンタルサーバーの様なところだとCGI は使えなかったり、 使えるCGI が負荷の軽い一部のものだけに限られていたりと言うことがほとんどです。 その様なCGI の制限がありません。まぁ、貧弱なスペックのPCをサーバーにした時にあんまり無茶すると止まるかもしれませんが(笑) ・広告が出ない 無料レンタルサーバーにありがちな上下に入るバナー広告やポップアップ広告が無い(まぁ、当然です。) 自宅サーバーで広告が入っている場合は・・・スポンサーの広告ですね(笑) ・サーバスペースを借りる場合と比べて、アップロードがラク 通常、HPの作成は、自宅のマシンで制作 → サーバーにアップロード → ブラウザで確認 → 修正 → アップロード と言うような手順だと思いますが、自宅サーバーならサーバー上で直接HTMLの編集をやってしまえばアップロードの手間が無いです。 特に、重い画像を多用する場合や、修正が多い場合などはとてもラクです。 サーバーPC上で制作してしまえばそのまま公開すればいいし、LAN上の他のPCで作った場合も転送速度が速いのはとてもラクです。 ・サーバを構築・運用する事を通して、スキルアップできる・・・と思う(笑) 気のせいかもしれませんが、多少はスキルアップすると思います。 ・使わなくなった古いマシンを有効利用できる Win95時代のPCでもメモリーさえ積めればWindows2000Professionalが動くスペックなら十分使える。 もちろん、Win95や98でも出来るんですが、OSの安定性を考えるとWindows2000Professionalがいいんじゃないかと思います。 Windows2000Serverなんて言うOSもありますが、ハイスペックPCが買えるくらい高いので却下です(笑) WindowsXPでもいいんですが、古いマシンを活用していく前提なのでスペック面からこれも却下です(笑) 当然ですがLinuxを扱える人ならかなり貧弱でも活用できると思います。 私はLinuxを勉強する元気が無かったのと(インストールだけはしましたが・・・)、 手に入れたFMVがWin2000を稼働させる事が十分可能なスペックだったこと、 ファイルサーバー&プリンターサーバーとしても使いたかったので、色々な設定が慣れていると言うことで Win2000で構築しました(本当はセキュリティの面などを考えるとWebサーバーのみの運用に徹した方がいいみたいですが・・・)。 余計なソフトは極力入れないようにすればWindows2000Professionalはかなりの安定性ですので十分使えると思います。 枯れかけたOSのメリットですね。そこそこのスペックがあれば余裕で動く動作の軽さと熟成された安定性を選択する価値は十分あります。 本当ならLinuxの方が良いのかもしれませんが、PC初心者には少し取っつきにくいですね。 とりあえず、セキュリティの問題もありますのでサービスパックはちゃんと当ておきましょう。 ・自己満足!(これが一番かも・・・) バカっぽいけど、これは大切だと思います。自分が楽しくないとHPなんて作ろうと思いませんしね。 スキルアップのためにも楽しいと長く続けることが出来ますから。 |
||||||||||||||||
| ■ 自宅サーバのデメリットは? これも色々とあります。 ・置き場所が必要 ・常時動いているので電気代がかかる ・ファンやHDDから出てくる騒音 ノートPCを使えば上記の3つはほとんど問題がないと思いますが、私のように古いデスクトップPCを活用しようと思ったら、 多少は考えないといけないですね。C1XEをサーバーにすればすべての問題はクリアなんですけど、外出時は持って行きますので・・・ 今回、私のサーバーの置き場所は押し入れの中になってしまいました。 電気代を少しでも節約するために、CRTモニターは普段はオフになっています。 騒音はそれほど気にならない程度なので・・・まぁ、いいでしょう(笑) ・サーバーとして常時稼働できるマシンがないと、繋がらない時間が出てくる 今回、私はタダ同然で入手した古いPCを24時間稼働できるサーバーマシンとして活用してみました。 ・セキュリティをちゃんとしないとえらい事になる 当然ですが自宅サーバーを公開すると言うことは全世界の人がアクセスできるわけです。 悪意を持った人がアクセスしてきたら、最悪の場合PCを乗っ取られてしまったり ファイルの改ざんや個人情報の漏洩と言うことにもなりかねません。 その為にもルーターとファイヤーウォールソフトの併用は必要ですし、ルーターも余計なポートは開かない様にするのがいいでしょう。 私はレンタルのモデムがルータータイプですので、これの設定をちゃんとやって(やってると思う・・・)、 アンチウイルスソフトとファイヤーウォールソフトを併用しています。 |
||||||||||||||||
| ■ どれくらいのスペックが必要なのか? あちこち情報を入手するために歩き回ってみました。スペックは高い方がいいのは当然なんですが、 「使用するOSがちゃんと動くスペックなら問題ない」と言う結論に達しました。 私の場合Windows2000Professionalを使うと言うこともあり、 ・ある程度のCPU(これはPentium2程度で十分でしょう。ちなみに私のマシンはPetium2-266MHzです) →Pentium2-333MHzに交換しました。若干ですがパワーアップです。 →NECの省スペースデスクトップVALUESTAR NX VE36H/6を入手したのでサーバーPCを交換しました。 CPUはCeleron366MHzでしたがCeleron500MHzに交換しました。HDDは6.4GBです。 ・十分なメモリー Windows2000Professionalだと64MBがMicrosoft推奨です。しかし、これではやはり厳しいでしょう。 128MBあれば大丈夫だと思いますが多ければ多いほどいいのは言うまでもありません。 私のマシンは192MBに増設してあります。安いメモリーを見つけたらあと128MBくらい増やそうと思っています。 →32MBを1枚外して128MBを2枚増設しました。これで合計288MBになりました。 →VALUESTARにサーバー用PCを変更したあと標準の64MBから256MB(128MB×2)に交換、 ・適当なHDD(公開するHPによりますね。でも、1GBもあれば十分ですよね)。 私はローカルでのファイルサーバーに使うこともあって、システム用に標準で内蔵されている4.3GB、データ用に80GBを内蔵させていたので これに関しては何の問題もありませんでした。OSと必要なソフトをインストールしても1GB程度ですから、WWWサーバーにするには2〜4GB 程度のHDDがあれば十分でしょうね。レンタルサーバーで1GBの容量を借りようと思ったら毎月の費用だけでも大変です。 ・ISDN・ADSL・CATV・光回線などでルーターを使う前提ですし、サーバーPC以外にクライアントPCを繋ぐことなどを考えると LANポートは無いと困ります。標準で装備していなくてもPCIスロット等に増設すればいいので簡単です。 10/100Baseのボードなら\1000程度で買えると思います。 この程度のスペックは5年くらい前のデスクトップPCなら十分カバーできると思います。 中古ショップやオークションなどでモニター付きで\5000〜10000でいくらでも探せるので意外とお金はかかりませんね。 私はタダ同然で入手しました(笑)。ノートPCでも\30000〜50000位で買えると思います。 予算が許せば置き場所や騒音、電気代などを考えると個人的にはノートがいいと思います。 もちろんCPUやメモリーはLinuxをGUI を使わずに動かせるスキルがあればもっと貧弱でも大丈夫ですね。 あとは使用回線でしょうか。 まず始めに、加入しているプロバイダーが外部へのサーバー公開を禁止しているかどうかを確認した方がいいと思います。 稀にですがサーバー公開を禁止しているプロバイダーもあるみたいです。 サポートに電話して聞いてみたところ、私が加入している某電話会社系プロバイダーでは特に禁止していないと言うことでしたので、 とりあえず問題ありませんでした。ただ、当然ですが自己責任で公開するんですからサポートは受けられません。 あとはグローバルIPっていうやつが割り当てられていれば固定IPじゃなくても大丈夫ですね。 ISDNでも出来ますが、画像などが多いのならADSLやCATV、光回線など速いに越したことはないです。 ちなみに私はADSL12Mコースで、上りは最大で850kbps程度とかなりまともな速度が出ていますのでやってみようかなと思いました。 あとはセキュリティの面からですが、「ルーター」 「ファイヤーウォールソフト」 「アンチウイルスソフト」 この3つは必須と考えていいと思います。特に初心者は絶対に必要です。 |
||||||||||||||||
| ■ 自宅サーバーの構成 今回、私は自宅サーバー構築をこんな構成でやってみました。
|
||||||||||||||||
|
|
|
ダイナミックDNSサービス |
||||||||
|
○○.comというようなドメインを取得していない場合、自宅サーバーが稼働してWebサイトを公開できるようになっていても、 http://○○○.□□□.×××.△△△△ と言うようにグローバルIPアドレスを入力しないとサイトにアクセスできません。 でも、これではカッコ悪いですし、固定IPでないと同じURLでアクセスできません。人に覚えてもらうことも出来ません。 私はいちおう常時接続ですが、モデムを再起動したり一定時間アクセスがない時など不定期なタイミングでIPが変化します。 いわゆる「非固定IP」というやつです。IPが変化しますから上のようにIPアドレスを入力しても、前に繋がった時とIPが変わっていたら ぜんぜん違う人のところにアクセスしてしまうこともあり得るわけです。 これではとても困ります。 そこでそんな非固定IPの人にはとても便利なサービスがあります。それが「ダイナミックDNSサービス」です。 今回はたくさんあるダイナミックDNSサービスの中から「ZiVE DNSサービス」を使ってみました。 海外のサービスが多い中で、ここはすべて日本語ですので登録や設定もわかりやすく簡単です。 このサービスに登録してホスト名(私ならばae101kai.zive.net)を取得しておけば、http://ae101kai.zive.net/ と入力すれば関連付けてある 私のIPアドレスに繋がるわけです。IPアドレスが変化しても http://ae101kai.zive.net/ と入力すれば常に自分のサイトに繋がるのです。 なんて便利なサービスでしょう!こんな便利なサービスが無料なんです!これを使わない理由はありませんね。 IPアドレスが変化した時のホスト名とIPアドレスの関連づけの設定作業は基本的にはログインして手動で設定するんですが、 この作業を自動でやってくれる親切なソフトもあるので、面倒なことは何もありません。 そのソフト「DiCE」の説明もこのあと紹介します。 |
||||||||
|
||||||||
|
|
|
グローバルIPの自動設定ソフト「DiCE」 |
|
ZiVE DNSサービス
とても便利なんですが、IPアドレスが変わったときに手動で更新するのは面倒です。 それも自分でモデムやルーターを再起動したときはいいですけど、知らない間にIPが変化したときにはとても困ります。 しかし、このIPアドレスの更新を自動でやってくれる親切なソフトがあります。 それが「DiCE」です。 ZiVE DNSサービス以外にもたくさんのダイナミックDNSサービスに対応しているので、他のサービスを使用しても使えるソフトです。 まずは、DiCE DynamicDNS Client http://www.hi-ho.ne.jp/yoshihiro_e/dice/ こちらから、「DiCE」をDLしてインストールします。 「スタート」→「プログラム」→「Sarad Software」から起動します。 起動するとこんな画面です ↓ 「オプション」→「詳細設定」で「最小化で起動する」にチェックを入れておきましょう。 ログはお好みでいい気がします(笑) 私は念のため取っていますが特に見ることは無いです(ぉぃ |
![]() |
| 上の図は既に登録している図ですが、「イベント」→「追加」から新規で登録します。 |
![]() |
| そうするとこんな画面が出ますので、 「説明」の所には自分のわかりやすいタイトルを入れればOKです。 「イベント有効」にチェックを入れましょう。ここにチェックを入れないと自動更新してくれません。当たり前ですね・・・ 「イベントタイプ」でDNS自動更新を選び、「一般タブ」を選択します。 今回はZiVE DNSサービスを使いますので「サービス名」からZiVEを選びます。 「ホスト名」、「ドメイン名」、「ユーザー名」、「パスワード」を入力します。 「IPアドレス」は空白でOKです。 |
![]() ![]() |
| スケジュールを選択します。 「1日に1回」とかでもいいんですが、私は「IPアドレス変化時」を選びました。 IPアドレスを監視しているのでモデムの再起動などでIPが変化すると自動で更新作業をしてくれます。 IPアドレスの監視間隔は「オプション」→「詳細設定」→「IPアドレス監視」から設定します。 監視間隔は10分(デフォルト)でいいでしょう。そんなに頻繁にIPが変わることはないですしね。 方法は自動でいいと思いますが、自動でうまくいかないときは手動で設定する必要がありそうです。 私は自動でOKだったので・・・手動設定はわかりません(ぉぃ |
![]() |
| あまりに更新しないとサービスを停止されたり登録を解除されたりするので、 IPアドレスに変化がないときでも定期的に更新しておいた方がいいようです。 3分毎〜84日毎で選べますが12時間とか24時間毎でいいと思います。 |
![]() |
|
詳細設定にある「イベント」にあるDNS更新保護時間ですが、ヘルプには60分以上にしておいた方がいいとあります。 前回の更新から次の更新までの最低時間です。この時間以内に次の更新をしようとすると警告ダイアログが出ます。 これは、あまりに間隔をあけずにIPを更新することを禁止しているDNSサービスがあるのでその対策のようです。 |
| 詳細設定で他の項目も設定できますが、とりあえずこんなところで大丈夫かと(笑) 詳しくはDiCE DynamicDNS Client http://www.hi-ho.ne.jp/yoshihiro_e/dice/ とヘルプを参照して下さい(ぉぃ 一通り設定したら「イベント」→「今すぐ実行」でIPの更新をしてみましょう。 うまく更新できないときは各設定を見直してみましょう(笑) |
|
|
|
Webサーバーの構築 |
|
さて、DNSサービスでドメインを取得しましたので、貧弱マシンを利用してWebサーバーを構築してみようと思います。
まず使用するソフトですが、OSはWin2000Proを選択しましたのでOS標準で使える「IIS(Internet
Information Server)」を使ってもいいのですが、 まずはソフトを入手します(当然ですね・・・) と言うわけにはいきませんので、簡単に説明しておきます(まぁ、自分の為なんですけどね)。 |
| AN HTTPDのインストール DLした「httpd1xx.zip」を解凍します。 解凍先は任意のフォルダでいいみたいですが、 どこかのサイトで「Cドライブに解凍するのはセキュリティ上よろしくないと」いう記述がありましたので、 Dドライブなどに解凍した方がいいと思います(ぉ まぁ、確かにもっともな気はしますけどね。 |
| 「httpd.exe」 を実行します。 下のようなウィンドウが出たあとタスクトレイに格納されて、サーバーが起動してブラウザからの接続要求待ちとなります。 |
![]() ここでエラーメッセージが出た場合は、 ・AN HTTPDを二重起動している ・IISなど、他のHTTPサーバが動いている ・プロクシサーバ機能にチェックがあり、そのときのサーバIPアドレスが正しく設定されていない 等が原因にあるようです。 エラーメッセージなどが出ることなく、起動した場合は ブラウザに http://127.0.0.1/readme.html と入力し、「AN HTTP Server 1.xx README」のページが表示されることを確認してみましょう。 |
| ドキュメントルートの設定 ドキュメントルート(制作したHTMLを格納するところですね)を設定します。 これも任意のフォルダを指定できますが、セキュリティ面などからCドライブにはおかない方がいいでしょう。 私はDドライブに「www Root」と言うフォルダを作りました。 ここに適当な「index.html」を作って、ブラウザに http://127.0.0.1/ と入力すればその「index.html」が表示されるはずです。 ここに適当な「abc.html」を作って、ブラウザに http://127.0.0.1/abc.html と入力すればその「abc.html」が表示されるはずです。 |
![]() ちなみに↑の図ですが・・・ 私は「バーチャルホスト」という機能を使って1台のPC上で複数のサーバーが動いているかのように複数のサイトを開設しています。 ですので、「バーチャルホスト」にチェックが入っていますし、「ドキュメントルート」もwww Rootの下に「ae101」と言うフォルダが作られています。 まぁ、いろんなテストのために複数のサイトを動かそうと思い、バーチャルホスト機能を使っているんですが、 一つしか動かさないというのであればこのへんは関係ありません。 「バーチャルホスト」にチェックを入れる必要もないですし、www Rootの下にHTML文書をおいて作成していけばOKでしょう。 ユーザホーム(/~user)の設定は必要なければいりません・・・ チェックを外しても問題ないですね。チェックが入っていますけど、使ってないんです(おぃ |
| Perlのインストール CGIを動かすために必要です。 CGIを動かさないのならいらないんですけど、せっかくの自宅サーバです。 レンタルサーバーでは制限される事が多いCGIも無制限で動かせますし、ローカル環境でテストも出来ますので、 ぜひインストールしてCGIを使える環境にしてしまいましょう。 http://www.activestate.com/Products/Download/Download.plex?id=ActivePerl にある ActivePerl 5.6.1 build 635 をDLしてきましょう。新しいバージョンが出ていますが、安定性を求めて一つ前をDLするのが良いようです。 ちなみにDLするのはWindows用のMSI packageです。 インストールは実行すればYesとかNextをクリックしていけば終わります。時間が少しかかりますので、待っていましょう。 インストールする場所ですが、これはC:\Perlのままでいいと思います。 D:\Perl等の任意の場所でもOKです。 インストール終了したらWindowsを再起動しましょう。 Perlが正しくインストールされたかどうかは、MS-DOSプロンプト(コマンドプロンプト)から perl -v とコマンド入力すれば、 Perlのバージョン情報が表示されるはずです。これでインストールされているかどうかの確認が出来ます。 |
| CGIの動作確認 AN HTTPD を確実に動かす方法 こちらを参考に動作確認してみて下さい(ぉ いや、ここに書いてもいいんですが、いくら短いとはいえCGIスクリプトをそのまま載せるのはちょっと問題あるかと思いまして・・・
あらためて断っておきますが、私ははっきり言ってよくわかっていません。 |
|
|
|
FTPサーバーの構築 |
| Webサーバーを構築したので、FTPサーバーも構築してみますか・・・ WebサーバーとFTPサーバーを稼働させておけば、旅行先など外出先から自宅サーバーにアクセスしてHPの更新も出来ますね。 また、メールで送信することの出来ないような大きいファイルを転送するのにも使えます。 FFFTPの様なFTPクライアントソフトとIrvineのようなDL支援ソフトを併用すると便利に使えるんですけど、 思いつくのは法律に引っかかりそうなことばかりですので、やめましょう。 あくまで、外出先から自宅サーバーにアクセスして、HPを更新するのが目的です。
FTPサーバーソフトも色んな物があります。 インストールや簡単な設定を紹介します。 |
|
制作中(笑) |
|
|
|
セキュリティ関連 |
|
WebサーバーやFTPサーバーを構築して自宅サーバーからHPを公開すると言うことは、世界中からアクセスされると言うことです。 当然ですが、悪意のある人がアタックをかければHPの改ざんや個人情報の漏洩と言うことも十分あり得ます。 そういうことにならない様にするにはセキュリティに関する設定をちゃんとしないといけません。 どうしたらいいのか? 最初にも書きましたが、 「ルーター」 「ファイヤーウォールソフト」 「アンチウイルスソフト」 この3つをちゃんと導入すること。まずはここからです。 ルーターの設定でHP公開に必要なポート以外は空けない。 出来ればですが、 Webサーバーとしてのみ使うPCを用意する。 普段使うPCをWebサーバーにしたり、Webサーバーとして使うPCをファイルサーバー等として使うことによって、 他のデータに簡単にアクセスすることを可能な状態にしないのがいいみたいです。 ですので、Webサーバー専用の貧弱ノートPCが確保できれば一番いいと思います。 HDDは小さくても個人のHP公開には何も問題ないですから、OS、サーバーソフト、HPのデータ 等最低限必要な物だけがHDDに入っている状態 になっていれば、動作も安定しますし色々な危険も減るということですね。 |
| ■ ルーターの設定 当然ですが使用するポートを開いてサーバーにするPCと繋がるようにしないといけません。 TCPの主なポート番号 WebサーバーとFTPサーバーですので、80,20,21だけでいいと思います。
|
| セキュリティの観点から念のため、サーバーPCにログオンできるユーザー情報を変更しました。 コントロールパネル→管理ツール→コンピューターの管理→ローカルユーザーとグループから Administrator のパスワードの変更 Guestアカウントの停止 を行いました。 |
| 制作中(笑) |
|
|