メイン

LINUX自宅サーバ アーカイブ

2005年11月20日

WEBサイト構築奮闘記

MovableTypeでブログを立ち上げる前までの話です。
ホームページってなーに?っていうところから始まって、自宅サーバを構築してしまうところまでのいきさつなんかをご紹介します。始めにブログを知ってれば、きっとこんなことしてなかったのかもしれませんね。。(^^;

KazuはSE(システムエンジニア)なのに、1年ちょっと前までWEBサイトの立ち上げ方もそもそもホームページってどういう仕組みでインターネット経由で見れるのかよく分かってませんでした。他のホームページ立ち上げてる人はきっとすごいのだな、というくらいにしか思ってなかったので。けど、ちょっと待てよ。他の人にもできるならおれにもできるでしょ?と考え、全くゼロの状態から下のような感じで勉強していきました。

(1)HTMLとの出会いと葛藤



 ホームページ作成に使われるのはHTMLという言語で、今まで人生で一度もHTMLに興味を示したことはなかったが、1年ちょっと前にふとしたきっかけで友人の勧めと協力を得て趣味である車のホームページを立ち上げた。HTMLベタ打ちでJavascriptを取り込んでみたりして、いろんなことを試した。

 その時HTMLやスタイルシートの勉強でお世話になったサイトは、とほほのWWW入門でした。下手な本買うより全然いい。

 その車のサイトはプロバイダー(OCN)で無料で10MBまで使えるPageOnというサービスで、その時は何も知らなかったので「おお、無料でできんのか!みんなこういうのを使ってんだな?すげー!」という具合に感動したけど、実際に作り上げてみると、簡単に10MBなんて到達してしまった。

 「なんだこれ、全然使えねーじゃん、でもまあとりあえずは別にもうそんなには追加しないし、いっか!」と至ってお気楽。

 そしてもう一つ、仲間内のゴルフのサイトを立ち上げる、と宣言してしまって、「あれ?もう10MB使い切ってるし、どうすんの?」と調べてみると世の中無料ホームページと称したサービスがわんさかあるではないか。

 早速、登録して作り始める・・・。「あれ?なんだこのドデカイ広告みたいのは!!」無料なんてムシが良すぎると思った。そういうわけか。にしても、これ、マジうざい・・・

 それから、いろんな無料ホームページに登録しまくり、一番広告が目立たないところを選んで、タダだからしょうがないんだしょ? と不本意ながらも使い始めた。

・・・と、このときは言いつつも、今はアフィリエイトを始めて、自分でたくさんバカバカ広告を張るようになってしまったが。人間どこでどう変わるか分からないですね。(^^;

(2)CGIとの出会いと葛藤



 やっとホームページも「らしく」なってきた。よくよく見ると他のサイトでは「掲示板」やら「問い合わせフォーム」、「カウンター」なんかが普通にあるではないか。ん?これ、どうやってやんの?また好奇心旺盛(単に無知すぎるだけ)なKazuはGoogleで調べまくった。そして、そういったものは

 ①自分で作る
 ②レンタルする
 ③フリーのCGIスクリプトを自分のところに置く

の3通りのやり方があることが分かった。①は現時点では無理、却下。③はなんのこっちゃ意味が分からん、②が一番楽そう。

 とりあえず、②で使い始める。「うお、また広告の嵐かよ!」しかもURLを見るとレンタルであることもバレバレ。なんだか気に食わない。じゃあ、③は?試してみよう、とまた調べ始めると、ゴルフのサイトとして立ち上げたサービスのYahoo! Geoctiesや車のサイトで立ち上げたOCNのサービスでは、ネットで見つけた自分の好きなCGIは置けない。予め向こうが用意した決められたもののみしか使えない。
ということは①も不可能。

 無料でCGIを置けるホームページサービスもあるが、更に広告はドでかくなる一方。なんか方法ないの?

 ちなみに③で超有名どころはKent-webなんかがあります。


(3)サーバを自分で設置



 更にKazuの好奇心は止まらなかった。世の中自分でサーバを立ててる人が多いことを知る。ほえ~それってすげーなー。でもハードルは相当高すぎ。問題点は以下。

 ①サーバが必要
 ②常時接続且つ常時電源ONである必要がある
 ③ルーターなどネットワーク周りやセキュリティの知識が必要
 ④サーバの設定を全て自分でやらねばならない
 ⑤固定のグローバルIPアドレスが必要?

 問題山積みすぎ。やっぱ諦めとく?自問自答。
①についてはちょうどPCを買い換えて、ノートPC(Mebius)が余ったので、ネットからLINUX(Redhat社のFedoraCore3)をダウンロードしてインストールしてみた。
これだけでもだいぶ苦戦。やけになり、800ページくらいある本も買って、なんとかクリア。

②、実家の母が立ち上げた事業のホームページ(レンタルサーバ利用:年間5万円:高っ!)をそのサーバに移せば電気代だけで済むよ、と勧誘、実家に置くことに決定。しかも実家はBフレッツ。とりあえず、設定が済むまでは自分ちで実施。

③、ひたすら適当に設定。ルータ(いわゆるブロードバンドルータね)の設定は意外と簡単。セキュリティはとりあえずよく分からんので最低限だけやって、公開してから考えよう。なんて思っていたら、公開した瞬間から、ものすごい勢いでいじめのような洗礼のようなアタックを受けまくる。ハッカーやクラッカーが世の中めちゃくちゃ多いことを身をもって経験。(つーか、初めはログの見方も分からなかったので、アタックを受けてることすら気付いていなかった。よく破られなかったもんだ。。)

④これが一番大変。分からんことだらけ。やりたいのは、WWWサーバの設定・公開、ファイルのUpload・DownloadでFTPサーバが必要でしょ。あとは、メンテナンスするためにTelnetでのログイン(後でSSHに変更)、どうせならメールサーバも立てるか、と言うのは簡単だけど、仕組みも何も知らないのでまずは勉強から。結局数ヶ月かかる。

⑤普通、企業とかじゃない限り、プロバイダーを通してインターネットにつなげる。しかし、常に接続してるわけじゃないユーザに固定IPをタダで渡せるほどプロバイダーは太っ腹じゃない。なので、IPアドレスは「たまに」変わってしまう。しかし、今は固定IPじゃなくても、サーバ公開できるんだって。ダイナミックDNSサービスというのを使う。DNSって何だったっけ?またしても自分の知識の浅さに絶望、ということで勉強。設定もうまく行き、これでIPアドレスが変わっても大丈夫。

長かった・・・苦節数ヶ月、ようやくサーバーが公開できました。



(4)PHP、MySQLとの出会い



 肝心のコンテンツのほうも少しずつ潤ってきて、仲間に約束したゴルフのサイトもそれらしくなってきた。けど、本来やりたかった、「スコア管理」がHTMLだけじゃ不可能。Excelのスキルが多少あったので、SEらしさをちょっと発揮し、

 ①スコアをExcelで管理
 ②ExcelマクロでスコアをHTML化
 ③同じくVBAで②のスコアをサーバに自動アップロード
 ④めでたくブラウザ上で表示

 自分のアイデアと技量に酔いしれました。ちょっとすごくね?おれ。(1ヶ月くらいかかったけど)

 でも、なんか違う。やっぱり理想系は、
 
 ①ブラウザからスコア入力・修正が可能
 ②データベースを使ってデータを管理
 ③Parオン率、スコア推移、平均スコアなどを自動計算して且つ、グラフ表示する
 
 でしょう。当然理想を追い求めました。
 まずはどうやったらそんなことが実現できるの?っていうところから。Perlを勉強してCGIを作るのか?でも、Perlってなんか嫌い。他の方法は!?と探していると、ありました!PHP言語です。HTMLの中に直接記述でき、直感的にすごい分かりやすい。①はこれでクリア。(つっても当然数ヶ月かかったけど)
 
 次はスコアをどこにどうやって持たせる(保管しておく)の?これは、やはりフリーのデータベースを探しました。メジャーなところで、MySQLPostgreSQLというのがあることが判明。両方使ってみて、なんとなくMySQLに。PHPとの連携も結構簡単で、ブラウザからスコア入力して、「更新」みたいにボタンを押すと、あっという間にデータベースに保存される。
 
 あともう一息!③のグラフ化。これもネットで調べまくって、JpGraphというPHPで書かれたツールがあり、円グラフでも折れ線グラフでも立体的なグラフでも何でも来い、というものだった。
 
 こうして、きっと一般に出せばゴルフ好きにはたまらない、もし売れば多少お金入るんじゃないの?っていう出来のゴルフサイトが出来上がった。ゼロからスタートした割にすごい。自我自賛。


(5)Xoopsとの出会い



 でも、なんかさ、ホームページって作ってる時は楽しかったけど、更新やメンテナンスが面倒くさい。しかもいちいちFTPソフトでアップロードして、それの繰り返し。本当面倒臭いんですけど。しかも、ちょっと変な修正をすればTABLEタグでレイアウトしたデザインはあっという間に崩れる。内容の記述をアップしたいだけなのに、気付いたらもとのデザインはどんなだったっけ?というあり様。もっとなんとかなんないの?やってられないよ。(実際はそこまで大変じゃないけど、面倒くさいのは確か。)
 
 ハイ、調べました。ハイ、ありました。Xoops(ずーぷす)です。まとまったデザイン、多彩な機能がインストールしてちょっと設定するだけでほぼ出来上がってしまう。コンテンツもブラウザから気が向いた時にチャッチャっと簡単にアップできるし、今までの煩わしさは一体なんだったの?
 
 早速、育児サイトや、ゴルフのホームページをXoopsで作り替えました。これでデザイン、コンテンツ、メンテナンス性、3拍子揃ったサイトが完成。
 

(6)そして・・・MovableType



 HTMLを始めて書いてから1年余り。趣味と知的満足度を満たすだけのつもりが、すごいことになってしまいました。世の中ブログが流行っている、といことでブログも始めてみました。当然、サーバインストール型のMovableTypeで!始めはブログをなめてました。しかしブログってすごい!何がすごいかって
 ・Xoopsもそうだが一貫性のあるデザインが何もしなくても完成する
 ・ほとんど何もしなくても検索エンジンにガンガンヒットする(SEO対策も別途やれば更に・・・)
 ・記事の表示が速い(始めは「再構築」の意味が分かりませんでしたが^^;)
 ・アフィリエイトも始めやすい
 ・ブログランキングがあちこちにあるので、登録すればアクセス数がどんどん増えていく
 ・記事の更新が簡単
 ・写真付き記事も簡単にアップできる
などでしょうかね。しっかし本来のSEの仕事、してんのか?おれ。


2006年8月28日

NetworkSolutionsからValueDomainへドメイン移管

うちのサーバ(実家サーバ)ではサブドメインを含めると6個以上ドメインを運営しています。
このブログのドメインは始めからValueDomainで取ったんだけど、うちの親が自分の事業用に取得したドメインは誰からかの紹介でNetworkSolutionsがいいよ、と言われてNetworkSolutionsで取得したらしい。

けど、このNetworkSolutionsという会社、アメリカの会社で日本でも結構始めは
安い、サポートがいいってことで取得する人が多かったみたいなんだけど、最近はValueDomainを含め日本のレジストラでもそれ以上に安いのであまりNetworkSolutionsにしておく意味もない。


2006年9月 2日

DELL PowerEdge SC430 期待の新サーバが来た

買っちゃいました!新サーバ。
pedge_sc430_quarter_131x145.jpg

前のエントリ「新サーバ投入計画」で書いたけど、実家で動いているサーバはその後も夜中のフルバックアップ処理中にそのまま死んだり、そろそろ本当にやばい!

なんせノートPCですしねぇ。
ただLINUXを入れてWEBサーバにするだけならさほど負荷はないし、問題ないんだけど、MovableTypeもCGIだのデータベースだの使っててかなり実はそれなりのスペックのサーバじゃないとダメということも判明。メールサーバ、DNSサーバ、ブログサーバ、1台でよく頑張ってはいると思うけどね。

今の死にかけノートPCサーバのスペックはこんな感じ。


2006年11月18日

ノートPC帰還

実家で約1年2ヶ月の間、FedoraCore3でサーバとして働いてくれていたMebiusが実家から郵送されてきました。
今となってはもう5年くらい前のノートPCでスペックもかなり悪いのに、よく1年以上もインターネット上の攻撃に耐えながら頑張ってくれたもんだ。(最後らへんはかなりよく落ちていたが。。)

今は新サーバにバトンタッチしているけど、スパムメールを1日500通以上をはじき、その他不正なSSH接続、FTP接続もあわせると1日に1000件以上の「拒否」を繰り返しているわけで、そういった「本来なら必要ない処理」(インターネットが安全だったらの話・・・)だけでも結構サーバ負荷を食うのです。
本来のサーバ処理に費やすリソースがそんなろくでもないことに使われているかと思うと、本当にインターネットっていうのは嫌な世界です。

実際、メールのログをtail -fで見ていると、Rejectのメッセージが次から次へと流れていきます。
たまに、本来受け取るべき正当なメールをはじいてしまうケースもなくはないので、シェルを組んで正当なメールサーバからのアクセスを抽出するようにしています。(そういうサーバは一定間隔でアクセスを繰り返すので抽出可能。不正なサーバは大抵数回までしかアクセスしてこない)
そのIPアドレスをホワイトリスト(許可リスト)に追加してやって、などをやったりしないと親がメールを使ってるので「送ったと言われたメールが届かないぞ!」なんて文句を言われたりします(^^;

話はそれましたが、役目を終えて帰還したMebiusは実験台(FC6?)として使うか、XPを戻してあげてもっと優しく使ってくれる人の元へ旅立たせるか、考えよう。。



2006年12月28日

Postfix+SMTP-AUTHでメールをプロバイダに中継

サーバを置いている実家ではインターリンクというプロバイダを使っています。
Bフレッツ接続(Zoot)よくばりメール固定IP1個で月2,000円という安さのためです。

あと、サポートもなかなかいいです。メールでも返答が数分後に返ってきたりします。

また、固定IPでDNS逆引きオプション(MOOTサービス)を最近付けましたが、固定IPに対してDNS逆引きを行ってくれるプロバイダは少ないと思います。
DNS逆引きが設定されることで、固定IPに対してドメイン名が返ってくるので、正式な運用を行っているメールサーバ(≠スパムメール業者)として認識されたりする可能性が高くなり、メールサーバでは有利です。

さて、今回はこのインターリンク社のメールサーバにメールを中継させて相手に送る、という設定をやってみた。

なぜそんなことをするか?



RSS

Add to goo
Add to google

はてなRSS
feedpath
Subscribe in Bloglines
Subscribe with livedoor Reader




Tag cloud

お勧め!