[Parte #2] – FreeIPA – Gerenciar Servidores e Adicionar chaves SSH

[Parte #2] – FreeIPA – Gerenciar Servidores e Adicionar chaves SSH

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.

  1. Proceed with fixed values and no DNS discovery? [no]: yes
  2. Continue to configure the system with these values? [no]: yes
  3. User authorized to enroll computers: admin
  4. 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.

  1. Proceed with fixed values and no DNS discovery? [no]: yes
  2. Continue to configure the system with these values? [no]: yes
  3. User authorized to enroll computers: admin
  4. 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.

CURSOSCONSULTORIA    CONTATO

Anterior [Parte #1] - FreeIPA - Configuração do Servidor
Próxima 4Linux lança sua nova "Formação PHP" totalmente modernizada!

About author

Caio Delgado
Caio Delgado 3 posts

Caio Delgado atua como Analista de Infraestrutura Linux e soluções FOSS (Free and Open Source Software) com foco em DevOps, formado em Engenharia da Computação no Centro Universitário UBM e pós graduado em Engenharia de Redes no Instituto INFNET, possui as Certificações LPIC-1, ITCerts Cloud Security Foundation, DevOps Lead, DevOps Security, Lean IT Essentials, Scrum Essentials, EXIN Information Security Foundation e EXIN Green IT Citizen.

View all posts by this author →

Você pode gostar também

Desenvolvimento

Instalação do Cuda 9 em distribuições Linux baseadas no Ubuntu

Se você deseja trabalhar com algoritmos de Machine Learning, provavelmente precisará usar processamento paralelo para acelerar os resultados dos seus algoritmos. Muitos frameworks como por exemplo, o TensorFlow, já possuem

Destaques

Cresce aceleradamente a procura por profissionais de TI que conheçam “containers”.

Conhecimentos em Docker, Kubernetes, OpenShift e outras soluções de containers estão valorizados. Em 2013, escrevi um artigo explicando por que um profissional de TI deveria aprender Linux e nele explico

Carreiras

4Linux lança preço de venda especial com 50% de desconto para mulheres.

A procura do público feminino por curso de Linux aumentou em 85% Em matéria de capa veiculada no domingo – dia 5/5/2019 – o jornal “O Estado de São Paulo” fez um