Como passar o nome de usuário e senha Ansible?

Como passar o nome de usuário e senha Ansible?

Ansible é uma ferramenta moderna de automação de código aberto que facilita a configuração e o gerenciamento de servidores remotos. Embora outras ferramentas de automação possam corresponder à usabilidade da Ansible, elas geralmente são complexas demais do que uma ferramenta básica de automação precisa ser.

Ansible, por outro lado, é simples e fácil de usar para a maioria dos usuários. Ele usa o formato YAML para especificar configurações e tarefas de servidor executadas em máquinas remotas. Ele também oferece um ótimo recurso de segurança usando o SSH como o modo padrão de autenticação.

No entanto, em alguns casos, você pode não ter configurado as teclas SSH em um host remoto e, portanto, precisam especificar o nome de usuário e a senha explicitamente

Se for esse o caso, este guia discutirá a criação de manuais básicos e executando -os em um host remoto que não possui chaves ssh configuradas.

Instalando Ansible

Antes de usar o Ansible para gerenciar suas máquinas remotas, você precisa instalá -lo em sua máquina, que atua como o nó de controle.

No meu exemplo, mostrarei como instalá -lo no Rehl/Centos e Fedora; nesse caso, tudo o que preciso fazer é usar o comando:

$ sudo dnf installible

Este comando instalará Ansible em sua máquina, dando a você todas as ferramentas para controlar todas as suas máquinas remotas de um único local. O próximo passo é configurar o arquivo host.

Configurando o inventário de anfitriões Ansible

Em Ansible, um inventário é um arquivo que contém informações sobre seus hosts remotos que estarão sob a gerência da Ansible. Os hosts no arquivo de inventário podem ser organizados em grupos e subgrupos e especificados com um endereço IP da máquina remota ou o nome do host.

Para adicionar ou remover hosts, edite o arquivo localizado em/etc/Ansible/hosts.

$ sudo vim/etc/Ansible/hosts

OBSERVAÇÃO: O arquivo hosts padrão pode não ser incluído por padrão em algumas instalações. Simplesmente crie um se não existir.

Dentro do arquivo hosts, adicione as entradas como:

[MyServers]
192.168.0.20
192.168.0.13

O acima define um grupo chamado MyServers e seus endereços IP correspondentes. Certifique -se de alterar os endereços IP acima para os endereços IP de seus hosts.

Conexão de teste

Depois de configurar seu arquivo de inventário, é melhor verificar se seus hosts estão online e podem receber comandos da Ansible. Fazemos isso chamando o módulo Ansible Ping. No seu nó local Ansible, use o comando mostrado abaixo:

$ Ansible All -M Ping -u Ubuntu --k -pass

Isso usará o nome de usuário do Ubuntu e pedirá a senha SSH. Sinta -se à vontade para mudar o nome de usuário para qualquer usuário desejado em sua máquina remota. Se o host remoto estiver acordado e você fornecer a senha SSH correta, verá uma resposta como:

192.168.0.7 | Sucesso => ​​
"Ansible_facts":
"Descoberd_interpreter_python": "/usr/bin/python3"
,
"Alterado": falso,
"pingue-pongue"

Recapitulação rápida

Como você pode ver no exemplo acima, em Ansible, para especificar o nome de usuário e a senha a serem usados ​​para seus hosts remotos, usamos o -u [nome de usuário] e -Ask -pas para a senha.

Por exemplo, para usar a conta raiz como o login Ansible, use o comando como:

$ Ansible All -M Ping -u Root --k -pass

OBSERVAÇÃO: É ideal usar o nome de usuário e a senha como o modo de autenticação em Ansible. Use chaves ssh, se possível.

Conclusão

Neste tutorial, discutimos como instalar e criar hosts Ansible. Também abordamos como especificar nome de usuário e senha Ansible como o modo de autenticação. Tudo isso pode ser útil se você não configurou as teclas SSH na máquina remota.