Onemogućite i uklonite neželjene usluge na minimalnoj instalaciji RHEL/CentOS 7


RHEL/CentOS 7 minimalna instalacija za poslužitelje dolazi s nekim zadanim unaprijed instaliranim uslugama, kao što su Postfix Mail Transfer Agent demon, Avahi mdns demon (multicast Domain Name System) i servis Chrony koji je odgovoran za održavanje sata sustava.

Sada dolazi pitanje.. Zašto moramo onemogućiti sve te usluge. ako su unaprijed instalirani? Jedan od glavnih razloga bio bi povećanje razine sigurnosti sustava, drugi razlog je konačno odredište sustava, a treći su resursi sustava.

Zahtjevi

  1. Minimalna instalacija CentOS 7
  2. RHEL 7 Minimalna instalacija

Ako planirate koristiti svoj novoinstalirani RHEL/CentOS 7 za hosting, recimo, male web stranice koja radi na Apache ili Nginx, ili za pružanje mrežnih usluga kao što je DNS , DHCP, PXE boot, FTP poslužitelj itd. ili druge usluge koje ne zahtijevaju pokretanje Postifx MTA demona, Chrony ili Avahi demona, zašto bismo onda trebali držati sve te nepotrebne demone instalirane ili čak pokrenute na vašem poslužitelju.

Glavne vanjske usluge koje vaš poslužitelj doista zahtijeva za rad nakon što izvršite minimalnu instalaciju bile bi samo SSH demon, kako bi se omogućile daljinske prijave na sustav, i, u nekim slučajevima, NTP usluga, točno sinkronizirajte unutarnji sat vašeg poslužitelja s vanjskim NTP poslužiteljima.

Onemogući/ukloni usluge Postfix MTA, Avahi i Chrony

1. Nakon što instalacija završi, prijavite se na svoj poslužitelj s root računom ili korisnikom s root privilegijama i izvršite ažuriranje sustava kako biste bili sigurni da je vaš sustav spreman -datum sa svim paketima i sigurnosnim zakrpama.

yum upgrade

2. Sljedeći korak bio bi instaliranje nekih korisnih uslužnih programa sustava pomoću YUM Package Managera, kao što su net-tools (ovaj paket pruža starije
ali dobra ifconfig naredba), nano uređivač teksta, wget i curl za URL prijenose, lsof (za popis vaših otvorenih datoteka) i bash-completion, koji automatski dovršava upisane naredbe.

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

3. Sada možete početi onemogućavati i uklanjati unaprijed instalirane neželjene usluge. Prije svega dobijte popis svih svojih omogućenih i pokrenutih usluga pokretanjem naredbe netstat protiv TCP, UDP i mrežnih utičnica stanja slušanja.

netstat -tulpn  	## To output numerical service sockets

netstat -tulp      	## To output literal service sockets

4. Kao što vidite Postfix je pokrenut i sluša na lokalnom hostu na portu 25, Avahi demon se veže na sva mrežna sučelja i Chronyd usluga se veže na lokalni host i sva mrežna sučelja na različitim portovima. Nastavite s uklanjanjem usluge Postfix MTA izdavanjem sljedećih naredbi.

systemctl stop postfix
yum remove postfix

5. Zatim uklonite uslugu Chronyd, koja će biti zamijenjena NTP poslužiteljem, izdavanjem sljedećih naredbi.

systemctl stop chronyd
yum remove chrony

6. Sada je vrijeme za uklanjanje Avahi demona. Čini se da je u RHEL/CentOS 7 Avahi demon jako tijesan i ovisi o usluzi Network Manager. Izvođenje uklanjanja demona Avahi može ostaviti vaš sustav bez mrežnih veza.

Stoga, obratite posebnu pozornost na ovaj korak. Ako stvarno trebate automatsku konfiguraciju mreže koju nudi Network Manager ili trebate urediti svoja sučelja
putem nmtui uslužnog programa za mrežu i sučelje, tada biste trebali samo zaustaviti i onemogućiti Avahi daemon i ne vršiti nikakvo uklanjanje.

