OS X Server で自宅サーバーを立てよう

どうも、つばさ♂です。
今回は OS X Server で自宅サーバーを立てた際の手順的なものを紹介したいと思います。
現時点で最新のバージョンである OS X Server 10.8 (Mountain Lion) が対象となっております。
あくまでも自宅サーバーを立てるのは初めての初心者がネットでいろいろ調べながら試行錯誤してみた記録なので、より適切な手順やもっと良い方法があるかもしれません。

OS X Server

まずは、環境を。
メインの PC は iMac (27-inch, Mid 2011)ですね。
そして今回サーバー用に新しく購入したのが Mac mini (Late 2012)です。こちらは OS X Server 搭載モデルではなく、通常の OS X 搭載モデルを購入し、後から App Store で Server.app を購入する形で運用します。
メインの iMac は Thunderbolt Display を接続して 27 インチデュアルディスプレイ環境となっているので、サーバー用の Mac mini は初期設定後は本体のみで運用し、OS X 標準の画面共有機能を利用してメインの iMac からサーバー用の Mac mini を操作する方向で構築しました。

INDEX

独自ドメインの取得

まず、最初に独自ドメインを利用する場合は独自ドメインを取得しておくのがいいかと思います。
独自ドメインと言うのは、当サイトで言うところの wingx.net ですね。例えば http://***.hogehoge.com/ のような URL があったとして、hogehoge.com の部分が独自ドメインとなります。
お名前.comFC2 ドメインなどのレジストラを利用して取得するのがいいと思います。
.com や .net ドメインが 800 円/年ぐらいの価格で取得できます。
私は FC2 ドメインで取得しました。
ドメインには Whois 情報というものがあり、そのドメインの所有者の個人情報を公開することになっています。レジストラを利用してドメインを取得すると、たいていのレジストラではこの Whois 情報にレジストラの情報を登録することが出来るので、自分の個人情報を公開する必要がないというメリットもあります。

Dynamic DNS サーバの設定

独自ドメインを取得しただけでは、そのドメインと自分のサーバーをつなぐものはありません。取得したドメインにアクセスしても、「サーバーが見つかりません」と怒られるでしょう。
取得したドメインにアクセスがあった時、自分のサーバーの IP アドレスにアクセスさせてやる必要があります。この仕組みが DNS (Domain Name System)です。
通常はプロバイダから固定 IP アドレスを取得し、DNS サービスに登録するのが一般的かと思いますが、私の契約しているプロバイダでは固定 IP アドレスを発行していないとのことで、今回は DDNS (DynamicDNS)サービスを利用することにしました。
DDNS サービスを利用すると、固定 IP アドレスを取得する必要がないので楽ですね。
しかしながら多くの DDNS サービスは無料ではありません。
できるだけ費用は抑えたいので今回は無料の DDNS サービスを利用します。
myDNS.JP というサービスですね。

myDNS の利用方法

myDNS.JP

若干利用方法がわかりづらいのが難点ですが。
登録は氏名・国名・住所・電話番号・メールアドレスを入力するだけなので簡単です。登録後、メールにて ID とパスワードが送られてくるので(この ID とパスワードはユーザーが自由に選んだり後から変更したりは出来ない模様?)、送られて来た ID とパスワードでログインしましょう。
Welcome Administrator というメニューが表示されるので、「DOMAIN INFO」という項目を選択し、以下の3ヶ所を入力します。

DOMAIN INFO の設定

・Domain* : (FQDN)
 → 取得したドメイン名を入力します。
・MX : (Hostname, Priority. FQDN)
 → メールホスト名(とりあえず mail と入力しておきましょう)
・Hostname*, Type*, Content, Delegateid or your id. (Hostname is not FQDN)
 → サブドメイン名(* と入力しておくのが無難です)
次に、IP アドレスを myDNS.JP に通知しなければなりません。
myDNS.JP では DNS 情報の生成期間が約 1 週間となっているようなので、1 週間に 1 度は IP アドレスを通知してやる必要があります。
しかしこれは簡単です。 OS X 標準のメール.app にアカウント情報を登録し、メール.app を起動しておくだけで自動で通知してくれます。
(なお、IMAP と POP3 の両方がサポートされている旨が myDNS.JP には記載されていますが、私の環境では IMAP 接続の場合は上手く通知してくれませんでした。特別な理由がない限り、IMAP ではなく POP3 にて通知を行う方がいいかもしれません。)

