Nesse post não vou explicar como o Bacula funciona e nem como fazer a sua configuração para backup. Planejo fazer isso mais a frente. Agora é só referente a instalação do Bacula

Para esse tutorial a configuração foi um servidor CentOs 7.4, com o Bacula 5.2.13, o Postgres 9.2.23 e o Webmin 1.870 para administração gráfica. As versões são as atuais nos repositórios no dia dessa postagem.


Primeiramente, desabilitei o SELinux e o Firewall para melhor instalação.

Caso não queira desabilitar o firewall, as portas utilizadas são:

Webmin: 10000

Bacula: 9101, 9102, 9103

Postgres: 5432

 

 

Instalando as dependências

Aqui estão as dependências do Webmin, instalação do Vim para edição dos arquivos e do wget para Download de arquivos.

 

 yum -y install wget vim perl-Authen-PAM perl-DBD-Pg perl-DBI perl-IO-Tty perl-Sys-Syslog perl-Digest-MD5 tcp_wrappers tcp_wrappers-devel

 

Adicionar repositório do Webmin

Para a instalação do Webmin, vamos adicionar seu repositório oficial. Caso queira fazer a instalação sem ser por repositório, basta ir ao site do Webmin e seguir o passo-a-passo deles.

cat < /etc/yum.repos.d/Webmin.repo
 
[Webmin]
 
name=Webmin Distribution Neutral
 
mirrorlist=https://download.webmin.com/download/yum/mirrorlist
 
enabled=1
 
EOF

 

Baixando as chaves do Webmin

wget http://www.webmin.com/jcameron-key.asc
rpm --import jcameron-key.asc

 

Instalando o Bacula, Postgres e Webmin

yum -y install postgresql-devel postgresql-server bacula-director bacula-storage bacula-client bacula-console webmin

 

Configurando o Banco de Dados e Iniciando o Postgres

Nesse passo, vamos fazer a configuração do Postgres criando seu banco de dados e adicionando na inicialização do Centos7

postgresql-setup initdb
systemctl start postgresql
systemctl enable postgresql

 

Configuração do Bacula no Postgres

Com o banco de dados criado, precisamos criar as tabelas do bacula do nosso banco Postgres, assim como seu usuário e dar as permissões para esse usuário poder escrever no banco. Nesse momento vamos usar o usuário postgres para fazer esse processo.
O Bacula já disponibiliza scripts para esse processo. No Centos7, eles ficam em /usr/libexec/bacula/

 

su postgres
/usr/libexec/bacula/create_bacula_database
/usr/libexec/bacula/make_bacula_tables
/usr/libexec/bacula/grant_bacula_privileges

 

Ainda com o usuário postgres, vamos acessar o banco de dados e mudar a senha do usuário bacula.
Onde se lê senhabacula, coloque a senha que você deseja utilizar, mas lembre-se de usar as aspas simples no começo e no final da senha.

psql bacula
bacula=# alter user bacula with password 'senhabacula';
bacula=# \q

 

Agora sim podemos voltar ao nosso usuário

exit

Editando o Bacula Director 

Essa configuração do bacula-dir é necessária para que o Bacula possa conectar ao Postgres. Nela, vamos passar o endereço do Banco de Dados, o usuário e a senha criada no passo anterior.

vim /etc/bacula/bacula-dir.conf

aproximadamente na linha 235

original:  dbname = “bacula”; dbuser = “bacula”; dbpassword = “”

configurado:  dbname = “bacula”; dbuser = “bacula”; dbpassword = “senhabacula“; dbaddress = “127.0.0.1”

 

Configurando o banco de dados para aceitar as conexões:

Já que definimos um usuário e senha para o banco de dados, vamos fazer com que o Postgres reconheça essa requisição:

vim /var/lib/pgsql/data/pg_hba.conf

Onde estiver “peer” e/ou “ident”, mude para md5

Original:  local       all      all      peer    ou     host      all     all     127.0.0.1/32     ident

Configurado: local       all      all      md5    ou     host      all     all     127.0.0.1/32     md5

Ainda no mesmo arquivo, adicionar na última linha:

host    localhost       all     0.0.0.0/0       md5

 

Reiniciando os serviços

systemctl restart bacula-dir bacula-fd bacula-sd postgresql

 

Acesso ao Webmin

https://localhost:10000/ (no lugar de localhost, pode ser o IP da servidor)

login e senha são os usuários do seu servidor CentOs7

No menu da esquerda:

System > Bacula Backup System.

Caso não apareça, clicar em Refresh Modules no final do menu.

Ao clicar, vai aparecer um erro:

