Destaque PrincipalDestaque SecundárioLinux

Validando arquivos de configuração no Linux

No post de hoje vamos mostrar como validar arquivos de configuração no Linux. A verificação e/ou teste da sintaxe de configuração é uma etapa fundamental a ser executada após fazer alterações no arquivo de configuração de um aplicativo, ou serviço, ou mesmo após executar atualizações. Isso ajuda a reduzir as chances de o serviço não reiniciar devido a erros de configuração.

Vários aplicativos/programas ou daemons de serviço são fornecidos com comandos para verificar a exatidão da sintaxe nos arquivos de configuração. Reunimos uma lista de aplicativos e serviços comuns em sistemas Linux e como testar ou validar seus arquivos de configuração.

Observação: use se você não estiver conectado a um servidor como usuário root, lembre-se de usar o comando sudo quando necessário ao invocar um comando porque alguns serviços são executados com privilégios de root e verificar seus arquivos de configuração requer permissões de usuário root.

Precisando de uma hospedagem de site ou de um servidor dedicado personalizado, seja para ambiente de teste, desenvolvimento ou de produção? E com um suporte de especialistas, que ti, ajudam a resolver os problemas o mais rápido possível? A SoloWeb tem o prazer em ti, ajudar com isso. Entre em contato conosco e faça uma cotação agora mesmo, acesse: www.soloweb.com.br.

Sudo Command

Você pode verificar a sintaxe do arquivo de configuração sudo usando o comando visudo –check , que oferece suporte a uma opção de linha de comando ou -c para validar apenas um arquivo sem edição. A -f opção exibe a mensagem de erro e abre o arquivo para edição:

# visudo -c /etc/sudoers
ou
# visudo -c /etc/sudoers.d/my_config
ou
# visudo -f /etc/sudoers.d/my_config

Bash Script

Você pode verificar os scripts Bash quanto a erros de sintaxe da seguinte maneira:

# bash -n /path/to/scriptname.sh

Perl Scripts

Para verificar se há erros de sintaxe nos scripts Perl, use o seguinte comando:

# perl -c /path/to/scriptname

Systemd Unit Files

O comando “ systemd-analyze verify ” permite testar o arquivo de unidade systemd quanto a erros de sintaxe. Ele carrega arquivos de unidade e imprime avisos se algum erro for detectado.

Por padrão, ele carrega os arquivos especificados na linha de comando como um argumento e quaisquer outras unidades referenciadas por eles:

# systemd-analyze verify /etc/systemd/system/test.service

OpenSSH Server

Para verificar a validade do arquivo de configuração sshd e a sanidade das chaves, emita o seguinte comando. Para verificar um arquivo de configuração específico, especifique-o usando o -f sinalizador:

# sshd -t

NGINX Web Server

Para verificar o arquivo de configuração NGINX , execute o comando nginx -t com o sinalizador. Para especificar um arquivo de configuração diferente, use o -c sinalizador:

# nginx -t
ou
# nginx -t -c /etc/nginx/conf.d/example.com.conf

PHP-FPM

Para verificar o arquivo de configuração php-fpm , execute o seguinte comando. Observe que chamar o -t sinalizador duas vezes ( -tt ) faz com que a configuração seja descarregada antes de sair:

# php-fpm -t
ou
# php-fpm -tt

Apache Web Server

Você pode verificar o arquivo de configuração do servidor web Apache usando o seguinte comando:

# apachectl configtest

Como alternativa, você pode usar os seguintes comandos em distribuições baseadas em RedHat:

# httpd -t

Em distribuições baseadas em Debian, execute:

# apache2ctl -t

HAProxy TCP/HTTP Load Balancer

A configuração do HAProxy pode ser testada usando o seguinte comando onde a -f opção específica o arquivo e -c habilita o modo de teste:

# haproxy -f /etc/haproxy/haproxy.cfg -c

Lighttpd HTTP Server

Execute o seguinte comando para testar a sintaxe do arquivo de configuração do Lighttpd. A -t opção de linha de comando permite que o Lighttpd teste o arquivo de configuração padrão quanto a erros de sintaxe e saia. Use o -f sinalizador para especificar um arquivo de configuração personalizado:

# lighttpd -t
ou
# lighttpd -t -f /path/to/config/file

Apache Tomcat

O servidor web Tomcat permite a verificação de sintaxe de configuração básica. Primeiro, vá para o diretório de instalação do tomcat e emita o seguinte comando:

# ./bin/catalina.sh configtest
ou
# $TOMCAT_HOME/bin/catalina.sh configtest

Pound Reverse Proxy

Você pode analisar o arquivo de configuração do servidor Pound antes de iniciar o servidor. Execute o comando pound -c com o sinalizador sem nenhum outro argumento para verificar o arquivo de configuração padrão. Você pode especificar um arquivo de configuração diferente usando a -f opção de linha de comando:

