XXXX.ccってドメイン運用してみる

(2011/06/30)
さて、物は試しと、自宅サーバーでどこまでの運用が可能なのかやってみよう。 自宅にはVIAのC3が乗ってるマザーボードME-6000とそこにHDD2TBをくっつけてあるサーバーがある。wikiにしたり、ネットワークストレージにしたりといろいろ活躍してはいるが、通常のプロバイダがやってくれるサービス群には使ってない。つまり、メールやDNSです。ま、プロバイダに入っているとそっちは無料なんでイランという話もありまして、使ってない。けど、ちょっとやってみたくなーい?。

ドメイン取得

ということで、とりあえずドメイン取得。「ドメイン取得」でググると色々出てくるが、基本的にドメイン保持の料金はかわらないみたいだ。なので、一番上に出てきたお名前.comで安直に取得。XXXX.ccと4文字に拡張子(っておい)がcc。3文字はほとんどない。年間2900円くらい。月々250円ほど。缶ジューズ2本分でどこまで遊べるか。

とりあえず、普通に自宅サーバーをドメイン運用

まずは、www.XXXX.ccで自分の家のサーバーにつながるようにしてみよう。これは簡単だ。家にあるルーターのWAN側のアドレスを調べて、それをお名前.comのレンタルDNSに登録してもらうだけだ。これはAレコードってやつに、www.XXXX.ccは202.家のIPアドレスであると登録するだけ。んでもって、ルーターに80ポートの穴をあけて、そのアドレスを自宅サーバーのIPアドレスにNATする。問題は家の中から確認できないことだな。携帯で確認するか、excite翻訳とかで別のサーバーから中継して確認するかだ。

メール

次にメール。メールは現状ではプロバイダのPOP3サーバーに届き、そこにメールクライアントで接続して取得している。んだが、せっかくドメイン取ったんだ。ore@XXXX.ccって使ってみたいじゃん?。

 そのために、まず、自宅サーバーにメールサーバーをたてる。家のdebianでは標準でexim4が動いているので、これで良い。アカウントとしてoreは登録されているので、ore@XXXX.ccにメールできるようにしよう。

exim4の設定

exim4は以下のようにncurceで設定できる。

#>dpkg-reconfigure exim4-config
1.スマートホストでメール送信lSMTPまたはfetchmailで受信する。
2.システムメール名
  me6
3.入力側SMTP接続をリスンするIPアドレス
 空白
4.メールを受け取るその他の宛先
 XXXX.cc;me6
5.メールをリレーするマシン
 192.168.11.0/24 ←LAN内からは認める設定。
6.送出スマートホストのipアドレス
 smtp.lolipop.jp::587
7.送出するメールでローカルメール名を隠しますか?
 はい
8.表示するローカルユーザーのドメイン名
 XXXX.cc
9.DNSクエリのかずを最小限にとどめますか?
 いいえ
10.ローカルメールの配信方式
 Maildir
11.設定ファイルの分割
 なし

とりあえず、me6サーバー内部でメールの送信ができるようにしておく。さて、メールの受信ポートは何番だ?。25番か。とりあえずルーターの25番を開けよう。んで、プロバイダからテストする。メールの送信には587番を使うらしいつまり、こういうことか?。

うちのMac→587番→プロバイダのSMTPサーバー→25番→相手のメールサーバー

なるほど、個人で立てたSMTPサーバーからは直接は送信できない仕組みになっているのね。とりあえず、me6のdebianに作ってある俺のアカウント@XXXX.ccで受信できた。次に、メール送信サーバーとしてexim4を使おう。つまり、↓こうする。これがスマートホストって言うらしい。

うちのMac→ウチのサーバー→587番→プロバイダのSMTPサーバー→25番→相手のメールサーバー

こうするには、/etc/exim4/passwd.clientに書くらしい。

# Example:
### target.mail.server.example(ロリポを使うけど):login:password
プロバイダのメール鯖:ログイン名:パスワード

デフォルトではstmpへのアクセスは暗号化するらしい。だが自分のプロバイダはPlaneテキストである。なので/etc/exim4/exim4.conf.templateに以下を追加

AUTH_CLIENT_ALLOW_NOTLS_PASSWORDS=true

