2020/06/16

Alibaba Cloud OSS にカスタムドメインを設定してCloudflareと連携させてみた

Alibaba Cloud Object Storage Service(oss) は基本的にはサービス側が提供するドメイン(aliyuncs.com)で静的コンテンツなどを展開可能ですが、やはり独自のドメインで展開したいと言う場合もあると思います。

Alibaba Cloud OSS も独自のドメインを利用することが可能なので、今回はカスタムドメインを割り当てる手順をご紹介します。

また、今回は Cloudflare で管理しているドメインがあったので Cloudflare と OSS を連携してアクセスが出来ることも一緒に確認してみようと思います。

image.png

OSS の CNAME 割り当て

Alibaba Cloud DNS を使用している場合、CNAMEの割り当ては自動で行われるのですが、外部DNSを使用する場合は手動での割り当てが必要になります。

まずは、Alibaba cloud の管理コンソールから対象のバケットを選択し、パブリックエンドポイント(Access Over Internet)を確認します。
基本的にはバケット名.リージョンID.aliyuncs.comとなります。

image.png

確認したパブリックエンドポイントを Cloudflare の DNS に登録します。

image.png

今回はoss.xxx.comと言うサブドメインに対して Alibaba Cloud OSS を割り当てます。

image.png

正常にレコードが追加されます。

image.png

カスタムドメインの設定

Alibaba cloud の管理コンソールから対象のバケットを選択し 「Transmission > Domain Names」 から Bind Custom Domain Nameを選択します。

image.png

Custom Domain Name に CNAME を割り当てたドメイン名を入力します。
※Alibaba Cloud DNS で管理している場合は、事前のCNAME割り当ては不要です。

今回はoss.xxx.comというサブドメインを使用してみます。
「Submit」を選択します。

image.png

設定が完了すると以下のような画面が表示されます。
Alibaba Cloud CDN を使用する設定や、設定したカスタムドメインで HTTPS を受けるための証明書のアップロードなどが必要ですが、今回は前段に Cloudflare が居るので不要です。
※Alibaba Cloud 内で完結する場合は設定が必要になります。

image.png

Cloudflare 経由での Alibaba Cloud OSS へのアクセス

それでは設定も出来たので Cloudflare 経由で OSS のオブジェクトにアクセスしてみたいと思います。
以前 OSS で作った静的ページがあるのでそれを流用してみます。



./webinar/index.htmlにあるファイルにアクセスしてみたいと思います。

image.png

カスタムドメインに割り当てたドメインでアクセスすると問題なくコンテンツが表示されました!
SSL証明書の情報を確認するとCloudflareの証明書が出てくることが確認できます。

image.png

設定も特に難しいところが無くドメインさえあれば適用できましたね!
今回は Cloudflare を使いましたので、CDN と SSL などもついてるのですが、他のDNSの場合はその辺が必要かな・・・

2020/06/02

スイッチロールによる Alibaba Cloud の複数アカウント運用

はじめに

複数プロジェクトや複数環境用にクラウドのアカウントが複数存在する事はよくあると思います。
※パブリッククラウドによってはそうならないところもありますね。

その場合、各アカウント配下でログイン用のユーザーを作ったりしていると管理が大変になってきます。
今回は Alibaba Cloud で複数アカウントを持っている時に便利なクロスアカウントでのスイッチロールの使い方を簡単に紹介したいと思います。
※アカウント作成の方法は割愛します。

イメージは以下のような感じです。

image.png 

【スイッチ先】RAMロールの作成


最初にスイッチロールでログインされる「スイッチ先」のアカウントで
RAMロールを作成します。
「RAMロール」の画面でRAMロールの作成を選択します。 

image.png

「信頼済みエンティティタイプ」でAlibaba Cloud アカウントを選択します。 

image.png

RAMロール名に一意のロール名をつけます。
「信頼できる Alibaba Cloud アカウントの選択」の項目でその他の Alibaba Cloud アカウントを選択します。
テキストボックスに 信頼する Alibaba Cloud アカウントの UID(スイッチ元の Alibaba Cloud アカウントUID)を入力します。
「完了」を選択します。 

image.png

「RAM ロールの作成が完了しました。」と表示されるので、RAM ロールの権限付与を選択します。 

image.png

【スイッチ先】RAMロールの権限設定


権限付与の画面が表示されるので、スイッチロールでログインするユーザーに必要な権限を選択します。

※今回は例として管理者権限(AdministratorAccess)を付与しています。 

image.png

権限の付与に成功すれば権限付与は完了です。 

image.png

作成したロール名と下記のドメイン名を使うので覚えておきます。 

image.png 

【スイッチ元】RAMユーザーログイン

