100%フリーソフトで自宅でサーバーを構築してみよう!


自分のパソコンへ、外部から気軽にアクセスしたいと思ったことはありませんか?
ホームページを好きに作って、みんなに見てもらいたいと思ったことはありませんか?
メールアドレス一つじゃなくて、沢山欲しいと思ったことはありませんか?
これら一つでも当てはまることがあったら自宅でサーバーを考えてみてはどうでしょう。
ADSL、CATV、光・・・ 常時接続があたりまえになりつつある時代です。せっかくですからこの快適な環境をそのままで、フリーソフトを使って構築に挑戦しましょう。

  index
  はじめに

サーバーというと最近ではLinuxが流行ですが、自宅である物を使ってとなるとWindowsサーバーでしょう。
今回はWindowsでプチサーバーの構築です。

マシンの性能は・・・
サーバーというと「高価な高性能マシン」というイメージがあるようです。
今回の場合一度に沢山の人が同時にサーバーに訪れる様な目的のものではないので、あまった自作パーツを組み合わせたり、もしくは古くなった使われなくなりつつあるパソコンでWindowsが動くパソコンならOKです。

  サーバー構築条件

<通信環境チェック>
サーバーに適しているかどうか通信環境をチェックしてみよう!

サーバー構築において必須条件があります

  1. 常時接続かどうか
  2. グローバルIDを取得できるかどうか
  3. ルーターを使用した場合NATテーブルが編集可能か
  4. 安全性は?

以上3つをチェックしてみよう。
1.常時接続かどうか

プチサーバーとは言っても、サーバーである以上常にアクセスを受けなければならない。特にメールサーバーを構築している場合には自分のサーバーが動いていない場合は相手方からのメールが届け先不明となる「いわゆる迷子メール」となりネットワークそのものに迷惑をかけることにもなります。
24時間接続が基本です。

2.グローバルIDを取得できるかどうか

このグローバルIDというのは「インターネット上にある自分の住所」のことであり、これを自分のサーバーに割り当てる作業が必要となります。
通常のADSLでは問題はありませんが、CATVの一部ではユーザーにローカルIPアドレスを割り当てている場合があります。(「ローカルIPアドレス」とは直接インターネットとは隔離された空間のこと。そこでは決められた範囲のアドレスが自由に設定出来る場所。但しそのアドレス自体はインターネット上から見えない。)
その様な場合はグローバルアドレスではないのでそのパソコンをインターネットに公開出来ない。

3.ルーターを使用した場合NATテーブルが編集可能か

ルーターは外部からのアクセスを原則シャットアウトしてしまいます。
このままではサーバーの公開が出来ないので特定のアクセス(ポートを開ける)を許可する設定をしなければなりません。この作業を「NATテーブルを編集する」と言います。

4.安全性は?

もちろん一番大切なことです。
24時間サーバーを動かすと言うことは、電気製品を24時間稼働させておくことです。
漏電、火災など起こさないように十分パソコンのメンテが必要でしょう。
  準備

■必要なソフトウエアの入手

1.ウェブサーバーソフトの入手

Webサーバーといったら AN HTTPD ServerBlackJumboDogApacheなどが有名です。
BlackJumboDogは、WWWサーバーだけでなくProxyサーバー、メールサーバーなど非常に高機能なソフトです。ただし、メールサーバー機能は主にイントラネットを主に開発されているので同じ開発元のソフトでRadish等のソフトの組み合わせが必要になります。チョット敷居は高いかも知れません。
Apacheですが、世界的にも有名で元々UNIX系のソフトです。Windows環境にも移植されていますがUNIX環境に慣れていない人には難しいかもしれません。
と言うわけで、今回はAN HTTPServerで作成します。

2.FTPサーバーの入手

フリーのFTPサーバーにはクイックFTPTiney FTP Daemonなどがあります。
ここではTiney FTP Daemonを使います。

3.メールサーバーの入手

メールサーバーソフトも色々あります。
メールサーバーを立ちあげる場合、一番注意しなければならない事はスパムメールの踏み台にならないようにすることです。一般にスパムメールとは、一方的に送られてくるダイレクトメールのことですが通常使われるSMTPというメール送信の為のプロトコルは、IDやパスワードを必要としません。そのため他人のSMTPサーバーを勝手に使ってダイレクトメールを送りつけることが可能です。その踏み台にされることが多々あるようです。実際初めて立ち上げてすぐにログを見てると非常に不可解なアクセスが多いのにびっくりするのも事実です。
これらを防ぐには、
1.メールの送信を許可するIPアドレスを指定してしまう方法。
2.パスワードで認証するSMTP認証。(「SMTP-LOGIN」方式、「SMTP-AUTH」方式など)
3.POP before SMTPで認証。
4.APOPを使用
などがあります。

