acesso ssh temporário em todas as caixas ec2

2

Eu gostaria de oferecer um acesso ssh de contratante de atendimento de fim de semana com sudo em um cluster de caixas de produção ec2 (ubuntu). Gostaria de ativar / desativar facilmente o acesso a todas as caixas com um simples script ou ferramenta de linha de comando.

Preferiria não gostar de compartilhar arquivos pem ou algo assim. Como se faz tipicamente algo assim em um ambiente profissional?

    
por blefko 27.06.2013 / 18:36

2 respostas

1

Desculpe por não ter o ubuntu, mas a maioria dos linux já tem isso, existe um módulo PAM configurado com /etc/security/time.conf, a seguinte entrada no time.conf só permitirá someguy weekend access

login & ssh;*;someguy;Wk0000-2400
    
por 27.06.2013 / 19:07
0

Existem muitas maneiras diferentes de fazer isso, dependendo da infraestrutura existente, da quantidade de máquinas envolvidas e do tempo disponível para configurar uma solução reutilizável.

  1. Você tem um servidor de autenticação e autorização centralizado, tipicamente, um servidor LDAP / Kerberos, como FreeIPA . Existem clientes para os dois. xe 3.x no Ubuntu a partir de agora. Neste caso, você só precisa ativar / desativar a conta (de preferência nominal) antes e depois da janela temporária. Como o servidor FreeIPA possui uma CLI, essas tarefas são apenas um comando. Outras vantagens dessa abordagem incluem habilitar / desabilitar facilmente o HBAC e sudorules personalizados, para que essa solução possa ser aplicada sem problemas a qualquer quantidade de máquinas e seja completamente reutilizável. Há também alguns módulos de fantoches para o FreeIPA em andamento.

  2. Você não tem um servidor de identidade centralizado, mas tem algum tipo de gerenciamento de configuração, por exemplo, puppet . Você só precisa alterar um parâmetro na sua definição de usuário e aplicar as alterações. Esse tipo de solução está ligado à maneira como você promove o código usando sua ferramenta de gerenciamento de configuração de sua preferência.

  3. Você não tem nada disso. Ainda há esperança. Ferramentas como ansible , não exigem nenhum software nos servidores de destino, apenas ssh access. Criando e destruindo uma conta de usuário pode ser feito com pouco esforço e apenas um one-liner. Existe um módulo apenas para isso.

  4. Você não quer mexer em nada disso. Use mussh ou um script de shell personalizado para fazer o trabalho.

por 27.06.2013 / 19:04