で、Macのメーラーのsmtpをme6のアドレス192.168.11.9にセットする(まだ内部のdnsはうごかしてない)。

 うーむ。送信で、相手にはじかれてしまうぞ・・。とりあえず。/etc/hostsのme6.XXXX.ccと書いて、me6のAレコードを登録してみた。
キター!!なるほど、送信元アドレスがme6.XXXX.ccでme6.XXXX.xxのアドレスが引けないからはじかれるので、me6.XXXX.ccを引けるようにAレコードにme6を入れて上げれば良いのか。

DNSサーバー

 内部からのアクセスだとドメインネームを持っていても、うまく使えず、ipアドレス運用になってしまう。そこで、内部にdnsサーバーを立てる。まぁ、普通にbind9を。

#apt-get install bind9

んで・・。/etc/named.optionsを編集

options {
        directory "/var/cache/bind";

        // If there is a firewall between you and nameservers you want
        // to talk to, you may need to fix the firewall to allow multiple
        // ports to talk.  See http://www.kb.cert.org/vuls/id/800113

        allow-query {
                127.0.0.1;
                192.168.11.0/24;
        };
        allow-transfer {
                127.0.0.1;
                192.168.11.0/24;
        };
        forwarders {
                202.224.32.1   // from provider
                202.224.32.2   // from provider
        };

        auth-nxdomain no;    # conform to RFC1035
        listen-on-v6 { any; };
};

こう?。俺のメインのlocalエリアは192.168.11.xだから、forwardersの中はasahi-netのページに書いてあったdnsサーバー2つ。

 んで、Zoneを設定するのだが、named.conf.localは以下の様にする。逆引きは使わないからいいや。

zone "XXXX.cc" {
  type master;
  file "/etc/bind/XXXX.cc";
};

 そんでもって、/etc/bind/にXXXX.ccを作って、編集。

$TTL   1D
@ IN SOA ns.XXXX.cc. root.me6.XXXX.cc. (
   2011082201
   3H
   1H
   1W
   1D )

        IN NS ns.XXXX.cc.
        IN MX me6.XXXX.cc.

ns      IN A  192.168.11.9 ;
me6     IN A  192.168.11.9 ;
XXXX.cc. IN A  192.168.11.9 ;

smtp    IN CNAME me6;
www     IN CNAME me6;
imap    IN CNAME me6;

 とりあえず、これでrestart

#/etc/init.d/bind9 restart

 テスト。とりあえずmacos-xでネットワーク設定のdnsのところだけ192.168.11.9に設定して、最初に自鯖を見に行くようにする。んでもって、macでコンソールを立ち上げる。

mac$>nslookup
>me6.XXXX.cc
Server:		192.168.11.9
Address:	192.168.11.9#53

Name:	me6.XXXX.cc
Address:	192.168.11.9

>www.XXXX.cc
Server:		192.168.11.9
Address:	192.168.11.9#53

www.XXXX.cc	canonical name = me6.XXXX.cc.
Name:	me6.XXXX.cc
Address: 192.168.11.9

>smtp.XXXX.cc
Server:		192.168.11.9
Address:	192.168.11.9#53

www.XXXX.cc	canonical name = me6.XXXX.cc.
Name:	me6.XXXX.cc
Address: 192.168.11.9

>XXXX.cc
Server:		192.168.11.9
Address:	192.168.11.9#53

Name:	XXXX.cc
Address: 192.168.11.9

>www.yahoo.co.jp
Server:		192.168.11.9
Address:	192.168.11.9#53

Non-authoritative answer:
www.yahoo.co.jp	canonical name = www.ya.gl.yahoo.co.jp.
Name:	www.ya.gl.yahoo.co.jp
Address: 124.83.187.140

うーん。大丈夫かな?。んで、面倒なので、ご家庭用ブロードバンドルーターのDHCPのDNSのところに192.168.11.9を設定。再度DHCPでアドレスを取り直せば設定完了。これで何か恩恵があるかというと・・今は無いな。前はRD-X53とかネットワークで設定する物がいくつか有ったけど、今ないし。プリンタの名前を設定してインクの状況を見るくらいかな?。Mac通しはavahiでつながるしねぇ。

ME6000 前へ戻る