share facebook facebook twitter menu hatena pocket slack

作成済みのELBにSSL証明書を設定する

運営上でSSL証明書の設定が必要になる場合がありますが、既にELBを利用している場合を想定して、設定方法を書いてみたいと思います。

ELBを既に利用している時は、iamコマンドとAWS SDK for PHPで設定を行います。

下記は、前提条件とします。

  • SSL証明書取得済み
  • iamコマンド AWS SDK for PHP利用環境構築済み

まずは、証明書のアップロードです。
アップロードは、iam-servercertuploadコマンドを利用します。

iam-servercertupload -c 中間証明書 -b SSL証明書 -k 秘密鍵 -s コモンネーム --aws-credential-file credentials.txt

証明書のアップロード確認は、iam-servercertlistbypath または、iam-servercertgetattributesコマンドを利用します。

iam-servercertlistbypath --aws-credential-file credentials.txt
iam-servercertgetattributes -s コモンネーム --aws-credential-file credentials.txt

そして、credentials.txtの中身は下記のようになります。

[credentials.txt]

AWSAccessKeyId=AAAAAAAA
AWSSecretKey=SSSSSSSS

次にSSL証明書の登録になりますが、下記のようなphpを実行します。
(東京リージョンのELBに設定とします。)

require_once("sdk.class.php");


$elb = new AmazonELB();
$elb->set_region(AmazonELB::REGION_APAC_NE1);

$response = $elb->create_load_balancer_listeners("ロードバランサー名", array(
array(
"Protocol" => "HTTPS",
"LoadBalancerPort" => 443,
"InstancePort" => 80,
"SSLCertificateId" => "arn:aws:iam::xxxxxxxxxxx:server-certificate/コモンネーム"
)
));

var_dump($response);

?>

上記で、ELBへSSL証明書の設定ができました。

こちらの記事はなかの人(be_hase)監修のもと掲載しています。
元記事は、こちら

長谷部 隆之

長谷部 隆之

別名cimacoppi。日々サーバ運用保守を行ってます!

cloudpack

cloudpackは、Amazon EC2やAmazon S3をはじめとするAWSの各種プロダクトを利用する際の、導入・設計から運用保守を含んだフルマネージドのサービスを提供し、バックアップや24時間365日の監視/障害対応、技術的な問い合わせに対するサポートなどを行っております。
AWS上のインフラ構築およびAWSを活用したシステム開発など、案件のご相談はcloudpack.jpよりご連絡ください。