無料で絵文字ドメイン名とそのSSL証明書を取得して遊ぶ (Freenom × Let's Encrypt)


はじめに

去る 2016/10/20、Let's Encrypt が IDN (国際化ドメイン名) に対応したようなので、さっそく試してみたいと思います
どうせ試すなら無料で楽しく、ということで絵文字ドメイン名を取得して遊んでみることにします

https://🌙👻🎃🎃🎃👻🌙.tk/

無料で絵文字ドメイン名を取得する (Freenom)

先日投稿された「無料のドメインを取得する(2016年10月)」にて紹介されている Freenom では .tk/.ml/.ga/.cf/.gq が無料で取得できるだけでなく、絵文字を含む IDN が取得可能です

まずは取得したいドメイン名の Punycode を調べます
方法は簡単で、Punycoder.com で「Text」フォームに好きな絵文字を入力し「Convert to Punycode」ボタンを押すと「Punycode」フォームに Punycode 変換された文字列 (xn--...) が出てきます
絵文字の入力は http://unicode.org/emoji/charts/full-emoji-list.html の「Brow.」列や、getemoji.com などからコピペするのが簡単です

あとは「無料のドメインを取得する(2016年10月)」を参考に、調べた punycode 文字列で Freenom にてドメイン名を取得すれば OK です
今回は xn--5g8ha13aaa99lda.tk (🌙👻🎃🎃🎃👻🌙.tk) を取得してみました

無料で証明書を取得する (Let's Encrypt)

Let's Encrypt での証明書取得方法については事例がたくさんあるので省略します
IDN の証明書を取得する際の注意点としては、ドメイン名として直接絵文字等を使用するのではなく、Punycode 変換後のドメイン名 (xn--...) で証明書の申請を行うことです
また現時点では公式の certbot スクリプトはまだ IDN に対応していないようなので、最新の開発版 certbot をインストールするか、非公式クライアントを利用する必要があります

ちなみに拙作のブラウザ用 Let's Encrypt クライアント「SSLなう! (https://sslnow.ml/)」でも IDN の証明書が取得できます
「SSLなう! 」については前回の記事「Let's Encrypt の証明書をブラウザ上で簡単取得 (dns-01 / ECDSA もあるよ)」を参照してください

無事証明書が取得できたら準備完了です

遊びかた

Web で遊ぶ

独自ドメイン名と証明書を入手したら、まずは Web ですね
せっかくの絵文字ドメイン名なので、うまく絵文字を選んでネタサイトを作れば楽しそうです

ただリンクに絵文字を使った場合、ブラウザ環境によってはアクセスできない可能性があるので、リンクは Punycode で張っておいた方が無難かもしれません
以下の 2 パターンでブラウザの挙動に違いがあるかどうかを確認してみてください

URL に絵文字 (Unicode) を使用したリンク :
🌙👻🎃🎃🎃👻🌙.tk
<a href="https://🌙👻🎃🎃🎃👻🌙.tk/">🌙👻🎃🎃🎃👻🌙.tk</a>

URL に Punycode を使用したリンク :
🌙👻🎃🎃🎃👻🌙.tk
<a href="https://xn--5g8ha13aaa99lda.tk/">🌙👻🎃🎃🎃👻🌙.tk</a>

メールで遊ぶ

Web の次はメールです
正しく設定すれば取得したドメイン名でメール送受信ができるようになります
メールクライアントにより表示は異なりますが、From のアドレスが絵文字ドメイン名となっているメールが届いたらインパクト大ですね

しかし、残念ながら絵文字ドメイン名のアドレスを From として Gmail に送信すると下記のように拒否されてしまいました…

<[email protected]>: host gmail-smtp-in.l.google.com[64.233.188.26] said:
    550-5.7.1 [X.X.X.X] Our system has detected that this message is
    attempting 550-5.7.1 to use a domain name that does not meet our domain
    name policies. 550-5.7.1 Please visit 550-5.7.1
    https://support.google.com/mail/?p=DomainNameError to review our Bulk 550
    5.7.1 Senders Guidelines. xxxxxxxx.xxx - gsmtp (in reply to end of
    DATA command)

どうやら Gmail はドメイン名に使える文字列のポリシーを持っており、そこから外れたドメイン名を含むメールアドレスからのメールは拒否しているようです
送信できない宛先が存在する以上、絵文字ドメイン名をメールアドレスとして常用するのは現実的ではなさそうです

おわりに

当初は鳴り物入りで(?)登場したものの、なかなか使用されているのを見かけない IDN で何か遊べたらなーと思ったのですが、あまり遊び方が思いつきませんでした
世の中には絵文字ドメイン名を利用した短縮 URL サービス linkmoji なんてものもあるようで、まだまだ他にも使い道はありそうな気がします
楽しそうなアイディアがあればぜひぜひ教えてください

それではみなさん良い週末を
Happy Halloween !!

参考