Ako i dalje želite potpuno ukloniti ovu uslugu, morate ručno urediti mrežne konfiguracijske datoteke koje se nalaze u /etc/sysconfig/network-scripts/ifcfg-interface_name, zatim pokrenuti i omogućiti mrežnu uslugu.

Izdajte sljedeće naredbe za uklanjanje Avahi mdns demona. Oprez: Ne pokušavajte ukloniti Avahi demona ako ste se povezali putem SSH-a.

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. Ovaj korak je potreban samo ako ste uklonili demon Avahi i vaše mrežne veze su se srušile te morate ponovo ručno konfigurirati karticu mrežnog sučelja.

Da uredite svoj NIC da koristi IPv6 i statičku IP adresu, idite na /etc/sysconfig/network-scripts/ put, otvorite datoteku NIC sučelja (obično se prva kartica zove ifcfg-eno1677776 i već ju je konfigurirao Upravitelj mreže) i koristite sljedeći odlomak kao vodič u slučaju da vaš
mrežno sučelje nema konfiguraciju.

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

Najvažnije postavke koje biste ovdje trebali uzeti u obzir su:

  1. BOOTPROTO – Postavite na ništa ili statički – za statičku IP adresu.
  2. ONBOOT – Postavite na yes – da biste prikazali svoje sučelje nakon ponovnog pokretanja.
  3. DEFROUTE – Izjava komentirana s # ili potpuno uklonjena – nemojte koristiti zadanu rutu (ako je koristite ovdje, trebali biste dodati "DEFROUTE: ne" svim mrežnim sučeljima, ne koristi se kao zadana ruta).

8. Ako vaša infrastruktura ima DHCP poslužitelj koji automatski dodjeljuje IP adrese, upotrijebite sljedeći izvadak za konfiguraciju mrežnih sučelja.

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

Isto kao i konfiguracija sa statičkom IP adresom, provjerite je li BOOTPROTO postavljen na dhcp, izjava DEFROUTE je komentirana ili uklonjena i uređaj je konfiguriran za automatski se pokreće pri dizanju. Ako ne koristite IPv6 samo uklonite ili komentirajte sve retke koji sadrže IPV6.

9. Kako biste primijenili nove konfiguracije za vaša mrežna sučelja, morate ponovno pokrenuti mrežnu uslugu. Nakon što ponovno pokrenete mrežni demon koristite ifconfig
ili naredbu ip addr show da dobijete postavke sučelja i pokušate pingati naziv domene da vidite radi li mreža.

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

10. Kao konačnu postavku provjerite jeste li postavili naziv za sustav hostname pomoću uslužnog programa hostnamectl i pregledajte svoju konfiguraciju s hostname naredba.

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

11. To je sve! Kao posljednji test ponovno pokrenite naredbu netstat da biste vidjeli koje se usluge izvode na vašem sustavu.

netstat -tulpn
netstat -tulp

12. Osim SSH poslužitelja, ako vaša mreža koristi DHCP za povlačenje dinamičkih IP konfiguracija, DHCP klijent bi trebao raditi i biti aktivan na UDP priključcima.

netstat -tulpn

13. Kao alternativu uslužnom programu netstat možete ispisati svoje mrežne utičnice koje rade uz pomoć naredbe Sockets Statistics.

ss -tulpn 

14. Ponovno pokrenite poslužitelj i pokrenite naredbu systemd-analize kako biste odredili izvedbu vremena podizanja sustava i također koristite free i Disk
Besplatna
naredba za prikaz statistike RAM-a i HDD-a i naredba top za pregled najkorištenijih resursa sustava.

free -h
df -h
top 

Čestitamo! Sada imate čisto minimalno RHEL/CentOS 7 okruženje sustava s manje instaliranih i pokrenutih servisa i više resursa dostupnih za buduće konfiguracije.

Pročitajte također: Zaustavite i onemogućite neželjene usluge iz Linuxa