É normal, pois não informamos ao módulo Bacula do Webmin nosso usuário e senha do Banco de dados. Basta clicar em module configuration.

No menu Bacula Database Settings vamos informar qual banco de dados foi utilizado e qual seu usuário e senha:

 

Ao clicar em SAVE, vai aparecer a tela abaixo. Agora seu servidor bacula está instalado. Em post futuros pretendo falar sobre como ele funciona e como configurar seu backups.

Caso queira mudar o idioma para o Português do Brasil:

Webmin> Change Language and Theme

Portuguese (Brazilian) (PT_BR.UTF-8)

 

Fontes:

http://webmin.com/rpm.html
http://bacula.us/bacula-enterprise-automated-install-script-for-centos-7/

https://www.digitalocean.com/community/tutorials/how-to-install-bacula-server-on-centos-7
http://www.linuxtopic.com/2016/08/install-and-configure-mysql-postgresql.html#gsc.tab=0
https://www.digitalocean.com/community/tutorials/how-to-install-and-use-postgresql-on-centos-7

Ao som de: Seu Jorge – Life on Mars? (David Bowie Cover/Version)

Nesse post vou explicar como adicionar um servidor Linux em um domínio Samba. Digo servidor, pois recomendo a ferramenta CID, Close in Directory, do Eduardo Moraes, nos casos de ambientes gráficos.

Aqui foi utilizado um Ubuntu 16.04, mas a ideia é a mesma para qualquer distribuição, só observar se alguns arquivos de configuração estão caminhos diferente, como setar o IP no RHEL/CentOs.

O intuito aqui é ajudar quem quer colocar a máquina no domínio, por isso que ele é mais direto com os arquivos de configuração e não com as explicações detalhadas que cada arquivo e comando faz.
Ps: Caso apresente algum erro de autenticação durante o processo, criei um usuário com o hostname no seu AD.

 

Veja a disposição dos servidores na rede para explicação do artigo:

Domínio → dominio.local

Servidor controlador de domínio →192.168.0.4 servidor.dominio.local

Servidor DNS primário → 192.168.0.4

Servidor DNS Secundário →192.168.0.35

Servidor DHCP →192.168.0.1

Como os clientes serão configurados pelo serviço DHCP, só especificarei o nome da máquina cliente:

Desktop cliente → linuxcliente

 

SETAR O IP MANUALMENTE

Editar o arquivo interfaces:

# vim /etc/network/interfaces

auto enp0s3

iface enp0s3 inet static

address 192.168.0.100

netmask 255.255.255.0

gateway 192.168.0.1

dns-nameserver 192.1680.4 192.168.0.35

dns-search dominio.local

 

Editar o arquivo /ETC/HOSTS

Editar o arquivo /etc/hosts para incluir um alias para controlador de domínio e alterar o hostname do desktop cliente (linuxcliente), acrescentando o fqdn, ou seja, o nome do domínio junto ao hostname da máquina cliente.  No entanto, substitua os nomes abaixo pelos correspondentes na sua rede.

 

# vim /etc/hosts

Conteúdo a ser acrescentado:

127.0.0.1       linuxcliente.dominio.local    localhost   linuxcliente

192.168.0.4    servidor.dominio.local servidor

 

Agora vamos verificar se o nome da maquina foi alterado:
# hostname -f

 

Instalar os pacotes necessários

Para que o cliente possa ingressar no domínio, é necessário fazer a instalação dos seguintes pacotes (lembrando que os pacotes abaixo são para distros Debian Like):

# apt install vim ntp krb5-user krb5-config winbind samba samba-common smbclient cifs-utils libpam-krb5 libpam-winbind libnss-winbind

Se durante a instalação do kerberos forem apresentadas algumas telas com perguntas referentes ao KDC, pode continuar com um ENTER e seguir com a instalação dos pacotes.

 

Sincronizar data e hora com o servidor

Edite o arquivo de configuração do serviço NTP usando o Vim:

# vim /etc/ntp.conf

server 192.168.0.4

pool 192.168.0.4

restrict 192.168.0.4


Agora, reinicie o serviço de data e hora:

# /etc/init.d/ntp restart

ou

# service ntp restart

 

Resolução de DNS

Como o IP foi setado manualmente, provavelmente o resolv.conf já está com a configuração correta. Caso não esteja, basta adicionar o search e o nameserver

# vim /etc/resolv.conf

search dominio.local

nameserver 192.168.0.4

nameserver 192.168.0.35

 

Configurar o KERBEROS