# pound -c
ou
# pound -f /path/to/config/file -c

Varnishd HTTP Accelerator

Para verificar a sintaxe do arquivo varnishd VCL ( Varnish Configuration Language ) quanto a erros, use o seguinte comando. Se tudo estiver OK, o verniz irá despejar a configuração gerada, caso contrário, exibirá um número de linha específico no arquivo que contém um erro:

# varnishd -C
ou
# varnishd -f /etc/varnish/default.vcl -C

Squid Proxy Caching Server

Para passar o arquivo de configuração do squid para o servidor de cache proxy Squid, emita o seguinte comando. A -k opção junto com os subcomandos parse ou debug, informa ao daemon squid para analisar o arquivo de configuração ou ativar o modo de depuração, respectivamente:

# squid -k parse
# squid -k debug

Caddy Web Server

Para expor quaisquer erros na configuração do servidor web Caddy , emita o seguinte comando. O primeiro verifica a configuração padrão, alternativamente, use a –config opção de linha de comando para especificar um arquivo de configuração:

# caddy validate
ou
# caddy validate --config /path/to/config/file

vsftpd FTP Server

Execute o seguinte comando para testar o arquivo de configuração do servidor FTP vsftpd:

# vsftpd
ou
# vsftpd -olisten=NO /path/to/vsftpd.testing.conf

DHCPD Server

Execute o comando dhcpd -t com o sinalizador para verificar a sintaxe de configuração do servidor dhcpd:

# dhcpd -t
ou
# dhcpd -t -cf /path/to/dhcpd.conf

MySQL Database Server e MariaDB Database Server

Use o seguinte comando para testar a sintaxe do arquivo de configuração do servidor de banco de dados MySQL . Após executar o comando, se não houver erros, o servidor finaliza com o código de saída 0 , caso contrário, exibe uma mensagem de diagnóstico e encerra com o código de saída 1 :

# mysqld --validate-config

Nagios Monitoring Tool

Para verificar a configuração do Nagios , execute o comando nagios -v com o sinalizador.

# nagios -v /usr/local/nagios/etc/nagios.cfg

Monit Monitoring Tool

Execute o comando monit com o sinalizador para executar uma verificação de sintaxe para o arquivo de controle Monit -t padrão . Você pode especificar um arquivo de controle específico, use o sinalizador: -c

# monit -t
ou
# monit -t -c path/to/control/file

Postfix Mail Server

O comando a seguir ajudará você a verificar os arquivos de configuração do Postfix quanto a erros de sintaxe.

# postfix check

Este segundo comando é mais detalhado que o primeiro:

# postfix -vvv

Dovecot IMAP Server

Verifique a sintaxe de configuração do servidor Dovecot IMAP usando o comando doveconf . Ele sairá com um código de erro zero se tudo estiver OK, caso contrário, sairá com um código de erro diferente de zero e exibirá a mensagem de erro:

# doveconf 1>/dev/null
# echo $?

Samba File Server

Você pode verificar o arquivo de configuração do servidor de arquivos Samba usando o seguinte comando:

# testparm -v

Syslogd/Rsyslogd

Quando você chama o comando rsyslod com a -N1 opção, ele ativa o modo de depuração e também verifica o arquivo de configuração padrão quanto a erros de sintaxe. Use o -f sinalizador para ler um arquivo de configuração personalizado:

# rsyslogd -N1

DNS (BIND) Server

Você pode verificar o arquivo de configuração DNS nomeado da seguinte forma:

# named-checkconf /etc/named.conf

NTP – Network Time Protocol

A sintaxe de configuração do ntpd pode ser testada usando o seguinte comando, onde o -d sinalizador habilita o modo de depuração detalhado, -f especifica o nome do arquivo de desvio de frequência e -n não implica em bifurcação:

# ntpd -d -f /etc/ntp.conf -n

OpenStack-Ansible

Execute o seguinte comando para verificar a sintaxe de um arquivo de configuração OpenStack-ansible:

# openstack-ansible setup-infrastructure.yml --syntax-check

Logrotate

Para depurar um arquivo de configuração logroate (facilidade de rotação de log), execute o comando logrotate -d com a opção e especifique o arquivo de configuração:

# logrotate -d /etc/logrotate.d/nginx

Esperamos ter ajudado com mais esta dica, e siga nos, nas redes sociais para mais tutoriais, e se precisar de nossa ajuda estamos a disposição: www.soloweb.com.br.

E lembrando que a SOLOWEB além de oferecer Hospedagem de Sites, Servidores Dedicados, Servidores VPS com o menor custo do Brasil, também desenvolve soluções de software e realiza gerenciamento e monitoramento de servidores para sua empresa, faça uma cotação sem custo, acesse: www.soloweb.com.br