Pesquisa de site

Como parar e desativar serviços indesejados do sistema Linux


Construímos um servidor de acordo com nosso plano e requisitos, mas quais são as funções pretendidas ao construir um servidor para que funcione de forma rápida e eficiente. Todos nós sabemos que durante a instalação de um sistema operacional Linux, alguns pacotes e aplicativos indesejados são instalados automaticamente sem o conhecimento do usuário.

Ao construir um servidor, precisamos nos perguntar o que realmente precisamos. Preciso de um servidor Web ou um servidor FTP, um servidor NFS ou um servidor DNS, um Servidor de banco de dados ou qualquer outra coisa.

Aqui neste artigo, discutiremos alguns desses aplicativos e serviços indesejados dos quais você pode não precisar, mas que são instalados por padrão durante a instalação do sistema operacional e, sem saber, começam a consumir os recursos do sistema.

Vamos primeiro saber que tipo de serviços estão sendo executados no sistema usando os seguintes comandos.

[avishek@tecmint]# ps ax
Saída de amostra
  PID TTY      STAT   TIME COMMAND
    2 ?        S      0:00 [kthreadd]
    3 ?        S      0:00  \_ [migration/0]
    4 ?        S      0:09  \_ [ksoftirqd/0]
    5 ?        S      0:00  \_ [migration/0]
    6 ?        S      0:24  \_ [watchdog/0]
    7 ?        S      2:20  \_ [events/0]
    8 ?        S      0:00  \_ [cgroup]
    9 ?        S      0:00  \_ [khelper]
   10 ?        S      0:00  \_ [netns]
   11 ?        S      0:00  \_ [async/mgr]
   12 ?        S      0:00  \_ [pm]
   13 ?        S      0:16  \_ [sync_supers]
   14 ?        S      0:15  \_ [bdi-default]
   15 ?        S      0:00  \_ [kintegrityd/0]
   16 ?        S      0:49  \_ [kblockd/0]
   17 ?        S      0:00  \_ [kacpid]
   18 ?        S      0:00  \_ [kacpi_notify]
   19 ?        S      0:00  \_ [kacpi_hotplug]
   20 ?        S      0:00  \_ [ata_aux]
   21 ?        S     58:46  \_ [ata_sff/0]
   22 ?        S      0:00  \_ [ksuspend_usbd]
   23 ?        S      0:00  \_ [khubd]
   24 ?        S      0:00  \_ [kseriod]
   .....

Agora, vamos dar uma olhada rápida nos processos que aceitam conexões (portas) usando o comando netstat conforme mostrado abaixo.

[avishek@tecmint]# netstat -lp
Saída de amostra
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name   
tcp        0      0 *:31138                     *:*                         LISTEN      1485/rpc.statd      
tcp        0      0 *:mysql                     *:*                         LISTEN      1882/mysqld         
tcp        0      0 *:sunrpc                    *:*                         LISTEN      1276/rpcbind        
tcp        0      0 *:ndmp                      *:*                         LISTEN      2375/perl           
tcp        0      0 *:webcache                  *:*                         LISTEN      2312/monitorix-http 
tcp        0      0 *:ftp                       *:*                         LISTEN      2174/vsftpd         
tcp        0      0 *:ssh                       *:*                         LISTEN      1623/sshd           
tcp        0      0 localhost:ipp               *:*                         LISTEN      1511/cupsd          
tcp        0      0 localhost:smtp              *:*                         LISTEN      2189/sendmail       
tcp        0      0 *:cbt                       *:*                         LISTEN      2243/java           
tcp        0      0 *:websm                     *:*                         LISTEN      2243/java           
tcp        0      0 *:nrpe                      *:*                         LISTEN      1631/xinetd         
tcp        0      0 *:xmltec-xmlmail            *:*                         LISTEN      2243/java           
tcp        0      0 *:xmpp-client               *:*                         LISTEN      2243/java           
tcp        0      0 *:hpvirtgrp                 *:*                         LISTEN      2243/java           
tcp        0      0 *:5229                      *:*                         LISTEN      2243/java           
tcp        0      0 *:sunrpc                    *:*                         LISTEN      1276/rpcbind        
tcp        0      0 *:http                      *:*                         LISTEN      6439/httpd          
tcp        0      0 *:oracleas-https            *:*                         LISTEN      2243/java         
....

