Com aturar i desactivar serveis no desitjats del sistema Linux


Construïm un servidor segons el nostre pla i requisits, però quines són les funcions previstes mentre construïm un servidor perquè funcioni de manera ràpida i eficient. Tots sabem que mentre s'instal·la un sistema operatiu Linux, alguns paquets i aplicacions no desitjats s'instal·len automàticament sense el coneixement de l'usuari.

Quan construïm un servidor ens hem de preguntar què necessitem realment de la caixa. Necessito un servidor web o un servidor FTP, un servidor NFS o un servidor DNS, un servidor de bases de dades o una altra cosa?

Aquí, en aquest article, parlarem d'algunes d'aquestes aplicacions i serveis no desitjats que potser no necessiteu, però que s'instal·len de manera predeterminada durant la instal·lació del sistema operatiu i sense saber-ho comencen a consumir els recursos del vostre sistema.

Primer permet saber quin tipus de serveis s'executen al sistema mitjançant les ordres següents.

 ps ax
  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]
   .....

Ara, fem una ullada ràpida als processos que accepten la connexió (ports) mitjançant l'ordre netstat tal com es mostra a continuació.

 netstat -lp
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         
....

A la sortida anterior, observeu que algunes de les aplicacions que potser no necessiteu al vostre servidor, però encara s'estan executant de la següent manera:

smbd i nmbd són els dimonis del procés Samba. Realment necessiteu exportar smb share a Windows o una altra màquina. Sinó! per què s'executen aquests processos? Podeu matar aquests processos amb seguretat i desactivar-los perquè s'iniciïn automàticament quan la màquina arrenqui la propera vegada.

Necessites comunicació interactiva bidireccional orientada a text a través d'Internet o xarxa d'àrea local? Sinó! mateu aquest procés i desactiveu-lo de començar a arrencar.

Necessites iniciar sessió a un altre amfitrió a través de la xarxa. Sinó! Tanqueu aquest procés i desactiveu-lo perquè s'iniciï automàticament a l'arrencada.

L'execució de processos remots, també conegut com rexec, us permet executar ordres de shell en un ordinador remot. Si no necessiteu executar l'ordre de l'intèrpret d'ordres en una màquina remota, simplement elimineu el procés.

Necessites transferir fitxers d'un amfitrió a un altre a través d'Internet? Si no, podeu aturar el servei amb seguretat.

Necessites muntar diferents sistemes de fitxers automàticament per mostrar el sistema de fitxers de xarxa? Sinó! Per què s'està executant aquest procés? Per què deixes que aquesta aplicació faci servir el teu recurs? Tanqueu el procés i desactiveu-lo perquè s'iniciï automàticament.

Necessites executar NameServer (DNS)? Si no, què dimonis us obliga a executar aquest procés i permetre consumir els vostres recursos. Primer mateu el procés en execució i, a continuació, desactiveu-lo de l'execució a l'arrencada.

lpd és el dimoni de la impressora que permet imprimir en aquest servidor. Si no necessiteu imprimir des del servidor, és probable que els recursos del vostre sistema s'esgotin.

Teniu algun servei inetd? Si esteu executant una aplicació autònoma com ssh que utilitza una altra aplicació autònoma com Mysql, Apache, etc., llavors no necessiteu inetd. millor matar el procés i desactivar-lo començant la propera vegada automàticament.

Portmap, que és una trucada de procediment remot de computació de xarxa oberta (ONC RPC) i utilitza el dimoni rpc.portmap i rpcbind. Si aquests processos s'estan executant, vol dir que esteu executant el servidor NFS. Si el servidor NFS s'executa desapercebut, significa que els recursos del vostre sistema s'estan utilitzant innecessàriament.

Com matar un procés a Linux

Per matar un procés en execució a Linux, utilitzeu l'ordre Kill PID. Però, abans d'executar l'ordre Kill, hem de conèixer el PID del procés. Per exemple, aquí vull trobar un PID del procés cupsd.

 ps ax | grep cupsd

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

Per tant, el PID del procés cupsd és 1511. Per eliminar aquest PID, executeu l'ordre següent.

 kill -9 1511

Per obtenir més informació sobre l'ordre kill amb els seus exemples, llegiu l'article A Guide to Kill Command to Terminate a Process in Linux

Com desactivar un servei a Linux

A les distribucions basades en Red Hat, com ara Fedora i CentOS, feu servir un script anomenat chkconfig per habilitar i desactivar els serveis en execució a Linux.

Per exemple, desactivem el servidor web Apache a l'inici del sistema.

 chkconfig httpd off
 chkconfig httpd --del

A les distribucions basades en Debian, com ara Ubuntu, Linux Mint i altres distribucions basades en Debian, utilitzeu un script anomenat update-rc.d.

Per exemple, per desactivar el servei Apache a l'inici del sistema, executeu l'ordre següent. Aquí l'opció -f significa que la força és obligatòria.

 update-rc.d -f apache2 remove

Després de fer aquests canvis, el sistema la propera vegada s'iniciarà sense aquests processos necessaris per l'ONU que, de fet, estarà estalviant els recursos del nostre sistema i el servidor seria més pràctic, ràpid, segur i segur.

Això és tot per ara. Tornaré a aquí amb un altre article interessant. Fins aleshores estigueu atents i connectats a Tecmint. No us oblideu de proporcionar-nos els vostres valuosos comentaris a la secció de comentaris.