Pesquisa de site

Configuração e configuração inicial do servidor no CentOS 7


Este tutorial explicará os primeiros passos básicos que você precisa seguir após instalar um sistema CentOS 7 mínimo sem ambiente gráfico para obter informações sobre o sistema instalado, o hardware sobre o qual o sistema é executado. e configurar outras tarefas específicas do sistema, como rede, privilégios de root, software, serviços e outros.

Requisitos

  1. Instalação mínima do CentOS 7

Importante: usuários do RHEL 7 podem seguir este artigo para fazer uma configuração inicial do servidor no RHEL 7.

Atualizar o sistema CentOS 7

A primeira etapa que você precisa realizar em um sistema CentOS recém-instalado é garantir que o sistema esteja atualizado com os patches de segurança, repositórios de software e pacotes mais recentes do kernel e do sistema.

Para atualizar completamente um sistema CentOS 7, emita os seguintes comandos com privilégios de root.


yum check-update
yum upgrade

Após a conclusão do processo de atualização, para liberar espaço em disco, você pode remover todos os pacotes baixados que foram usados no processo de atualização junto com todas as informações dos repositórios em cache, executando o seguinte comando.


yum clean all

Instale utilitários de sistema no CentOS 7

Os seguintes pacotes de utilitários podem ser úteis para a administração diária do sistema: nano (editor de texto para substituir o editor vi), wget, curl (utilitários usados para baixar principalmente pacotes pela rede) net-tools, lsof (utilitários para gerenciar redes locais) e bash-completion (preenchimento automático de linha de comando).

Instale todos eles de uma só vez, executando o comando abaixo.


yum install nano wget curl net-tools lsof bash-completion

Configurar rede no CentOS 7

O CentOS 7 possui uma ampla gama de ferramentas que podem ser usadas para configurar e gerenciar redes, desde a edição manual do arquivo de configuração de rede até o uso de comandos como ip, ifconfig, nmtui, nmcli ou rota.

O utilitário mais fácil que um iniciante pode usar para gerenciar e alterar configurações de rede é a linha de comando gráfica nmtui.

Para alterar o nome do host do sistema através do utilitário nmtui, execute o comando nmtui-hostname, defina o nome do host da sua máquina e pressione OK para finalizar, conforme ilustrado na imagem abaixo.


nmtui-hostname

Para manipular uma interface de rede, execute o comando nmtui-edit, escolha a interface que deseja editar e selecione editar no menu direito, conforme mostrado na imagem abaixo.


nmtui-edit

Quando estiver na interface gráfica fornecida pelo utilitário nmtui, você pode definir as configurações de IP da interface de rede conforme ilustrado na imagem abaixo. Ao terminar, navegue até OK usando a tecla [tab] para salvar a configuração e sair.

Para aplicar a nova configuração da interface de rede, execute o comando nmtui-connect, selecione a interface que deseja gerenciar e clique na opção Desativar/Ativar para descomissionar e ativar a interface com as configurações de IP, conforme apresentado nas imagens abaixo.


nmtui-connect

Para visualizar as configurações da interface de rede, você pode inspecionar o conteúdo do arquivo de interface ou emitir os comandos abaixo.


ifconfig enp0s3
ip a
ping -c2 google.com

Outros utilitários úteis que podem ser usados para gerenciar velocidade, estado de link ou obter informações sobre interfaces de rede de máquinas são ethtool e mii-tool.


ethtool enp0s3
mii-tool enp0s3

Um aspecto importante da rede da sua máquina é listar todos os soquetes de rede abertos para ver quais programas estão escutando em quais portas e qual é o estado das conexões de rede estabelecidas.

Para listar todos os servidores que abriram soquetes TCP ou UDP no estado de escuta, emita os seguintes comandos. No entanto, o servidor UDP não listará nenhum estado de soquete devido ao fato de que o UDP é um protocolo sem conexão que apenas envia pacotes pela rede e não estabelece conexões.


netstat -tulpn
ss -tulpn
lsof -i4 -6

Gerenciar serviços no CentOS 7

CentOS 7 gerencia daemons ou serviços por meio do utilitário systemctl. Para listar todos os estados dos serviços, emita o seguinte comando.


systemctl list-units

Para verificar se um daemon ou serviço está habilitado para iniciar automaticamente quando o sistema for inicializado, emita o seguinte comando.


systemctl list-unit-files -t service

Para listar os serviços SysV antigos presentes em seu sistema e desativá-los, emita os seguintes comandos chkconfig.