スイッチ元アカウントでのRAMユーザーの作成は割愛します。
RAMユーザーのログインに関してもドキュメントをご確認ください。 

image.png

Log onを選択します。 

image.png

MFAのコードを入力してSubmit Verificationを選択します。
MFAは「Google Authenticator」とか「Microsoft Authenticator」が利用可能です。 

image.png 

RAMユーザーでログインしている場合、右上のアイコンを選択すると以下のようなメニューが表示されます。
Switch Roleを選択します。 

image.png


【スイッチ元】スイッチロールの実行


Enterprise Alias / Default Domain Nameにスイッチ先アカウントのドメイン名を入力します。
Role Nameに作成したスイッチ先アカウントのRAMロール名を入力します。
Switchを選択します。 


image.png


再び管理コンソールの画面が表示されます、右上のアイコンを選択すると以下のようなメニューが表示されスイッチロールでログインできていることが確認できます。
Current ~がスイッチ先の情報
Login ~がスイッチ元の情報 


image.png

あとは、権限に応じた操作ができるようになっているので必要な作業を行うことが可能です。
なお、Back to Lo...を選択するとスイッチ元のアカウントに戻ることが可能です。


2020/05/28

Alibaba Cloud DirectMail ちょっとさわってみた

はじめに

パブリッククラウド環境ではメール送信サーバーが作れない、というのはよくある事ですがAlibaba Cloud でもやはりNGです。

そうした時には外部のメール送信サービスなどを使う場合も多いですが、Alibaba Cloud のサービスとしてもメール送信サービス(DirectMail)を提供しています。

今回は、DirectMail を触ってみたので簡単に使い方などを残してみます。

DirectMail の基本

DirectMail の提供リージョンは中国本土(杭州)シンガポールシドニーとなります。 中国本土からメール送信を行いたい場合は、杭州を使って送ることができそうですね。 日本からだとシンガポールリージョンを使うのが一番近いでしょうか。

image.png

DirectMail は信用レベルに応じて利用可能な範囲が決まっています。 一番最初の状態だとDaily quota:2,000(200 emails are free of charge.)ということで、1日の上限が2000通までとなっています。 詳しくはドキュメント参照 image.png


Credit grade Daily quota (emails) Monthly quota (emails)
Grade 1 500 15,000
Grade 2 2,000 60,000
Grade 3 5,000 150,000
Grade 4 8,000 240,000
Grade 5 10,000 300,000
Grade 6 20,000 600,000
Grade 7 50,000 1,500,000
Grade 8 100,000 3,000,000
Grade 9 200,000 6,000,000
Grade 10 500,000 15,000,000

DirectMail の料金

DirectMail の課金項目は送信メール数になります。

DirectMail の料金は従量課金で、1000通あたり$0.29 USDです。 毎日200通までは無料利用の範囲で利用可能です。 ※200 free email messages per day.と記載があるので、毎日だと思いますがちょっと確認かな🤔

また、Alibaba あるあるのリソースパッケージ(前払いプラン)も提供しています。 購入パッケージの送信数を上限とした前払いプランになります。

Resource package type 価格 有効期間 節約額(対PAYG)
50,000 emails USD 13.05 6 months > USD 1.45
500,000 emails USD 121.8 6 months > USD 23.2
1 million emails USD 230.55 6 months > USD 59.45
5 million emails USD 1123.75 6 months > USD 326.25

考え方としては、例えば50,000 emails購入した場合、6ヶ月間で50000通のメールを送信する権利を購入した事になります。 最初の1ヶ月で10000通送信した(無料分の200通を除いて)場合、残りの5ヶ月で40000通まで送信可能です。 ※リソースパッケージを超えた部分に関しては従量課金での請求が発生します。

最新の情報は製品ページを参照

DirectMail ドメイン構成の設定(必須)

最初にメールを送信するドメインを構成する必要があります。 「Email Domains」からNew Domainで使用するドメインを登録します。 image.png

今回はサブドメインを使用します。 もちろん、独自ドメインでも構いません。 image.png

Configureを選択します。 image.png

DNSの設定に必要なパラメータが表示されます。 下記の赤枠部分をドメインを管理しているDNSレコードに登録します。 image.png

DNS設定

今回は Alibaba Cloud DNSで管理しているドメインだったので、こちらで設定を行います。 Alibaba Cloud DNS へのドメイン登録の手順はこの辺を参考にして下さい。 Alibaba Cloud DNS へのドメインの追加は簡単に出来て無料で利用可能です。

DirectMail を設定する対象のドメイン名の Configure を選択します。

image.png

Add Record を選択します。

image.png

Edit Record 画面で Direct Mail の Domain Configuration 画面で表示された情報を入力していきます。 ※今回はサブドメイン(mail.xxx.com)を使用しているので一律mailというサブドメインを付加しています。

