Zoeken op website

Hoe u ongewenste services van een Linux-systeem kunt stoppen en uitschakelen


Wij bouwen een server volgens ons plan en onze wensen, maar wat zijn de beoogde functies bij het bouwen van een server om deze snel en efficiënt te laten functioneren. We weten allemaal dat tijdens het installeren van een Linux-besturingssysteem sommige ongewenste pakketten en applicaties automatisch worden geïnstalleerd zonder medeweten van een gebruiker.

Bij het bouwen van een server moeten we ons afvragen wat we eigenlijk nodig hebben uit de doos. Heb ik een webserver of een FTP-server, een NFS-server of een DNS-server, een >Databaseserver of iets anders.

Hier in dit artikel bespreken we enkele van deze ongewenste toepassingen en diensten die u misschien niet nodig heeft, maar die standaard worden geïnstalleerd tijdens de installatie van het besturingssysteem en onbewust uw systeembronnen gaan opslokken.

Laten we eerst weten wat voor soort services er op het systeem worden uitgevoerd met behulp van de volgende opdrachten.

[avishek@tecmint]# ps ax
Voorbeelduitvoer
  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]
   .....

Laten we nu snel kijken naar de processen die verbindingen (poorten) accepteren met behulp van de netstat-opdracht, zoals hieronder weergegeven.

[avishek@tecmint]# netstat -lp
Voorbeelduitvoer
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         
....

In de bovenstaande uitvoer ziet u dat sommige van de toepassingen die u misschien niet nodig heeft op uw server, nog steeds als volgt actief zijn:

1. smbd en nmbd

smbd en nmbd zijn daemon van Samba Process. Moet u echt smb-share exporteren naar Windows of een andere machine? Als niet! waarom zijn deze processen actief? U kunt deze processen veilig beëindigen en voorkomen dat ze automatisch starten wanneer de machine de volgende keer opstart.

2. Telnet

Heeft u bidirectionele interactieve tekstgeoriënteerde communicatie nodig via internet of een lokaal netwerk? Als niet! dood dit proces en schakel het uit vanaf het opstarten.

3. log in

Moet u via een netwerk inloggen op een andere host? Als niet! Beëindig dit proces en zorg ervoor dat het niet automatisch start bij het opstarten.

4. reexec

Met Remote Process Execution oftewel rexec kunt u shell-opdrachten uitvoeren op een externe computer. Als u geen shell-opdracht op een externe machine hoeft uit te voeren, beëindigt u eenvoudigweg het proces.

5. FTP

Moet u via internet bestanden van de ene host naar de andere host overbrengen? Als dit niet het geval is, kunt u de service veilig stopzetten.

6. automatisch monteren

Moet u automatisch verschillende bestandssystemen aankoppelen om het netwerkbestandssysteem te openen? Als niet! Waarom loopt dit proces? Waarom laat u deze applicatie uw bron gebruiken? Beëindig het proces en zorg ervoor dat het niet automatisch start.

7. genoemd

Moet u NameServer (DNS) uitvoeren? Als dat niet het geval is, wat dwingt u dan in hemelsnaam om dit proces uit te voeren en toe te staan dat u uw hulpbronnen opslokt. Beëindig eerst het lopende proces en schakel het vervolgens uit tijdens het opstarten.

8. lpd

lpd is de printerdaemon die het mogelijk maakt om naar die server af te drukken. Als u niet vanaf de server hoeft af te drukken, is de kans groot dat uw systeembronnen in beslag worden genomen.

9. Inetd

Gebruik je inetd-services? Als je een stand-alone applicatie zoals ssh gebruikt die andere stand-alone applicaties zoals Mysql, Apache, etc. gebruikt, dan heb je inetd niet nodig. Het is beter om het proces te beëindigen en het de volgende keer automatisch uit te schakelen.

10. havenkaart

Portmap is een Open Network Computing Remote Procedure Call (ONC RPC) en gebruikt de daemon rpc.portmap en rpcbind. Als deze processen actief zijn, betekent dit dat u een NFS-server gebruikt. Als de NFS-server onopgemerkt draait, betekent dit dat uw systeembronnen onnodig worden opgebruikt.

Hoe een proces in Linux te beëindigen

Om een lopend proces in Linux te beëindigen, gebruik je het ‘Kill PID‘ commando. Maar voordat we de opdracht Kill uitvoeren, moeten we de PID van het proces kennen. Hier wil ik bijvoorbeeld een PID vinden van het proces ‘cupsd’.

[avishek@tecmint]# ps ax | grep cupsd

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

De PID van het proces ‘cupsd’ is dus ‘1511‘. Om die PID te doden, voert u de volgende opdracht uit.

[avishek@tecmint]# kill -9 1511

Om meer te weten te komen over kill command en hun voorbeelden, lees het artikel A Guide to Kill Command to Terminate a Process in Linux

Hoe u een service in Linux kunt uitschakelen

Maak in op Red Hat gebaseerde distributies zoals Fedora en CentOS gebruik van een script genaamd 'chkconfig' om de actieve services in Linux in en uit te schakelen .

Laten we bijvoorbeeld de Apache-webserver uitschakelen bij het opstarten van het systeem.

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

Gebruik in op Debian gebaseerde distributies zoals Ubuntu, Linux Mint en andere op Debian gebaseerde distributies een script met de naam update-rc.d sterk>.

Om bijvoorbeeld de Apache-service uit te schakelen bij het opstarten van het systeem, voert u de volgende opdracht uit. Hier staat de optie ‘-f’ voor force is verplicht.

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

Na het aanbrengen van deze wijzigingen zal het systeem de volgende keer opstarten zonder deze VN-noodzakelijke processen, die in feite onze systeembronnen zullen besparen en de server praktischer, sneller, veiliger en beter beveiligd zou zijn.

Dat is het voor nu. Ik kom hier weer met een ander interessant artikel. Blijf tot die tijd op de hoogte en verbonden met Tecmint. Vergeet niet om ons uw waardevolle feedback te geven in de commentaarsectie.