Configurar chaves de criptografia para um servidor
É possível configurar chaves de criptografia para criptografar as senhas do servidor. Essas chaves são chaves de criptografia gerenciadas pelo cliente (CMEK, na sigla em inglês) que podem ser gerenciadas com o Cloud Key Management Service (Cloud KMS). Você pode defini-las ao provisionar um novo servidor ou ao a restauração da imagem de um existente. É possível usar uma chave de criptografia com vários servidores.
O uso de uma chave de criptografia é opcional. Mas, depois de configurar uma chave de criptografia, você precisa usá-lo. Não é possível mudar essa configuração. No entanto, é possível alterar chave ou a versão dela.
Esse recurso está disponível apenas para o SOs Linux compatíveis com a Solução Bare Metal
Antes de começar
Usando o Cloud KMS, crie uma chave de criptografia.
Para criar uma chave de criptografia, siga estas etapas:
No projeto em que você quer criar a chave, Ative a API Cloud KMS.
Faça isso apenas uma vez por projeto.
Atribua os papéis a seguir à conta de serviço da Solução Bare Metal. Faça isso apenas uma vez por projeto.
roles/cloudkms.viewer
: verifique se oCryptoKeyVersion
está disponível para uso.roles/cloudkms.publicKeyViewer
: extrai uma chave pública.
Para saber como conceder um papel, consulte Como atribuir papéis em um recurso.
Para atribuir esses papéis, use o comando
gcloud projects add-iam-policy-binding
.gcloud projects add-iam-policy-binding KMS_PROJECT_ID \ --member serviceAccount:service-PROJECT_NUMBER@gcp-sa-bms.iam.gserviceaccount.com \ --role roles/cloudkms.publicKeyViewer
gcloud projects add-iam-policy-binding KMS_PROJECT_ID \ --member serviceAccount:service-PROJECT_NUMBER@gcp-sa-bms.iam.gserviceaccount.com \ --role roles/cloudkms.viewer
Substitua:
- KMS_PROJECT_ID: o projeto que contém o Chave do Cloud KMS
- PROJECT_NUMBER: o projeto que contém o Servidor da Solução Bare Metal
Crie uma chave de descriptografia assimétrica.
É possível criar quantas chaves e versões forem necessárias.
Configurar chaves de criptografia ao provisionar um servidor
É possível configurar uma chave de criptografia para um novo servidor da Solução Bare Metal enquanto provisioná-lo usando o formulário de entrada do console do Google Cloud.
Para configurar uma chave de criptografia ao provisionar um servidor, consulte Use o formulário de entrada do console do Google Cloud para inserir suas seleções.
Configurar chaves de criptografia ao restaurar a imagem de um servidor
Para configurar chaves de criptografia durante a restauração da imagem de um servidor, consulte Alterar o SO de um servidor
Acessar chaves de criptografia e senhas de um servidor
Para visualizar as chaves de criptografia e as senhas de um servidor, siga estas etapas:
Console
Acesse a página Servidores.
Clique no nome do servidor.
Na página Detalhes do servidor, confira a chave de criptografia em Chave de criptografia de senha.
Para acessar as contas de usuário e as senhas criptografadas correspondentes, acesse a seção Contas de usuário.
gcloud
Use o comando gcloud alpha bms instances auth-info
:
gcloud alpha bms instances auth-info SERVER_NAME --project=PROJECT_ID --region=REGION
Substitua:
- SERVER_NAME: o nome do servidor da Solução Bare Metal
- PROJECT_ID: o ID do projeto
- REGION: a região do servidor da Solução Bare Metal
Descriptografar uma senha
Para conseguir a senha bruta, siga estas etapas:
Consiga o texto criptografado. Usar a
gcloud alpha bms instances auth-info
kubectl.gcloud alpha bms instances auth-info SERVER_NAME \ --project=PROJECT_ID \ --region=REGION \ --format='value(userAccounts.USERNAME.ENCRYPTED_PASSWORD_FILE)' | tr -d ' \n' | base64 -d > CIPHERTEXT_FILE
Substitua:
- SERVER_NAME: o nome do servidor da Solução Bare Metal
- PROJECT_ID: o ID do projeto da Solução Bare Metal
- REGION: o local do servidor da Solução Bare Metal
- USERNAME: o nome de usuário da conta associada ao
senha que você quer descriptografar. O valor é
root
oucustomeradmin
. - ENCRYPTED_PASSWORD_FILE: o arquivo em que você salvou o arquivo
senha. Para evitar problemas com o formato da senha depois de copiá-la,
Remova os espaços e os caracteres de nova linha (
'\n'
). - CIPHERTEXT_FILE: o nome do arquivo de texto criptografado.
Exemplo:
gcloud alpha bms instances auth-info my-instance \ --region=europe-west3 \ --project=project-testing \ --format='value(userAccounts.customeradmin.encryptedPassword)' | tr -d ' \n' | base64 -d > ciphertext
Para conseguir o texto criptografado da senha copiada do console do Google Cloud, use este comando:
cat ENCRYPTED_PASSWORD_FILE | tr -d ' \n' | base64 -d > CIPHERTEXT_FILE
Substitua:
- ENCRYPTED_PASSWORD_FILE: o arquivo em que você salvou o
senha criptografada. Para evitar problemas com o formato da senha após
copie-o, remova os espaços e os caracteres de nova linha (
'\n'
). - CIPHERTEXT_FILE: o nome do arquivo de texto criptografado.
Exemplo:
cat encrypted_password | tr -d ' \n' | base64 -d > ciphertext
Descriptografe a senha. Siga as etapas em Descriptografar dados.