Guia passo a passo para configurar o FreeIPA em CentOS e Ubuntu
Este post é o Segundo de uma série de posts sobre o FreeIPA.
Se ainda não leu a Parte #1, onde instalamos e configuramos o servidor do FreeIPA , é só clicar aqui.
Preparando nosso Lab
Utilizaremos o mesmo Vagrantfile da [Parte #1] e faremos algumas modificações para subir mais dois servidores, um CentOS/7 e um Ubuntu/Bionic64
Nossa estrutura de diretórios será:
.
└── freeipa
└── Vagrantfile
Vamos editar nosso vagrant file para que possamos provisionar mais dois servers
Vagrant.configure("2") do |config|
config.vm.define "ipaserver" do |server|
server.vm.box = "centos/7"
server.vm.network "private_network", ip: "172.16.10.10"
end
config.vm.define "ipaclient1" do |server|
server.vm.box = "centos/7"
server.vm.network "private_network", ip: "172.16.10.20"
end
config.vm.define "ipaclient2" do |server|
server.vm.box = "ubuntu/bionic64"
server.vm.network "private_network", ip: "172.16.10.21"
end
config.vm.provider :virtualbox do |vb|
vb.memory = "1024"
end
end
Executaremos o seguinte comando para que as máquinas sejam criadas
$ vagrant up
Agora iremos separar a instalação e configuração para as distribuições CentOS e Ubuntu,
CentOS 7
Primeiramente vamos conectar a máquina CentOS, alterar o hostname e configurar o arquivo hosts através dos comandos:
$ vagrant ssh ipaclient1 [vagrant@localhost ~]$ sudo hostnamectl set-hostname ipaclient1.example.local [vagrant@localhost ~]$ sudo su - [root@ipaclient1 ~]# echo -e "172.16.10.10\tipa.example.local\t ipa\n172.16.10.20\tipaclient1.example.local\t ipaclient1" >> /etc/hosts
Agora vamos instalar o repositório epel-release , atualizar os pacotes e fazer o download do client do freeipa através dos comandos:
[root@ipaclient1 ~]# yum install epel-release -y [root@ipaclient1 ~]# yum update -y [root@ipaclient1 ~]# yum install ipa-client -y
Após os procedimentos anteriores, agora estamos prontos para configurar a autenticação do client
[root@ipaclient1 ~]# ipa-client-install --server=ipa.example.local --domain=example.local --mkhomedir --force-ntpd
Serão feitas algumas perguntas na seguinte ordem, utilizaremos as respostas em negrito.
- Proceed with fixed values and no DNS discovery? [no]: yes
- Continue to configure the system with these values? [no]: yes
- User authorized to enroll computers: admin
- Password for admin@EXAMPLE.LOCAL: ipa4linux
Agora iremos prosseguir para a instalação do client no ubuntu.
Ubuntu 18.04
Voltando a máquina local vamos conectar na máquina ubuntu, alterar o hostname e configurar o arquivo hosts através dos comandos:
$ vagrant ssh ipaclient2 vagrant@ubuntu-bionic:~$ sudo hostnamectl set-hostname ipaclient2.example.local vagrant@ubuntu-bionic:~$ sudo su - root@ipaclient2:~# echo -e "172.16.10.10\tipa.example.local\t ipa\n172.16.10.21\tipaclient2.example.local\t ipaclient2" >> /etc/hosts
Agora vamos atualizar o repositório, atualizar os pacotes e fazer o download do client do freeipa através dos comandos:
root@ipaclient2:~# apt update root@ipaclient2:~# apt upgrade -y root@ipaclient2:~# apt install freeipa-client -y
Serão feitas algumas perguntas, utilizaremos as respostas em negrito.
Default Kerberos version 5 realm: EXAMPLE.LOCAL
Kerberos servers for your realm: ipa.example.local
Administrative server for your Kerberos realm: ipa.example.local
Após os procedimentos anteriores, agora estamos prontos para configurar a autenticação do client
root@ipaclient2:~# ipa-client-install --server=ipa.example.local --domain=example.local --mkhomedir --force-ntpd
Serão feitas algumas perguntas na seguinte ordem, utilizaremos as respostas em negrito.
- Proceed with fixed values and no DNS discovery? [no]: yes
- Continue to configure the system with these values? [no]: yes
- User authorized to enroll computers: admin
- Password for admin@EXAMPLE.LOCAL: ipa4linux
IPA Server
Agora podemos acessar o painel de administração através da pagina http://ipa.example.local com usuário admin e senha ipa4linux
Podemos verificar agora em Identity > Hosts que as máquinas ipaclient1.example.local e ipaclient2.example.local estão configuradas no freeipa.
Com isto, podemos efetuar o login nas máquinas utilizando usuário e senha/chave, seja ela servidor ou desktop com servidor X(Interface Desktop), a home do usuário será criada automaticamente.
Para cadastrar uma chave ssh para o usuário linus.torvalds vamos em Identity > Users > Active Users > linus.torvalds
Na tela que abrirá, clicaremos em ADD no campo SSH Public Keys, vamos adicionar a chave SSH, clicar em Set e em seguida no topo da página em Save.
Também é possível alterar uma série de parâmetros como por exemplo qual será a home do usuário, qual o shell, aliases, OTP (OneTimePassword)
Agora podemos testar a conexão SSH utilizando a chave:
$ ssh linus.torvalds@172.16.10.20 -i id_rsa -sh-4.2$ pwd /home/linus.torvalds
De momento é isso, até a próxima!
Fiquem ligados, na [Parte #3] veremos como criar grupos de usuários e hosts, configurar OTP (OneTimePassword) e gerenciar politicas de SUDO.
About author
Você pode gostar também
Terraform: A ferramenta definitiva para Infraestrutura como Código
Primeiramente, uma breve descrição sobre o que é “Infraestrutura como Código” ? Infraestrutura como Código, Infra as Code, ou simplesmente IaC, é tratar a infra como um software, desenvolvendo, versionando, testando, depurando
Gerando Dados Aleatórios com Paralelização no Shell: Guia Prático
Gerar dados aleatórios com paralelização no shell. Falando assim parece até alguma coisa muito importante ou difícil, mas vamos entender sua utilidade na prática. Vez ou outra preciso de uma
Descubra como o MetalLB aprimora o balanceamento de carga em ambientes Kubernetes on-premises
Por que usar o MetalLB em um ambiente on-premises? O MetalLB é uma solução essencial para clusters Kubernetes que não estão sendo executados em um ambiente de nuvem. Em ambientes