1のIPアドレスの許可指定は非常に強固ですが、ななかなかインターネット上ではIPを固定出来る環境 を準備することは難しい場合が多く、運用上困難だったりします。
2の「SMTP-LOGIN」認証は暗号化されていないのでパスワードがそのままインターネット上を流れてしまうおそれがあります。「AUTH」認証については暗号化が行われています。
3のPOP before SMTPですが。こちらについては、おいでんホームページさんの
    【おいでん講座:POP before SMTPとは何ぞや?】に詳しく書いてあります参照して下さい。
4は独自のパスワードデータベースを用いて毎回異なるパスワードを利用してユーザー認証を行う仕組みでメール・サーバーとMail Softの両方がAPOPに対応している必要があります。
詳しくは窓の隠し芸etcというサイトのメールサーバーの仕組みのページに詳しく書いてあります。

今のところ、このPOP before SMTPとAPOPで対処するか。「SMTP-AUTH」認証の方法をせざる得ないでしょう。ただし、クライアントのメールソフトも対応している必要があります。しかしながら最近はAPOP対応のMail Softも多くなってきました。徐々に認証については改善してきているようです。
今回ここではNeonメールサーバーもしくはArGoSoft Mail Serverを使用します。

4.変化するIPの更新ソフトの入手

独自ドメイン名、つまり世界で一つの自分だけの名前http://***.**.**を入手(入手方法は後記)したら。その名前をDNSを通じて対応したグローバルIPアドレスに変換しなければならない。
個人で自宅サーバーをインターネットに接続した場合、常に同じグローバルIPアドレスが割り当てられるわけではないことが多い(対応接続業者にもよる)のでチョット工夫が必要です。
たとえばこのホームページで言えばhttp://miyanet.ddo.jpはある時は219.97*.17*.1**であるが、違う時間には219.96*.16*.** と言うように接続の際や接続中でもグローバルIPが変化してしまいます。
このグローバルアドレスを監視して変化があったらDDNSサービスサイトにドメイン名とIPアドレスの対応を自動的に更新してつねにドメイン名でアクセスすると自分のパソコンに来るように設定するソフトが必要です。
ここではDiCE for Windowsを使用します。
  ドメインの取得(DDNSサービスへの申し込み)

独自ドメイン名、つまり世界で一つの自分だけの名前http://***.**.**を入手する方法ですが、通常正式にドメインを取得するにはお金がかかります。ドメインを取得するサービス「DDNS(ダイナミックDNS)」を使えば、完全にオリジナルではないけれど空きがあれば自由に好きな文字を付けたドメインを無料で入手出来ます。
DDNSサイトの種類やサービス内容についてはDiCEのホームページ等で表となって説明されていますので参考にして申し込んで下さい。

  FTPサーバー

Tiney FTP Daemonインストール

圧縮されたインストーラー付きの自動解凍ファイルですからダウンロードしたEXEファイルを実行して任意の場所にインストールして下さい。

■設定

起動後は以下のような状態になります。

「メニュー」の「システム設定」を選択すると

 【全般のタブの状態です】
特にここで設定するのは最大ユーザー数とデータポートです。
最大データ数:FTPで同時にアクセスするだろう人数で適当な値を入力して下さい。
データーポート:インストール直後は「0」が入力されています。通常はポート20を入力しておいて下さい。

*ふつうノーマルモードFTPで使われるポートは20,21です。その他パッシブモードなどありますがそうなると使われるポートも増えていきます。

*FTPで使われるポートについては、ルーターをお使いの方は非常に重要となりますので注意!









【ログファイルタブの状態です】

色々な動作状態をログファイルに書き込む場合は「ファイルに保存」の左にチェックを入れましょう。
























【ログインタブ】の状態です。


特に左の図のようで良いでしょう。





















【別名】のタブのようす

ここで「ドライブの別名」とは、FTPでサーバーにログインしたときに見せるドライブの名前のことです。後でユーザー設定の欄で説明しますが、相手に見せるフォルダがC:\Webというフォルダならそのまま見せるだと、相手にはそのまま表示され別名を登録するとC:\Webと言うホルダがその別名で表示されます。公開するホルダが深い階層であっても公開されるのはその別名であるので、サーバーのドライブ状態は相手には公開されません。