chkconfig --list
chkconfig service_name off

5. Desative serviços indesejados no CentOS 7

É recomendado após a instalação do CentOS 7, listar quais serviços estão rodando no sistema executando os comandos acima e desativá-los e removê-los para reduzir os vetores de ataques contra o seu sistema.

Por exemplo, o daemon Postfix é instalado e habilitado por padrão no CentOS 7. Se o seu sistema não requer a execução de um servidor de e-mail, é melhor parar, desabilitar e remover o serviço postfix emitindo os comandos abaixo .


systemctl stop postfix
systemctl disable postfix
yum remove postfix

Além dos comandos netstat, ss, lsof ou systemctl, você também pode executar comandos ps, top ou pstree para descobrir e identificar quais serviços indesejados estão sendo executados em seu sistema e desative ou remova-os.

Por padrão, o utilitário pstree não está instalado no CentOS 7. Para instalá-lo, execute o seguinte comando.


yum install psmisc
pstree -p

Habilitar Firewall no CentOs 7

Firewalld é o principal utilitário de firewall que utiliza o interage para gerenciar regras de iptables.
Para habilitar, iniciar e verificar o firewall no CentOS 7, execute os seguintes comandos.


systemctl enable firewalld
systemctl start firewalld
systemctl status firewalld

Para abrir um serviço específico para conexões de entrada, primeiro verifique se a aplicação já está presente nas regras do firewalld e, em seguida, adicione a regra para o serviço, conforme mostrado no exemplo abaixo que permite SSH. Use a opção --permanent para adicionar a regra permanentemente.


firewall-cmd --add-service=[tab]  #List services
firewall-cmd --add-service=ssh
firewall-cmd --add-service=ssh --permanent

Caso o serviço já esteja definido nas regras do firewalld, você pode adicionar manualmente a porta de serviço, conforme mostrado no exemplo abaixo.


firewall-cmd --add-port=22/tcp --permanent
firewall-cmd --reload     #Apply the rule on-fly

Habilite permissões Sudo em contas de usuário

Para conceder permissões de root para um usuário normal, primeiro crie o usuário emitindo o comando adduser, defina a senha para o usuário e conceda permissões de root ao usuário executando o comando abaixo que adiciona o novo usuário ao grupo administrativo wheel.


adduser tecmint
passwd tecmint
usermod -aG wheel tecmint

Para testar se o novo usuário tem privilégios de root, faça login no sistema com as credenciais do usuário e execute o comando yum com permissões sudo, conforme mostrado no trecho abaixo.


su - tecmint
sudo yum update

Configure a autenticação de chave pública SSH no CentOS 7

Para proteger o SSH do seu servidor e configurar a autenticação de chave pública para aumentar a segurança do seu servidor com uma chave SSH privada para fazer login, primeiro gere um par de chaves SSH com o seguinte comando.

Não insira uma senha caso queira automatizar o gerenciamento do servidor via SSH.


ssh-keygen -t RSA

Após a geração dos pares de chaves SSH, copie a chave para o servidor ao qual deseja se conectar, emitindo o comando abaixo. Inicialmente, insira sua senha de usuário SSH remoto para copiar a chave pública.


ssh-copy-id remote_user@SSH_SERVER_IP

Após a chave pública SSH ter sido copiada para o servidor remoto, faça login no servidor SSH remoto com o seguinte comando.


ssh remote_user@SSH_SERVER_IP

Finalmente, para proteger o servidor SSH, certifique-se de proibir o acesso SSH remoto à conta root abrindo o arquivo SSH de configuração /etc/ssh/sshd_config com seu editor de texto como root e altere-o de Sim a Não.


PermitRootLogin no

Para aplicar a configuração, você precisa reiniciar o serviço SSH para que ele use a nova configuração.


systemctl restart sshd

Isso é tudo! Estas são apenas algumas configurações e comandos básicos que todo administrador de sistema precisa conhecer e aplicar em um sistema CentOS recém-instalado ou para executar tarefas diárias no sistema.

Para proteger e fortalecer o servidor CentOS 7, verifique estes artigos a seguir.

  1. O mega guia para proteger e proteger o CentOS 7 – Parte 1
  2. O mega guia para proteger e proteger o CentOS 7 – Parte 2

Se você está planejando implantar sites neste sistema CentOS 7, aprenda como instalar e configurar a pilha LAMP ou a pilha LEMP.