Deaktiver og fjern uønskede tjenester på RHEL/CentOS 7 minimal installation


RHEL/CentOS 7 minimal installation til servere leveres med nogle forudinstallerede standardtjenester, såsom Postfix Mail Transfer Agent-dæmon, Avahi mdns-dæmon (multicast Domain Name System) og Chrony service, som er ansvarlig for at vedligeholde systemuret.

Nu kommer til spørgsmålet .. Hvorfor gifter vi os nødt til at deaktivere alle disse tjenester. hvis de er forudinstalleret? En af hovedårsagerne er at øge systemets sikkerhedsniveau, den anden årsag er systemets endelige destination, og den tredje er systemressourcer.

  1. CentOS 7 minimal installation
  2. RHEL 7 Minimal installation

Hvis du planlægger at bruge din nyinstallerede RHEL/CentOS 7 til at være vært, lad os sige et lille websted, der kører på Apache eller Nginx , eller til at levere netværkstjenester som DNS , DHCP, PXE-opstart, FTP-server osv. Eller andre tjenester, der ikke kræver at køre Postifx MTA-dæmonen, Chrony- eller Avahi-dæmonen, hvorfor vi derfor skal have alle disse unødvendige dæmoner installeret eller endda køre på din server.

De vigtigste eksterne tjenester, som din server virkelig har brug for at køre, efter at du har udført en minimal installation, ville bare være en SSH dæmon for at tillade fjernlogins på systemet og i nogle tilfælde NTP-service til nøjagtigt synkronisere serverens interne ur med eksterne NTP-servere.

Deaktiver/fjern Postfix MTA, Avahi og Chrony Services

1. Når installationen er færdig, skal du logge ind på din server med en root -konto eller en bruger med root-rettigheder og udføre en systemopdatering for at sikre dig, at dit system er opdateret med alle pakker og sikkerhed pletter.

# yum upgrade

2. Det næste trin ville være at installere nogle nyttige systemværktøjer ved hjælp af YUM Package Manager, såsom netværktøjer (denne pakke giver den ældre
men god ifconfig kommando), nano teksteditor, wget og krølle til URL-overførsler, lsof (for at liste dine åbne filer) og bash-gennemførelse , som automatisk udfylder indtastede kommandoer.

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

3. Nu kan du begynde at deaktivere og fjerne forudinstallerede uønskede tjenester. Først og fremmest får du en liste over alle dine aktiverede og kørende tjenester ved at køre netstat kommando mod TCP-, UDP- og Lyt-tilstandsnetværksstik.

# netstat -tulpn  	## To output numerical service sockets

# netstat -tulp      	## To output literal service sockets

4. Som du kan se, startes Postfix og lytter på localhost på port 25, Avahi -demon binder på alle netværksgrænseflader og Chronyd -tjenester binder til localhost og alle netværksgrænseflader på forskellige porte. Fortsæt med fjernelse af Postfix MTA-tjeneste ved at udstede følgende kommandoer.

# systemctl stop postfix
# yum remove postfix

5. Fjern derefter Chronyd-tjenesten, som erstattes af NTP-serveren, ved at udstede følgende kommandoer.

# systemctl stop chronyd
# yum remove chrony

6. Nu er det tid til at fjerne Avahi dæmonen. Ser ud som i RHEL/CentOS 7 Avahi-dæmonen er stærkt stram og afhænger af Network Manager-tjenesten. Udførelse af Avahi-dæmonfjerning kan efterlade dit system uden nogen netværksforbindelser.

Så vær ekstra opmærksom på dette trin. Hvis du virkelig har brug for automatisk netværkskonfiguration fra Network Manager, eller du skal redigere dine grænseflader
gennem nmtui netværk og interface-værktøj, så skal du kun stoppe og deaktivere Avahi-dæmonen og slet ikke udføre nogen fjernelse.

Hvis du stadig vil fjerne denne tjeneste fuldstændigt, skal du manuelt redigere netværkskonfigurationsfiler placeret i /etc/sysconfig/network-scripts/ifcfg-interface_name og derefter starte og aktivere netværkstjeneste.

Udsted følgende kommandoer for at fjerne Avahi mdns-dæmon . Forsigtig: Forsøg ikke at fjerne Avahi-dæmonen, hvis du har oprettet forbindelse via SSH.

# systemctl stop avahi-daemon.socket avahi-daemon.service
# systemctl disable avahi-daemon.socket avahi-daemon.service
--------- Stop here if you don't want removal --------- 

# yum remove avahi-autoipd avahi-libs avahi