「メニュー」の「ユーザー設定」を選択すると

このような状態になります。

ここでFTPでログインするユーザーを登録します。













【anonymouse】の設定

だれがアクセスしてもいいフォルダがある場合はこの名前でユーザーを作りましょう。(決まりみたいな物です)

通常はパスワードは「メールアドレスを要求する」か、「パスワードを要求しない」でいいでしょう。

公開するホームディレクトリを忘れずに設定しておいて下さい。














ここはダウンロードのみで、書き込みはさせたくない場合「全ての書き込みを許可しない」にチェックします。
























ここは上記のチェックがない場合、細かく禁止事項を設定出来ます。

























この画像はパスワードでログインを選別しようとした設定画面です。

パスワードを決めて入力しています。同時に暗号化させています。






















パスワード入力者のログインですのでファイルの読み書きを許可しています。






















この状態は読み書き自由!

全て自由(禁止していない)な状態です。























以上簡単な設定例でした。

WindowsXP、2000、NTですと「サービス設定ユーティリティ」でバックグラウンドサービスとして起動出来ます。
Win95,98MEではスタートアップに登録して起動と同時にスタートさせるのが良いかと思われます。

  Webサーバー

Windows環境で使うWebサーバーで有名どころといえば AN HTTPDでしょう。
入手出来るホームページは、作者の中田昭雄さんのホームページhttp://www.st.rim.or.jp/~nakata/ からどうぞ!

■インストール

ダウンロードをした後、インストールに適当なフォルダの場所に解凍して下さい。
解凍後、色々なフォルダやファイルが作られますが解凍されたその状態で使います。
プログラムの実行はhttpd.exeです。

■設定

上記の作者ホームページから関連リンクで紹介されている
http://member.nifty.ne.jp/hardy/win/anidx.html
が丁寧です。そこからどうぞ!

  PerlCGI環境設定

CGIを動かすならやはり Perlがお手頃でしょう。
Perlで作成されたフリーのCGIも、ネット上では非常に多くのものが存在します。
自分でいろいろ検討するのも楽しいものです。

■インストール&設定

ActivePerl, Perl for Win32をまず入手しましょう。
入手方法、インストール他、詳しい説明がされている「Perl for Win32 でフリーの開発環境」というページが
判りやすいのでお勧めです。

  ドメインの自動更新

DDNSのサービスサイトには、グローバルIPアドレスと取得したドメインを対応させるホームページ欄が
あるはずです。自分の変化するグローバルIPアドレスを自動でDDNSサイトに登録する便利なソフト。
今回はDiCE for Windowsを使います。

■インストール

Windowsインストーラーが付いていますのでそれに従って下さい。

■設定

DiCEはスタートアップに入れておけばサーバーの立ち上げ時忘れることなく実行するので便利でしょう。

  1. まず起動し、メニューの「イベント」の「追加」をクリック。
  2. 「設定ダイアログ」が開きますので適当なサービスの「説明」を入力。
  3. 「サービス」欄に自分の利用するDDNSサービス名を選択。
  4. DDNSサービスサイトから取得した「ホスト名」「ドメイン名」「ユーザー名」「パスワード」を
    間違えないように入力。
  5. 「イベントタイプ」は「DNS更新」にチェック。
  6. 「イベント有効」にもチェック。
  7. スケジュールの欄はどのような頻度で更新するかなのでそのサービスサイトの推奨する間隔で
    更新しましょう。
  8. 「メニュー」の「オプション」の「環境設定」を開き「IPアドレス監視機能」のタブを選択して、
    「IPアドレスが変化したらDNSイベントを強制実行する」にチェックを入れる。
  9. 同様に「IPアドレスの検出方法」は「自動」に設定。
    「プライベートIPアドレスは検出しない」にチェック。

これでIPアドレスの変化、または一定期間で自動的に更新してくれます。

  メールサーバー

Freeのメールサーバーはいくつかあるようです。
有名なところでAr GoSoft Mail Serverや、Neonメールサーバーなどがあります。
それぞれ気に入った方をダウンロードしてインストールして下さい。

Ar GoSoft Mail Server設定
ここの設定は有名な「鷹の巣」の自宅サーバー」の「設定例のページ」
「なかよしサーバー」「ArGoSoft Plusのページ」が参考になります。

「Neonメールサーバー」設定
NeonメールサーバーにはHTMLによる詳しい説明書がついているようですのでそちらを参考にして下さい。

  その他、サーバー構築情報リンク

■ソフト供給元

■使い方、その他


以上