1,Ownership Verification

image.png

2,SPF Verification

image.png

3,MX Record Verification

image.png

4,CNAME Record Verification

image.png

入力完了後の画面は以下の様になります。 ※今回はサブドメイン(mail.xxx.com)を使用しているので一律mailというサブドメインを付加しています。

image.png

DirectMail ドメイン構成の設定(続き)

Cancel で前の画面に戻ります。

image.png

ステータスが「To Be Verified」であれば Verify を選択します。

image.png

Confirm を選択します。 image.png

ステータスが「Verification successful」となっていれば DirectMail のドメインの構成は完了です。 image.png

DirectMail 送信元アドレスの設定

「Sender Addresses」からCreate Sender Address を選択します。 image.png

以下の様な画面で送信元メールアドレスの設定を行います。 送信元メールアドレスは「Account @ Email Domains」の様な形になります。 Reply-To Addressは送信したメールの返信先として使われます。 Mail Typeは「Triggered」と「Batch」の二つのタイプから選択します。

  • Email Domains
  • Account
  • Reply-To Address
  • Mail Type

image.png

送信元メールアドレスを設定すると以下の様に登録アドレスが表示されます。 Edit the return addressで Reply-To Address の設定を変えることが可能です。 Set SMTP password では SMTP 利用時のパスワードを設定します。

image.png

DirectMail メールタグの作成(オプション)

DirectMail で一括送信メール(バッチメール)を送信する際に必要になります。 タグにより送信したメールの分類などを行います。

「Email Tags」から Create Email Tag を選択します。 image.png

タグの名前を入力してOKを選択します。 image.png

作成したタグが表示されます。 image.png

DirectMail メールテンプレートの作成(オプション)

Alibaba Cloud の管理コンソール又はAPIから DirectMail で一括送信メール(バッチメール)を送信するにはメールテンプレートが必要になります。

メールテンプレートの利用には Alibaba Cloud の審査が必要で1−3営業日かかる様です。

「Email Templates」からCreate Email Templateを選択します。 image.png

テンプレートの内容を入力してSaveを選択します。 image.png

作成したテンプレートは�「Draft」の状態なので、問題なければSubmit to Reviewを選択して審査に出します。 image.png

Confirmを選択します。 image.png

「Review passed」となっていたら利用可能です。 ※今回は文字数とか文言とかでテスト用と判断されたのか一瞬でReview Passedになりました😅 image.png

DirectMail 受信者リストの作成(オプション)

受信者リストは、DirectMail で一括送信メール(バッチメール)に使用される宛先アドレスのリストです。

「Recipient Lists」からNew Recipient Listsを選択します。 image.png

以下の項目を入力します。

  • List Name
  • Alias Address
  • Description image.png

リストが作られたのでUploadを選択してリストにアドレスを登録します。 登録はテキストファイル又はCSVファイルのアップロードによって実施します。 形式はドキュメントのCreate recipient listsを参照、又は画面のExampleからサンプルをダウンロードします。 image.png

アップロードに成功するとDetailsが表示されるので登録したアドレスが確認できます。 image.png

「Details」からアドレスの確認、削除、追加が可能です。 image.png

DirectMail コンソールからのメール送信(オプション)

「Email Tasks」からCreate Email Taskを選択します。 image.png

以下の各項目を選択してSendを選択します。 「Sender Address Type」はRandom AddressSender Addressesから選べます。 「Random Address」はランダム文字列とSender Addressesを組み合わせたアドレスが生成されます。

  • Recipient Lists
  • Template Name
  • Sender Addresses
  • Sender Address Type
  • Email Tags
  • Recipient Tracking image.png

Sent successfullyと表示されれば送信成功です。 image.png

送信したメールを確認すると無事に届いていました。 サブジェクトや本文も日本語を使いましたが問題なく表示されていますね。 image.png

DirectMail コンソールから送信レポートの確認

「Delivery Overview」から送信レポートを確認できます。 トータルの送信数、送信成功数などが確認できます。 image.png

「Recipient Tracking」のタブでメールの状況追跡(開封、クリックの確認)が可能です。 image.png

「Delivery Log」から各アドレスへのメール送信の成功、失敗などが確認できます。 image.png

おわりに

Alibaba Cloud DirectMail を使ってみた内容でした。 次は SMTP とか API を使っての送信あたりを試してみたいと思います。

中国からのメール送信もどこかで試してみたいなー

Alibaba Cloud OSS にカスタムドメインを設定してCloudflareと連携させてみた

Alibaba Cloud Object Storage Service(oss) は基本的にはサービス側が提供するドメイン( aliyuncs.com )で静的コンテンツなどを展開可能ですが、やはり独自のドメインで展開したいと言う場合もあると思います。 ...