Configurar as ferramentas de AMIs do Amazon EC2
É possível usar os comandos das ferramentas de AMI para criar e gerenciar AMIs do Linux com armazenamento de instâncias. Para usar as ferramentas, é necessário instalá-las na sua instância do Linux. As ferramentas das AMIs estão disponíveis como RPM e arquivo .zip para distribuições Linux incompatíveis com RPM.
Para definir as ferramentas da AMI usando RPM
-
Instale o Ruby usando o gerenciador de pacotes para sua distribuição do Linux, como yum. Por exemplo:
[ec2-user ~]$
sudo yum install -y ruby
-
Baixe o arquivo RPM usando uma ferramenta como wget ou curl. Por exemplo:
[ec2-user ~]$
wget https://s3.amazonaws.com/ec2-downloads/ec2-ami-tools.noarch.rpm
-
Verifique se a assinatura do arquivo RPM está usando o seguinte comando:
[ec2-user ~]$
rpm -K ec2-ami-tools.noarch.rpm
O comando acima deve indicar que os hashes SHA1 e MD5 do arquivo estão
OK.
Se o comando indicar que os hashes estãoNOT OK
, use o seguinte comando para ver os hashes SHA1 e MD5 do cabeçalho do arquivo:[ec2-user ~]$
rpm -Kv ec2-ami-tools.noarch.rpm
Em seguida, compare os hashes SHA1 e MD5 do cabeçalho do arquivo com os seguintes hashes das ferramentas de AMIs verificadas para confirmar a autenticidade do arquivo:
SHA1 do cabeçalho: a1f662d6f25f69871104e6a62187fa4df508f880
MD5: 9faff05258064e2f7909b66142de6782
Se os hashes SHA1 e MD5 do cabeçalho do arquivo corresponder aos hashes das ferramentas de AMI verificadas, vá para a próxima etapa.
-
Instale o RPM usando o comando a seguir:
[ec2-user ~]$
sudo yum install ec2-ami-tools.noarch.rpm
-
Verifique a instalação das suas ferramentas da AMI usando o comando ec2-ami-tools-version.
[ec2-user ~]$
ec2-ami-tools-version
nota
Se você receber um erro de carregamento, como "não é possível carregar esse arquivo -- ec2/amitools/version (LoadError)", realize a próxima etapa para adicionar o local de instalação das suas ferramentas da AMI para seu
RUBYLIB
caminho. -
(Opcional) Se você tiver recebido um erro na etapa anterior, adicione a localização das suas ferramentas da AMI para seu caminho
RUBYLIB
.-
Execute o comando a seguir para determinar os caminhos a adicionar.
[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
No exemplo acima, o arquivo ausente no erro de carga anterior está localizado em
/usr/lib/ruby/site_ruby
e/usr/lib64/ruby/site_ruby
. -
Adicione os locais da etapa anterior ao seu caminho de
RUBYLIB
.[ec2-user ~]$
export RUBYLIB=$RUBYLIB:
/usr/lib/ruby/site_ruby
:/usr/lib64/ruby/site_ruby
-
Verifique a instalação das suas ferramentas da AMI usando o comando ec2-ami-tools-version.
[ec2-user ~]$
ec2-ami-tools-version
-
Para configurar as ferramentas da AMI usando o arquivo .zip
-
Instale o Ruby e descompacte usando o gerenciador de pacotes para sua distribuição do Linux, como apt-get. Por exemplo:
[ec2-user ~]$
sudo apt-get update -y && sudo apt-get install -y ruby unzip
-
Baixe o arquivo .zip usando uma ferramenta como wget ou curl. Por exemplo:
[ec2-user ~]$
wget https://s3.amazonaws.com/ec2-downloads/ec2-ami-tools.zip
-
Descompacte os arquivos em um diretório de instalação apropriado, como
/usr/local/ec2
.[ec2-user ~]$
sudo mkdir -p /usr/local/ec2
$sudo unzip ec2-ami-tools.zip -d /usr/local/ec2
Observe que o arquivo .zip contém uma pasta ec2-ami-tools-
x
.x
.x
, em quex
.x
.x
é o número da versão das ferramentas (por exemplo,ec2-ami-tools-1.5.7
). -
Ajuste a variável de ambiente
EC2_AMITOOL_HOME
para o diretório de instalação para as ferramentas. Por exemplo:[ec2-user ~]$
export EC2_AMITOOL_HOME=/usr/local/ec2/ec2-ami-tools-
x
.x
.x
-
Adicione as ferramentas à sua variável de ambiente
PATH
. Por exemplo:[ec2-user ~]$
export PATH=$EC2_AMITOOL_HOME/bin:$PATH
-
É possível verificar a instalação das suas ferramentas da AMI usando o comando ec2-ami-tools-version.
[ec2-user ~]$
ec2-ami-tools-version
Gerenciar certificados de assinatura
Determinados comandos nas ferramentas da AMI exigem a assinatura de um certificado (também conhecido como certificado X.509). É necessário criar o certificado e, então, carregá-lo para a AWS. Por exemplo, é possível usar uma ferramenta de terceiros, como OpenSSL, para criar o certificado.
Para criar um certificado de assinatura
-
Instale e configure o OpenSSL.
-
Crie uma chave privada usando o comando
openssl genrsa
e salve a saída em um arquivo.pem
. Recomendamos que você crie uma chave RSA de 2048 ou 4096 bits.openssl genrsa 2048 >
private-key.pem
-
Gere um certificado usando o comando
openssl req
.openssl req -new -x509 -nodes -sha256 -days 365 -key
private-key.pem
-outform PEM -outcertificate.pem
Para carregar o certificado para a AWS, use o comando upload-signing-certificate.
aws iam upload-signing-certificate --user-name
user-name
--certificate-body file://path/to/certificate
.pem
Para listar os certificados para um usuário, use o comando list-signing-certificates:
aws iam list-signing-certificates --user-name
user-name
Para desabilitar ou reabilitar um certificado de assinatura para um usuário, use o comando update-signing-certificate. O comando a seguir desabilita o certificado:
aws iam update-signing-certificate --certificate-id
OFHPLP4ZULTHYPMSYEX7O4BEXAMPLE
--statusInactive
--user-nameuser-name
Para excluir um certificado, use o comando delete-signing-certificate:
aws iam delete-signing-certificate --user-name
user-name
--certificate-idOFHPLP4ZULTHYPMSYEX7O4BEXAMPLE