Na saída acima, você percebe que alguns dos aplicativos que você pode não precisar em seu servidor, mas ainda estão sendo executados da seguinte forma:

1.smbd e nmbd

smbd e nmbd são daemons do Samba Process. Você realmente precisa exportar o compartilhamento SMB no Windows ou em outra máquina. Se não! por que esses processos estão em execução? Você pode encerrar esses processos com segurança e impedir que eles sejam iniciados automaticamente na próxima vez que a máquina inicializar.

2. Telnet

Você precisa de comunicação interativa bidirecional orientada a texto pela Internet ou rede local? Se não! elimine esse processo e desligue-o desde a inicialização.

3. login

Você precisa fazer login em outro host pela rede. Se não! Mate este processo e desative-o para iniciar automaticamente na inicialização.

4. executar

A Execução Remota de Processo, também conhecida como rexec, permite executar comandos shell em um computador remoto. Se você não precisar executar o comando shell em uma máquina remota, simplesmente elimine o processo.

5. FTP

Você precisa transferir arquivos de um host para outro pela Internet? Caso contrário, você pode interromper o serviço com segurança.

6. montagem automática

Você precisa montar diferentes sistemas de arquivos automaticamente para ativar o sistema de arquivos de rede? Se não! Por que esse processo está em execução? Por que você está permitindo que este aplicativo use seu recurso? Mate o processo e desative-o para iniciar automaticamente.

7. nomeado

Você precisa executar o NameServer (DNS)? Se não, o que diabos está obrigando você a executar esse processo e permitir o consumo de seus recursos. Mate o processo em execução primeiro e, em seguida, desative-o na inicialização.

8. lpd

lpd é o daemon da impressora que torna possível imprimir nesse servidor. Se você não precisar imprimir do servidor, é provável que os recursos do sistema estejam sendo consumidos.

9. Internet

Você está executando algum serviço inetd? Se você estiver executando um aplicativo independente como ssh, que usa outro aplicativo independente como Mysql, Apache, etc., então você não precisa do inetd. é melhor encerrar o processo e desativá-lo, iniciando na próxima vez automaticamente.

10. mapa do porto

Portmap, que é uma chamada de procedimento remoto de computação em rede aberta (ONC RPC) e usa o daemon rpc.portmap e rpcbind. Se esses processos estiverem em execução, significa que você está executando o servidor NFS. Se o servidor NFS estiver funcionando despercebido, significa que os recursos do sistema estão sendo usados desnecessariamente.

Como matar um processo no Linux

Para encerrar um processo em execução no Linux, use o comando ‘Kill PID’. Mas, antes de executar o comando Kill, devemos saber o PID do processo. Por exemplo, aqui quero encontrar um PID do processo ‘cupsd’.

[avishek@tecmint]# ps ax | grep cupsd

1511 ?        Ss     0:00 cupsd -C /etc/cups/cupsd.conf

Portanto, o PID do processo ‘cupsd’ é ‘1511‘. Para eliminar esse PID, execute o seguinte comando.

[avishek@tecmint]# kill -9 1511

Para saber mais sobre o comando kill com seus exemplos, leia o artigo Um guia para o comando Kill para encerrar um processo no Linux

Como desabilitar um serviço no Linux

Em distribuições baseadas em Red Hat, como Fedora e CentOS, use um script chamado 'chkconfig' para ativar e desativar os serviços em execução no Linux .

Por exemplo, vamos desabilitar o servidor web Apache na inicialização do sistema.

[avishek@tecmint]# chkconfig httpd off
[avishek@tecmint]# chkconfig httpd --del

Em distribuições baseadas em Debian como Ubuntu, Linux Mint e outras distribuições baseadas em Debian use um script chamado update-rc.d.

Por exemplo, para desabilitar o serviço Apache na inicialização do sistema, execute o seguinte comando. Aqui a opção ‘-f’ significa força é obrigatória.

[avishek@tecmint]# update-rc.d -f apache2 remove

Depois de fazer essas alterações, o sistema da próxima vez inicializará sem esses processos necessários da ONU, o que de fato economizará recursos do sistema e o servidor ficará mais prático, rápido, seguro e protegido.

É tudo por agora. Estarei aqui novamente com outro artigo interessante. Até então fique ligado e conectado à Tecmint. Não se esqueça de nos fornecer seus valiosos comentários na seção de comentários.