メール.app の設定

メールアドレス:myDNS.JP の ID@mydns.jp
受信メールサーバー名:mail.mydns.jp
送信メールサーバー名:mail.mydns.jp
ユーザー名:myDNS.JP の ID
パスワード:myDNS.JP のパスワード

このアカウントは実際にメールを送ったりすることはできませんが、メール.app がメールの受信をサーバーに問い合わせる際に myDNS.JP に IP アドレスを通知してくれるので、メール.app を起動しっぱなしにしておけば自動で IP アドレスが通知されます。
メールアカウントを正しく登録できたら、myDNS.JP の Welcome Administrator というメニューで「LOG INFO」という項目を選択し、ログを確認しましょう。

IPv4 UPDATE : mydns***** **.***.***.** (**********), mail, asia

などという記載があれば、 IP アドレスの通知が正しく行われています。
これで myDNS.JP での設定は完了です。
次に、DDNS の最後の設定として、ドメインを取得したレジストラ側の設定を行います。私は FC2 ドメインを利用したので、ここでは FC2 ドメインでの設定を載せておきます。

FC2 ドメインでの設定例

FC2 ドメイン メニュー

FC2 ドメインにログインし、左メニューから「DNS 設定」を選択します。(このメニュー構成、なかなか使いづらいですね。)
すると下の画像のようなページが表示されるので、「DNS の種類」で「独自の DNS」を選択し、「ネームサーバーの変更」で下の画像のように入力します。

FC2 ドメイン 設定

ネームサーバー 1 :ns0.mydns.jp
ネームサーバー 2 :ns1.mydns.jp

入力したら忘れずに「変更する」を押すようにしましょう。
myDNS.JP では設定がすぐに反映されますが、レジストラでは設定がすぐには反映されないこともあります。 DNS 情報が浸透するまで数時間〜数日かかるそうなので気長に待ちましょう。

Server.app のインストール

ここまで来てようやく OS X Server のインストールに入ります。
その前にサーバー用の Mac mini の設定をしておきましょう。
Mac App Store にて OS X 本体や付属のアプリケーションのアップデートは済ませているものとします。サーバーのセキュリティ上、OS X 本体のアップデートは確実にアップデートしておくことをオススメします。
それでは設定項目を見て行きましょう。
まず、スリープ機能を無効にします。サーバーは基本的に電源はつけっぱなしになるので、スリープ機能は必要ありません。
「システム環境設定」を開き、「ハードウェア」の「省エネルギー」を選択します。以下のスクリーンショットのように選択するといいでしょう。

スリープをオフにする

また、同様に「システム環境設定」で「パーソナル」の「デスクトップとスクリーンセーバ」を開き、スクリーンセーバを使用しないように設定しておきましょう。

スクリーンセーバをオフにする

さらに、Dock の拡大機能を無効にしておくといいかもしれません。出来るだけ余計な描画リソースを使用しないようにし、サーバーとしての運用に不要と思われる項目は極力減らして行きましょう。

Dock の拡大機能をオフに

最低限の設定を行ったら、次は OS X Server.app をインストールします。
最初から Server 搭載モデルの Mac を利用している場合は、改めて OS X Server.app をダウンロードする必要はありません。

OS X Server.app は Mac App Store にて ¥1,700 で購入できます。

App Store で OS X Server.app を入手

サイズが 160MB とそこそこ大きいので、インストールに多少時間がかかるかもしれません。
インストールが完了したら、Server.app を Dock に登録しておきましょう。

Dock に登録

OS X Server の設定

