Pular para o conteúdo principal

Servidor CentOS 7 Básico


INTRODUÇÃO

Com o advento do Systemd e a mudança de MySQL para MariaDB, algumas pessoas se assustam ao migrar de CentOS 6.X para 7.X, o objetivo desse post é prover uma instalação básica, mostrar alguns comandos para que você se sinta mais confortável e sugerir algumas boas práticas.
ANTES DE CONTINUARMOS

Eu sou da época em que a ajuda e incentivo que a gente recebia era RTFM, fui criado no Slackware, então apesar de gostar de ensinar, algumas coisas permanecem, pois fazem parte da minha formação. Só para citar as principais:
Servidor não tem interface gráfica, a menos que seja uma necessidade da aplicação;
Instalações são feitas sempre partindo-se do Minimal;
Só instale o que for necessário;
Servidor é 64 bits;
Cada aplicação precisa pacotes e ajustes específicos, esse post trata do que você deve fazer em todos os seus servidores. 
AJUSTES PÓS INSTALAÇÃO

Partindo do princípio que você fez uma instalação Minimal do CentOS 7, logou pela primeira vez como root, vamos fazer alguns ajustes.
Parar a execução do firewall:

# systemctl stop firewalld
Desabilitá-lo permanentemente:

# systemctl disable firewalld
rm '/etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service'
rm '/etc/systemd/system/basic.target.wants/firewalld.service'
Conferir se o mesmo está desabilitado:

# systemctl is-enabled firewalld
disabled

DICA: Você pode ver o status de todos os serviços com o comando abaixo:
# systemctl list-unit-files
Checar o estado do SELinux:

# getenforce
Enforcing
Torna-lo permissivo:

# setenforce 0
Checar o estado do SELinux:

# getenforce
Permissive

DICA: Para desabilitar definitivamente o SELinux edite o arquivo /etc/selinux/config e altere a opção "SELINUX=enforcing" para "SELINUX=disabled". Isso pode ser feito por meio do comando:
# sed -i 's/enforcing/disabled/g' /etc/selinux/config

Observação: Estou desabilitando o Firewall e o SELinux porque cada servidor tem uma finalidade específica e, exige ajustes específicos para essa finalidade, então por padrão desabilito os dois, e se houver necessidade, reabilito e faço os ajustes específicos. 

O EPEL - Extra Packages for Enterprise Linux é um repositório oficial com pacotes extras e as últimas versões dos pacotes. Podemos instalá-lo através do comando abaixo:
# rpm -Uvh http://download.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm

O REMI é um repositório com pacotes adicionais aos do EPEL e/ou versões mais atualizadas do mesmo, dependendo do caso. Ele não funciona se o EPEL não estiver instalado, é um pré-requisito. Para instalar o remi, use o comando abaixo:
# rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm

Além disso ele vem desabilitado, é preciso habilitá-lo:
# vi /etc/yum.repos.d/remi.repo
[remi]
name=Les RPM de remi pour Enterprise Linux 7 - $basearch
#baseurl=http://rpms.famillecollet.com/enterprise/7/remi/$basearch/
mirrorlist=http://rpms.famillecollet.com/enterprise/7/remi/mirror
#enabled=0
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi

Feito isso atualize seu sistema:
# yum update -y

Este último comando vai atualizar todos os pacotes do seu sistema para as versões disponíveis no EPEL e REMI.
DEPENDENCIAS BÁSICAS

Esses são pacotes que precisamos para o dia-a-dia, independente da aplicação desse servidor. Lembre-se um Servidor Web tem necessidades diferentes de um Servidor de FTP.
# yum -y install rsync  bind-utils mlocate mailx wget net-tools make cmake automake man net-tools
Clamav

Todo servidor tem que ter antivírus? Mas não é Linux? Eu disse que ia lhe sugerir algumas boas práticas, mas são apenas sugestões, este é o meu setup de Servidor CentOS 7. 
# yum -y install clamav-server clamav-data clamav-update clamav-filesystem clamav clamav-scanner-systemd clamav-devel clamav-lib clamav-server-systemd

Precisamos comentar as linhas de exemplo: 
# sed -i -e "s/^Example/#Example/" /etc/freshclam.conf
# sed -i -e "s/^Example/#Example/" /etc/clamd.d/scan.conf

E atualizar o clamav:
# freshclam

Precisamos comentar a linha abaixo:
# sed -i -e "s/^FRESHCLAM_DELAY/#FRESHCLAM_DELAY/" /etc/sysconfig/freshclam

Editar o arquivo scan.conf: 
# vi /etc/clamd.d/scan.conf

E descomentar a linha:
#LocalSocket /var/run/clamd.scan/clamd.sock

