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
Como versionar sua infraestrutura com Terraform e GitLab
Deixando um pouco o assunto sobre Corona Vírus de lado, chegamos ao penúltimo post da nossa série de postagens sobre Terraform. Aqui iremos falar sobre como versionar sua infraestrutura utilizando
Conexão com Cluster Kafka Hospedado em Kubernetes: Guia Completo
Nesse artigo vamos discutir questões relacionadas a como disponibilizar um cluster kafka hospedado em um k8s para aplicações que estejam hospedadas fora do cluster kubernetes. Não vamos tratar da instalação
Descubra as vantagens do MongoDB para o desenvolvimento Web
Bancos de dados são a base dos projetos de desenvolvimento Web. Muitos desenvolvedores estão voltando sua atenção para o MongoDB, um banco de dados sem esquema que é popular para uma