素人が作る WinXP Pro 自宅サーバのコンセプト・経過と盲点

建設業界に身をおく小生もご多分に漏れず収入もなく、とにかく無料でかけずりまわり、サーバを立ち上げることができました。鷹の巣さんを手本に着手しましたが、遭遇するもの全て初物ばかり、課題が噴出する一方で消化吸収するのに艱難辛苦の連続でした。今もって細かいことは解かりません。
このパソコンはCAD,設計計算、積算ソフトと書類、ワード文書、エクセル文書等の電算処理に業務で使っており、通常のパソコンの利用形態をそのまま生かし、且つ、サーバ機能を無料でプラスしたシステムを構築することを目標としました。従ってWindowsの機能は現在全て稼動した状態となっています。簡単に言えばWinXPにサーバ機能が乗っかっただけと考えて頂ければ結構です。
セキュリティ向上のため、新しくHDDを切り直しGドライブを設け、ここを自宅サーバ専用とし、全てのプログラム、スクリプトはWebルートから隔離し、ルータとFireWallをもうけています。
くんずほぐれつの泥試合になったのが2つあり、1つはファイアウォール、これは後記をみていただくとしてもう1つがフォームメールです。
フォートランとVBAのプログラミングは殆ど同じで作業手順を文章に近い言葉で書きます。これに対しVC++ではOSとのやり取り主体のため煩雑で難解ですが、構造は同様です。何れもWindowsの場合、クライエントエリアのエディットコントロール(TEXT)を使って作り、コンパイルして機械語に落します。できた実行ファイルは書き換えできないため、textファイル(ソースファイル)から同じ作業が必要になります。これに変わり最近は、Perl、Java、Php等のInterscripterを組込み、Script言語でTextに書くだけでコンパイルしなくともプログラムが実行できるようになり便利になりました。しかし、バグがあるとデバッグは難しく大容量のプログラムには不向きです。小生は「コンピュータの管理」のアプリケーション情報からミス部と内容をつかみ、わざとミス文字をタイプし場所を確定しデバッグしています。これらのプログラムの構造・言語はフォートラン、C++、MS.Dosと大変似通っていますので簡単にマスタできると思います。
HPの安全を期すため、HPからメールを送る場合はメールアドレスを表に出さないことが最低必須条件だと考えています。WindowsにはOutlook用のSendmail.dllが用意されていますが、基本原則に合致しない上、Microsoftがこれを使う方法を公表していないため使えません。Cgi、.exeファイルを含め十数種類をWebルート内で試しましたが、2つがなんとか動作しました。その中でゴーストの少ないPostmail.cgi改が最終的に残り、これをデバッグし正常に動作するようにしました(最終は略原本通り)。通常、メールはSendmailプログラムで特有の言葉に変換して送りますので、このCGIにマッチしたものを見つけるためいろんなソフトを延々と試しました。これを最後にフォームメールは諦めようと思いながら最後の候補を試し成功したのが、Semdmaneです。
漸くサーバ構築の確信が得られ、CGIをWebルートからアクセス不可能なHTTPルートに移動、.Exeをプログラムヤードに移動、HTTPの.confを書き換え、ホームページにFormを設定し、メール動作試験に成功、メールサーバのPASVの設定と稼動試験をしていました。
ところがある日突然CGIのテキスト画面が出るようになりそれ以上は進まなくなりました。何度やっても変わりません。仔細に状況を検討しているうちに、XP Pro は厳密にルールに従っており、実行プログラムを識別して作動していることにハット気がつきました。そこでCGIを選択しそのプロパティ画面で実行プログラムPerlとの関連付けをし、以降順調に動いています。
皆さん、ここまでくるのに延々一ヶ月もかかってしまいました。これが素人である所以でもあり、OSの基本理念がバージョン毎に違ってくる上に、メーカが公表しないために起こる特有のトラブルでもあります。
以下に各テーマごとに基本理念、備忘事項、トラブリから得られた注意点に付き纏めましたので、参考にして下さい。又、XP ProでのWebSite構築に関する質問がありましたらホームページからメールして下さい。