Amazon EC2 AMI ツールのセットアップ
AMI ツールを使用して、Instance Store-Backed Linux AMIs を作成および管理できます。ツールを使用するには、Linux インスタンスにインストールする必要があります。AMI ツールは RPM として使用できるとともに、RPM をサポートしていない Linux ディストリビューションでは .zip ファイルとして使用できます。
RPM を使用して AMI ツールを設定するには
-
yum などの Linux ディストリビューション用のパッケージマネージャを使用して Ruby をインストールします。次に例を示します。
[ec2-user ~]$
sudo yum install -y ruby
-
wget や curl などのツールを使用して RPM ファイルをダウンロードします。次に例を示します。
[ec2-user ~]$
wget https://s3.amazonaws.com/ec2-downloads/ec2-ami-tools.noarch.rpm
-
次のコマンドを使用して RPM ファイルの署名を確認する:
[ec2-user ~]$
rpm -K ec2-ami-tools.noarch.rpm
上のコマンドは、ファイルの SHA1 および MD5 ハッシュが
OK.
であることを示しています。ハッシュがNOT OK
であることをコマンドが示している場合、次のコマンドを使用してファイルのヘッダー SHA1 および MD5 ハッシュを表示します。[ec2-user ~]$
rpm -Kv ec2-ami-tools.noarch.rpm
次に、ファイルのヘッダー SHA1 および MD5 ハッシュを、以下の検証済み AMI ツールハッシュと比較し、ファイルの正統性を確認します。
ヘッダー SHA1: a1f662d6f25f69871104e6a62187fa4df508f880
MD5: 9faff05258064e2f7909b66142de6782
ファイルのヘッダー SHA1 および MD5 ハッシュが検証済み AMI ツールハッシュと一致する場合、次のステップに進みます。
-
次のコマンドを使用して RPM をインストールします。
[ec2-user ~]$
sudo yum install ec2-ami-tools.noarch.rpm
-
ec2-ami-tools-version コマンドを使用してインストールした AMI ツールを検証します。
[ec2-user ~]$
ec2-ami-tools-version
注記
[cannot load such file -- ec2/amitools/version (LoadError)] などのロードエラーを受信した場合は、次のステップを実行し、AMI ツールをインストールした場所を
RUBYLIB
パスに追加します。 -
(オプション) 前のステップでエラーが発生した場合、AMI ツールをインストールした場所を
RUBYLIB
パスに追加します。-
追加するパスを調べるには、次のコマンドを実行します。
[ec2-user ~]$
rpm -qil ec2-ami-tools | grep ec2/amitools/version
/usr/lib/ruby/site_ruby/ec2/amitools/version.rb /usr/lib64/ruby/site_ruby/ec2/amitools/version.rb
上記の例では、以前のロードエラーから失われたファイルは
/usr/lib/ruby/site_ruby
および/usr/lib64/ruby/site_ruby
にあります。 -
前のステップの場所を
RUBYLIB
パスに追加します。[ec2-user ~]$
export RUBYLIB=$RUBYLIB:
/usr/lib/ruby/site_ruby
:/usr/lib64/ruby/site_ruby
-
ec2-ami-tools-version コマンドを使用してインストールした AMI ツールを検証します。
[ec2-user ~]$
ec2-ami-tools-version
-
zip ファイルを使用して AMI ツールを設定するには
-
Ruby をインストールし、apt-get など、Linux ディストリビューション用のパッケージマネージャを使用して解凍します。次に例を示します。
[ec2-user ~]$
sudo apt-get update -y && sudo apt-get install -y ruby unzip
-
wget や curl などのツールを使用して .zip ファイルをダウンロードします。次に例を示します。
[ec2-user ~]$
wget https://s3.amazonaws.com/ec2-downloads/ec2-ami-tools.zip
-
/usr/local/ec2
など、適切なインストールディレクトリにファイルを解凍します。[ec2-user ~]$
sudo mkdir -p /usr/local/ec2
$sudo unzip ec2-ami-tools.zip -d /usr/local/ec2
.zip ファイルには、フォルダ (ec2-ami-tools-
x
.x
.x
) が含まれます。ここで、x
.x
.x
はツールのバージョン番号 (例:ec2-ami-tools-1.5.7
) です。 -
EC2_AMITOOL_HOME
環境変数を、ツールのインストールディレクトリに設定します。次に例を示します。[ec2-user ~]$
export EC2_AMITOOL_HOME=/usr/local/ec2/ec2-ami-tools-
x
.x
.x
-
ツールを
PATH
環境変数に追加します。次に例を示します。[ec2-user ~]$
export PATH=$EC2_AMITOOL_HOME/bin:$PATH
-
ec2-ami-tools-version コマンドを使用してインストールした AMI ツールを検証できます。
[ec2-user ~]$
ec2-ami-tools-version
署名証明書の管理
AMI ツールの特定のコマンドでは、デジタル署名用証明書 (X.509 証明書とも呼ばれる) が必要です。証明書を作成し、AWS にアップロードする必要があります。例えば、証明書の作成に OpenSSL などのサードパーティ製のツールを使用できます。
デジタル署名用証明書を作成するには
-
OpenSSL をインストールおよび設定します。
-
プライベートキーを
openssl genrsa
コマンドを使用して作成し、出力を.pem
ファイルで保存します。2048 ビットまたは 4096 ビット RSA キーの作成を推奨しています。openssl genrsa 2048 >
private-key.pem
-
openssl req
コマンドを使用して、証明書を作成します。openssl req -new -x509 -nodes -sha256 -days 365 -key
private-key.pem
-outform PEM -outcertificate.pem
証明書を AWS にアップロードするには、upload-signing-certificate コマンドを使用します。
aws iam upload-signing-certificate --user-name
user-name
--certificate-body file://path/to/certificate
.pem
ユーザーの証明書を一覧表示するには、list-signing-certificates コマンドを使用します。
aws iam list-signing-certificates --user-name
user-name
ユーザーのデジタル署名用証明書を無効化または再有効化するには、update-signing-certificate コマンドを使用します。次のコマンドは証明書を無効にします。
aws iam update-signing-certificate --certificate-id
OFHPLP4ZULTHYPMSYEX7O4BEXAMPLE
--statusInactive
--user-nameuser-name
証明書を削除するには、delete-signing-certificate コマンドを使用します。
aws iam delete-signing-certificate --user-name
user-name
--certificate-idOFHPLP4ZULTHYPMSYEX7O4BEXAMPLE