Para um usuário autenticar-se no Active Directory, é necessário editar o arquivo /etc/krb5.conf e incluir informações sobre o servidor KDC (controlador de domínio kerberos). Nesse caso, o controlador de domínio com o Active Directory possui um KDC. Use o Vim para editar o arquivo e inclua as seguintes linhas no arquivo:

 

# vim /etc/krb5.conf

Conteúdo acrescentado:

[libdefaults]

default_realm = DOMINIO.LOCAL

[realms]

  DOMINIO.LOCAL  =  {

     kdc  =  servidor.dominio.local

     default_domain  =  DOMINIO.LOCAL

     admin_server  =  servidor.dominio.local

  }

[domain_realm]

.dominio.local = DOMINIO.LOCAL

 

Para fazer o teste de comunicação do nosso ubuntu com o servidor vamos utilizar o kinit. Execute o comando com o seu usuário cadastrado no servidor. No artigo estou usando o usuário “Administrator”.


# kinit Administrator

 

Agora vamos listar o ticket:

# klist

 

O retorno do  klist deverá ser algo parecido com:

Ticket cache: FILE:/tmp/krb5cc_1000

Default principal: administrator@DOMINIO.LOCAL

Valid       starting    Expires                 Service  principal

10-10-2017  12:00:32    09-10-2017  04:10:07    krbtgt/DOMINIO.LOCAL@DOMINIO.LOCAL

renew  until  13-10-2017  12:00:32

 

Configurar o SAMBA

Toda configuração é feita no/etc/samba/smb.conf. Vamos criar um arquivo de backup do smb.conf original e depois criar um arquivo novo em branco:

# mv /etc/samba/smb.conf /etc/samba/smb.conf.original
# vim /etc/samba/smb.conf

 

[global]

  security = ads

 realm= DOMINIO.LOCAL

  workgroup = DOMINIO

 idmap uid = 10000-15000

 idmap gid = 10000-15000

 winbind enum users = yes

 winbind enum groups = yes

 template homedir = /home/%D/%U

 template shell = /bin/bash

 client use spnego = yes

 winbind use default domain = yes

 restrict anonymous = 2

 winbind refresh tickets = yes

 

Agora restart o winbind e o samba

# service winbind restart

# service smbd restart

# service nmbd restart

Ingressar a máquina no domínio

Depois de configurar o Samba, execute o comando abaixo como root:

# net ads join -U Administrator

 

Assim como no Kinit, utilize um usuário com permissão para ingressar no domínio. O retorno do comando deve ser parecido com o que está abaixo:

 

Using short domain name – DOMINIO

Joined ‘LINUXCLIENTE’ to realm ‘DOMINIO.LOCAL’

 

Reinicie o Winbind:

# service winbind restart

 

Agora, faça o teste e liste os grupos e usuários do domínio com o comando wbinfo. Para listar usuários execute:

# wbinfo -u

 

Para listar os grupos execute:

# wbinfo -g

 

Caso não retorne nenhum nome de usuário ou grupo, reinicie o Winbind novamente.

Edite o arquivo NSSWITCH.CONF

Depois ingressar a máquina no domínio, é necessário editar o arquivo /etc/nsswitch.conf para que o sistema possa saber onde buscar informações de login dos usuários que estão se autenticando.

Edite o arquivo usando o Vim:

 

# vim /etc/nsswitch.conf

passwd: compat winbind

group: compat winbind

 

 

A partir desse momento, você já pode testar a maquina normalmente no domínio. Caso apresente algum erro, refaça o processo e verifique os usuários e suas permissões.

Leituras que me ajudaram a escrever esse artigo:
Viva o LinuxStato BlogTecMint

Ao som de Tulipa Ruiz – Proporcional

Dica rápida de como limpar o cache do Squid no PfSense 2.3.x. (versão que foi testada)
Obs: Antes de começar, veja qual é o proprietário e o grupo do diretório /var/squid/cache, pois será dada a permissão novamente a eles.

 

1 – Pare o serviço do Squid

/usr/local/etc/rc.d/squid.sh stop

 

2 – Remova o diretório do cache do squid e depois crie novamente

rm -rf /var/squid/cache/
mkdir -p /var/squid/cache/

 

3 – Altere o proprietário e o grupo para que estavam antes de apagar os diretórios:

chown proxy:proxy /var/squid/cache/
ou
chown squid:squid /var/squid/cache/

 

4 – Altere a permissão para 750:

chmod 750 /var/squid/cache/

 

5 – Reinicie o Squid:

squid -z
/usr/local/etc/rc.d/squid.sh start

Ao som de: Mamonas Assassinas – 1406