準備ができたら、早速 Server.app を起動してみましょう。
初回起動時は「Server を設定します」という画面が表示され、画面の指示に従って進めると、「サーバへのアクセス」という画面が表示されます。
この画面の設定は後から変更することも可能なのですが、ここでは「ドメイン名」を選択し、入力フォームに必要な情報を入力します。
続いて「Apple プッシュ通知」の設定画面が表示されるので、ここでは普段使用している Apple ID とは別に用意したサーバー用の Apple ID を登録するといいでしょう。
あとは画面の指示に従って進めるだけでサーバーの準備が完了します。
Server.app の初回セットアップはスクリーンショットを用意していなかった都合上、テキストのみでさっと解説しましたが、ここでつまずくようなことはないと思います。
あとは Server.app を使って、Web サイトの公開を行うだけです。
OS X Server では Web サイトの公開はとってもカンタン。
サービス一覧から「Web サイト」を選び、ウィンドウ右上のスイッチを「入」に切り替えるだけ。

「Web サイト」をオンにする

なお、デフォルトでは

/Library/Server/Web/Data/Sites/Default

が Web サイトとして公開されるフォルダとなります。

ポート開放

最後に、ポート開放を行います。
もちろん、ルータを介さずにサーバー用 Mac を直接インターネットに接続しているのであればポート開放は不要ですが、セキュリティ上好ましくありません。
ここではルータを介していることを前提に話を進めたいと思います。
ここまでの設定で、インターネット上のコンピュータが取得したドメインにアクセスした時、DNS サーバによってドメインが自分の IP アドレスに変換され、自分の IP アドレスに接続するところまでは出来ています。
しかしこのままポートを開放していない状態では、インターネット上からサーバーにアクセスしようとしても(多くの場合)ルータの設定画面が表示されてしまいます。インターネットに直接接続しているのはルータなので、インターネット側からアクセスされた際にルータにアクセスしてしまうのは当然のことですね。そこで、ポート開放によってインターネット側からルータへアクセスがあった際にサーバー用 Mac のアドレスに転送してやる必要があるわけです。
ポート開放の方法はルータの機種によって違いますが、ここではバッファローの WHR-G301N での設定例を紹介したいと思います。
あずルータにアクセスするために、ブラウザのアドレス欄に

http://192.168.11.1

と入力します。(ルータによってこのアドレスは異なります。バッファロー製のルータであればこのアドレスでアクセスできますが、詳しくは各ルータの説明書をご覧になってください。)
認証ウィンドウが表示されるので、
ID:root
パスワード:なし(パスワードを設定している場合は設定したパスワードを入力)
この認証情報でログインしましょう。
すると、以下のように AirStation Settings のページが表示されるので、メニューの「ゲーム&アプリ」をクリックします。

AirStation Settings

以下のように「ポート変換」画面が表示されます。

ポート変換

グループ:必要であれば新しくグループを作成したり既存のグループに含めても構いません。サーバー用のポート変換設定は個別のグループにまとめておくことをオススメします。
Internet 側 IP アドレス:エアステーションの Internet 側 IP アドレス
プロトコル:TCP/UDP:HTTP(TCPポート:80)
LAN 側 IP アドレス:サーバー用 Mac に割り当てた IP アドレス(ルータの DHCP リース設定でサーバー用 Mac の IP アドレスを固定してやる必要があります。)
以上のように入力し、「新規追加」をクリックしてポート変換を登録します。
これで、インターネット側から取得したドメインにアクセスがあった際に、サーバー用 Mac にアクセスしてくれます。
LAN 外部のコンピュータから取得したドメインにアクセスしてみて、接続が正しく行われていることを確認してみてください。

初めての自宅サーバー設置でしたが、大きなトラブルもなく無事にサーバーを公開することが出来ました。
サーバーに関しての知識はあまりないので、どこか間違っている箇所があるかもしれませんが、その時はコメントなどで指摘していただければ幸いです。
ではまた。

コメント

  1. 泥猫 より:

    自分もMacMiniを買ってサーバをたてようと思って、情報を集めていたらこちらのページにたどり着きました。
    結局2週間以上かかってしまいましたが、原因はDNS設定でした。
    とても参考になりました。ありがとうございます。

    1. つばさ♂ より:

      DNS 設定はすぐには反映されないことも多いので、正しく設定できているかどうか判別しづらいですよね。
      お役に立てたようで何よりです(*´ω`*)

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)