7. Dette trin kræves kun, hvis du fjernede Avahi dæmonen, og dine netværksforbindelser styrtede ned, og du skal konfigurere netværksinterfacekortet manuelt igen.

Hvis du vil redigere dit NIC for at bruge IPv6 og statisk IP-adresse , skal du gå til /etc/sysconfig/network-scripts/ sti, åbne NIC-interface-fil (normalt kaldes det første kort ifcfg-eno1677776 og er allerede konfigureret af Network Manager), og brug følgende uddrag som en vejledning, hvis dit
netværksgrænsefladen har ingen konfiguration.

IPV6INIT=no
IPV6_AUTOCONF=yes
BOOTPROTO=none
DEVICE=eno16777736
ONBOOT=yes
UUID=c3f0dc21-d2eb-48eb-aadf-10a520b13df0
TYPE=Ethernet
#DEFROUTE=no
IPV4_FAILURE_FATAL=no
IPV6_DEFROUTE=no
IPV6_FAILURE_FATAL=no
NAME="System eno16777736"
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
HWADDR=00:0C:29:E2:06:E9
                IPADDR=192.168.1.25
                NETMASK=255.255.255.0
                GATEWAY=192.168.1.1
                DNS1=192.168.1.1
                DNS2=8.8.8.8

De vigtigste indstillinger her, du skal tage i betragtning, er:

  1. BOOTPROTO - Indstillet til ingen eller statisk - for statisk IP-adresse.
  2. ONBOOT - Indstil til ja - for at åbne din grænseflade efter genstart.
  3. DEFROUTE - Erklæring kommenteret med en # eller helt fjernet - brug ikke standardrute (hvis du bruger den her, skal du tilføje "DEFROUTE: no" til alle netværksgrænseflader, ikke brugt som standard rute).

8. Hvis din infrastruktur har en DHCP-server, der automatisk tildeler IP-adresser, skal du bruge følgende uddrag til konfiguration af netværksgrænseflader.

IPV6INIT=no
IPV6_AUTOCONF=yes
BOOTPROTO=dhcp
DEVICE=eno16777736
ONBOOT=yes
UUID=c3f0dc21-d2eb-48eb-aadf-10a520b13df0
TYPE=Ethernet
##DEFROUTE=no
IPV4_FAILURE_FATAL=no
IPV6_DEFROUTE=no
IPV6_FAILURE_FATAL=no
NAME="System eno16777736"
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
HWADDR=00:0C:29:E2:06:E9

Samme som konfigurationen med statisk IP-adresse, sørg for, at BOOTPROTO er indstillet til dhcp , DEFROUTE -erklæringen kommenteres eller fjernes, og enheden er konfigureret til start automatisk ved opstart. Hvis du ikke bruger IPv6, skal du bare fjerne eller kommentere alle linjer, der indeholder IPV6.

9. For at anvende de nye konfigurationer til dine netværksgrænseflader skal du genstarte netværkstjenesten. Når du genstarter netværksdemonen, skal du bruge ifconfig
eller kommandoen ip addr show for at få dine interface-indstillinger og prøv at pinge et domænenavn for at se, om netværket fungerer.

# service network restart	## Use this command before systemctl
# chkconfig network on
# systemctl restart network
# ifconfig
# ping domain.tld

10. Som en endelig indstilling skal du sørge for at konfigurere et navn til system værtsnavn ved hjælp af værktøjet hostnamectl og gennemgå din konfiguration med kommandoen værtsnavn .

# hostnamectl set-hostname FQDN_system_name
# hostnamectl status
# hostname
# hostname -s   	## Short name
# hostname -f   	## FQDN name

11. Det er alt! Som en sidste test kør netstat kommando igen for at se, hvilke tjenester der kører på dit system.

# netstat -tulpn
# netstat -tulp

12. Hvis dit netværk udover SSH-server bruger DHCP til at trække dynamiske IP-konfigurationer, skal en DHCP-klient køre og være aktiv på UDP-porte.

# netstat -tulpn

13. Som et alternativ til hjælpeprogrammet netstat kan du output dine kørende netværksstik ved hjælp af kommandoen Sockets Statistics .

# ss -tulpn 

14. Genstart din server, og kør kommandoen systemd-analize for at bestemme systemets opstartstidsydelse, og brug også gratis og Disk
Gratis
kommando til visning af RAM- og HDD-statistik og top kommando for at se en top af de mest anvendte systemressourcer.

# free -h
# df -h
# top 

Tillykke! Nu har du et rent minimalt RHEL/CentOS 7-systemmiljø med færre installerede og kørende tjenester og flere ressourcer til rådighed til fremtidige konfigurationer.

Læs også : Stop og deaktiver uønskede tjenester fra Linux