Habilitar o Clamav, Inicia-lo e Checar se o processo está ativo: 
# systemctl  enable clamd@scan
# systemctl  start clamd@scan
# systemctl  status clamd@scan

Testar a verificação de um arquivo: 
# clamdscan -c /etc/clamd.d/scan.conf /etc/hosts
Cron

Deixar um cron padrão para que qualquer um possa editá-lo: 
# crontab -e

# Exemplo de uso
# 0     4       *       *       *       <usuario>       who

# Campo         Funcao
# 1o.           Minuto
# 2o.           Hora
# 3o.           Dia do mes
# 4o.           Mes
# 5o.           Dia da semana
# 6o.           Usuario com o qual o comando sera executado <opcional>
# 7o.           Programa para execucao

# Campo                 Valores
# Minuto                 0-59
# Hora                     0-23
# Dia do mes           1-31
# Mes                      1-12
# Dia da semana      0-6 (o "0" eh o domingo), 1 eh a segunda, etc.

# -----------------------------------------------------------------------------------------------
# Roda o update do antivirus todos os dias as 23:00
0 23 * * * /usr/bin/freshclam

Reiniciar o servidor:
#reboot

Comentários

Postagens mais visitadas deste blog

Tutorial: Consultas LDAP no Active Directory

Hoje será mostrado como fazer Consultas Salvas (Saved queries) e alguns exemplos: 1. No Active Directory Users and Computers, click com o botão direito no item Saved Queries e selecione New e depois Query. 2. Digite o nome para a Query, por exemplo: “Usuários Ativos” e coloque uma descrição e depois clic em Define Query. 3. Na drop-down box Find selecione Custom Search e então click em Advanced tab. 4. Digite uma das Queries e execute. Consultas de Usuarios Usuarios sem grupo (apenas domain users): (&(objectCategory=user)(objectClass=user)(!memberOf=*)) Usuarios sem e-mail (objectcategory=person)(!mail=*) Usuarios com e-mail (objectcategory=person)(mail=*) Usuarios que nunca fizeram logon no dominio (&(&(objectCategory=person)(objectClass=user))(|(lastLogon=0)(!(lastLogon=*)))) Usuários Criados depois de 09/10/2011 (objectCategory=user)(whenCreated>=20111009000000.0Z) Obs: troque o data por uma data da sua necessidade Usuários que precisam mudar a sen...

Usando o CIFS para mapear diretórios Windows no Linux

Usando o CIFS para mapear diretórios Windows no Linux Se você utiliza o samba e está tendo problemas com mapeamentos, não possui Samba no seu servidor Linux ou precisa acessar de forma rápida um diretório Windows pelo Linux, passe a usar o CIFS. Com ele, caso o servidor mapeado sofra um shutdown (Linux mapeando Windows), automaticamente ao se re-estabelecer a conexão com o Servidor, o mapeamento sobe. Neste post estarei tratando a situação onde temos um servidor Linux e desejamos através dele efetuar leituras ou gravações em diretórios no Windows. No Windows Estou adotando como exemplo o servidor com IP 192.168.0.1, dominio TESTE, usuário Administrador e senha 123!456. O objetivo é mapear o diretório D:\Teste no Linux. Então, pelo windows, compartilhe este diretório. No Linux# cd /mnt # mkdir teste # mount –t cifs //192.168.0.1/teste /mnt/teste –o user=Administrador,password=’123!456’,domain=TESTE Pronto!!! Agora você pode compartilhar seus arquivos entre o...

Erro MYSQL Cloud (Google, AWS, Digital Ocean) - Resolvido

Atualmente executando um servidor nginx com o wordpress, recebo um erro no banco de dados após alguns minutos de execução. Ao executar o comando para verificar os logs: # tail -f /var/log/mysqld.log a saída do comando é : 2019-09-12 19:11:24 25864 [Note] Plugin 'FEDERATED' is disabled. 2019-09-12 19:11:24 25864 [Note] InnoDB: Using atomics to ref count buffer pool pages 2019-09-12 19:11:24 25864 [Note] InnoDB: The InnoDB memory heap is disabled 2019-09-12 19:11:24 25864 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins 2019-09-12 19:11:24 25864 [Note] InnoDB: Memory barrier is not used 2019-09-12 19:11:24 25864 [Note] InnoDB: Compressed tables use zlib 1.2.11 2019-09-12 19:11:24 25864 [Note] InnoDB: Using Linux native AIO 2019-09-12 19:11:24 25864 [Note] InnoDB: Using CPU crc32 instructions 2019-09-12 19:11:24 25864 [Note] InnoDB: Initializing buffer pool, size = 128.0M InnoDB: mmap(137363456 bytes) failed; errno 12 2019-09-12 19:11:2...