AWS SSM excluindo seus próprios arquivos como parte de sua execução. Qualquer maneira de fazer isso com segurança?

1

Existe uma maneira segura de excluir todo o diretório runRemoteScript do AWS SSM como parte da execução? Detalhes abaixo.

Temos uma configuração muito robusta do AWS SSM que envolve um aplicativo python que pesquisa a AWS, pega as instâncias que você deseja com base nas tags e emite comandos remotos para ela por meio do SSM. Se você der um comando, ele usa runShellScript para simplesmente executar o que você deseja. Se você especificar um arquivo, ele carregará um único script de shell (requer o bash), definirá seus atributos como públicos e, no lado remoto, executará curl https://domain/file.sh | /bin/bash usando o AWS ' runShellScript .

No entanto, se você especificar um diretório na linha de comando, ele carregará todo o diretório para o S3 e, em seguida, emitirá um comando runRemoteScript e executará automaticamente autorun.sh no lado remoto. Claro, autorun.sh pode conter o que quisermos. Eu normalmente uso para python3 uploaded_script.py e chamo de bom.

Uma das tarefas atuais é configurar o tripwire (Open Source, então tudo é local nas máquinas individuais). Para quem não sabe, ele criptografa seus arquivos de banco de dados e configuração usando senhas. Eu tenho senhas aleatórias de 32 bytes criadas e posso editá-las, mas para fazer isso (eu acho), eu tenho que enviá-las no upload para que os scripts saibam quais senhas usar na linha de comando para gerar relatórios. Nós não queremos deixar as senhas por aí, daí a minha pergunta.

Existe uma maneira segura de excluir apenas todos os arquivos em questão, garantindo que eu não vou de alguma forma para o lixo de outro diretório potencialmente aleatório?

Minha ideia está no script autorun.sh para colocar no final: rm -f *.ini

Mas, sendo eu paranóico, quero garantir que estou excluindo APENAS o que desejo excluir.

Eu gostaria de especificar manualmente o diretório do conteúdo baixado, mas o caminho contém o InstanceId, que o script não possui.

Pensamentos sobre como manter a segurança enquanto automatiza esta tarefa?

Se eu pudesse simplesmente (e com segurança!) limpar todo o conteúdo de /var/lib/amazon/ssm/<InstanceId>/document/orchestration/<CommandID> , eu ficaria feliz, mas também precisaria saber como obter o InstanceId durante a execução do script.

    
por UtahJarhead 12.10.2018 / 22:10

0 respostas