Pradinė CentOS 7 serverio sąranka: istorinis kontrolinis sąrašas


Paskelbimo data:

Atnaujinta:


Techniniai straipsniai > Pradinė CentOS 7 serverio sąranka: istorinis kontrolinis sąrašas

2026 m. būsena ir saugus naudojimas

Išvada: nediekite CentOS Linux 7 naujoje gamybinėje aplinkoje: jos palaikymas baigėsi 2024 m. birželio 30 d. Palaikomoje RHEL šeimos sistemoje paketus tvarkykite su DNF, sukurkite vardines administratorių paskyras, nustatykite laiką bei hostname ir palikite įjungtus ugniasienę bei SELinux.

Ką išmoksite

  • Kokius pradinius nustatymus apėmė originalus CentOS 7 kontrolinis sąrašas.
  • Kaip gyvavimo ciklas, paketų valdymas, systemd, ugniasienė ir SELinux keičia 2026 m. sprendimą.
  • Kaip seną komandų seką naudoti migracijai suprasti, o ne kaip dabartinį saugios sąrankos standartą.

Kam tai skirta: administratoriams, paveldėjusiems CentOS 7 serverį arba perkeliantiems seną eksploatavimo instrukciją į palaikomą platformą.

2026 m. kontekstas: toliau pateiktos komandos išsaugotos kaip istorinė CentOS 7 medžiaga. Neišjunkite SELinux vien tam, kad programa pradėtų veikti: Red Hat rekomenduoja enforcing režimą, o permissive režimą – tik laikinai diagnostikai. Planuokite ir išbandykite migraciją, užuot pasikliovę archyvuotais paketais.

Saugos pastaba: pradiniame straipsnyje pateiktos komandos ir konfigūracijos pavyzdžiai nebuvo pakartotinai vykdomi dabartinėje gamybos aplinkoje. Prieš taikydami, patikrinkite palaikomas versijas, atsargines kopijas, prieigos valdiklius ir atšaukimo veiksmus atskiroje bandymo aplinkoje.

Pagrindiniai oficialūs šaltiniai

Apžvalga

Šiame istoriniame straipsnyje aprašyti pirmieji veiksmai įdiegus CentOS 7.6 (1810). Naujai sistemai rinkitės palaikomą distribuciją ir jos dabartinę dokumentaciją.

Turinys

  1. Pagrindiniai nustatymai
  2. Santrauka

1. Pagrindiniai nustatymai

Toliau pateikti originalaus CentOS 7 straipsnio pradinės sąrankos žingsniai ir paaiškinimai.

1-1. Operacinės sistemos tikrinimas

Pirmiausia patikrinkite įdiegtos operacinės sistemos leidimą.

[root@hostname ~]# cat /etc/redhat-release
CentOS Linux release 7.6.1810 (Core)

Pavyzdžio rezultatas yra „CentOS Linux release 7.6.1810 (Core)“. Palyginkite jį su planuota aplinka ir įvertinkite palaikymo būseną.

1-2. Administravimo įrankių diegimas

Minimalioje sistemoje kai kurių diagnostikos komandų gali nebūti. Originaliame pavyzdyje jų paketai įdiegiami su yum; palaikomoje RHEL šeimos sistemoje naudokite DNF ir diekite tik reikalingus įrankius.

Prieš didelį paketų atnaujinimą peržiūrėkite pakeitimus ir turėkite atkūrimo planą.

[root@hostname ~]# yum install -y net-tools
[root@hostname ~]# yum install -y wget
[root@hostname ~]# yum install -y tcpdump
[root@hostname ~]# yum install -y traceroute

net-tools: pateikia senesnius tinklo įrankius, įskaitant ifconfig; šiuolaikinėse sistemose dažniausiai naudojama ip komanda.

wget: atsisiunčia turinį HTTP, HTTPS ir kitais palaikomais protokolais.

tcpdump: fiksuoja ir analizuoja tinklo paketus; naudokite tik turėdami leidimą, nes duomenyse gali būti jautrios informacijos.

traceroute: parodo maršruto iki paskirties mazgo tarpinius šuolius, o ne vien paskirties IP adresą.

1-3. Istorinė SELinux išjungimo procedūra

Neišjunkite SELinux vien tam, kad apeitumėte leidimų klaidą. Tai pašalintų svarbų privalomosios prieigos kontrolės sluoksnį. Dabartinėje sistemoje nustatykite tinkamus failų kontekstus ir boolean reikšmes, o pakeitimus pirmiausia patikrinkite testinėje aplinkoje.

Toliau pateikta išjungimo procedūra palikta tik kaip istorinio CentOS 7 straipsnio dalis; ji nėra dabartinė saugumo rekomendacija.

[username@hostname ~]$ getenforce
Disabled

Istorinė procedūra tikrina, ar būsena yra „Disabled“, ir keičia konfigūraciją.

[username@hostname ~]$ vi /etc/selinux/config


config【Prieš pakeitimą】


SELINUX=enforcing


config【po pakeitimo】


SELINUX=disabled

Faile yra atskiros SELINUX ir SELINUXTYPE nuostatos. Originali procedūra keičia SELINUX, tačiau dabartinėje sistemoje pirmiausia taisykite kontekstus ar boolean reikšmes, užuot išjungę apsaugą.

Nuolatinė SELinux režimo nuostata įsigalioja po sistemos paleidimo iš naujo.

1-4. Administratoriaus paskyros sukūrimas

Kasdieniam administravimui sukurkite vardinę paskyrą ir privilegijas suteikite tik tada, kai jų reikia. Kitame žingsnyje išjungiamas tiesioginis root prisijungimas per SSH.

Nuolatinis darbas kaip root didina netyčinio sistemos pakeitimo ir paskyros kompromitavimo poveikį. Atskiros vardinės paskyros suteikia geresnę veiksmų atskaitomybę, o rolėmis ir sudo taisyklėmis galima įgyvendinti mažiausių teisių principą. Tas pats principas galioja ir asmeniniam serveriui.

Toliau pateikti originalūs paskyros sukūrimo veiksmai.

[root@hostname ~]# useradd xxxxxx
[root@hostname ~]# passwd xxxxxx

Pastaba: xxxxxxxx reiškia kuriamos paskyros vardą. Naudokite ilgą, unikalų slaptažodį arba organizacijos tapatybės valdymo priemonę.

1-5. Root slaptažodžio pakeitimas

Jei reikia, administratoriaus teisėmis pakeiskite root paskyros slaptažodį pagal organizacijos politiką.

[username@hostname ~]$ su -
[root@hostname ~]# passwd

Naudokite ilgą, unikalų ir atsitiktinį slaptažodį; tokios reikšmės kaip „root“, „password“ ar „1234“ yra lengvai atspėjamos. Vien aštuoni simboliai šiandien nėra pakankamas bendras kriterijus.

Net ir mažus viešai pasiekiamus serverius nuolat tikrina automatiniai prisijungimo bandymai. Ribokite SSH prieigą, naudokite raktus ar centralizuotą tapatybės valdymą ir stebėkite autentifikavimo žurnalus.

1-6. SSH prisijungimų apribojimas

Leiskite SSH prisijungti tik toms paskyroms, kurioms to reikia, ir išjunkite tiesioginį root prisijungimą. Root seansas pats savaime neišjungia visų apsaugų, tačiau jo kompromitavimo ar klaidos poveikis yra didžiausias.

Toliau pateikti originalūs veiksmai, kuriais sshd konfigūracijoje išjungiamas root prisijungimas ir nustatomas leidžiamų paskyrų sąrašas. Vietinis privilegijų pakėlimas su „su -“ nuo SSH prisijungimo draudimo nepriklauso.

[username@hostname ~]$ su -
[root@hostname ~]# vi /etc/ssh/sshd_config


sshd_config【Prieš pakeitimą】


#LoginGraceTime 2m
#PermitRootLogin yes
#StrictModes yes
#MaxAuthTries 6
#MaxSessions 10


sshd_config【po pakeitimo】


#LoginGraceTime 2m
PermitRootLogin no
AllowUsers xxxxxx
#StrictModes yes
#MaxAuthTries 6
#MaxSessions 10

Pastaba: xxxxxxxx yra ką tik pridėtas operacinis naudotojo vardas.


Neteisingas AllowUsers įrašas gali užblokuoti administratoriaus prieigą. Prieš užverdami esamą seansą patikrinkite sintaksę ir išbandykite naują prisijungimą per atskirą terminalą.

Patikrinkite sintaksę ir iš naujo paleiskite sshd.

[root@hostname ~]# /usr/sbin/sshd -t
[root@hostname ~]# systemctl restart sshd

Baigę patvirtinkite, kad tiesioginis root prisijungimas atmestas, o naujoji administratoriaus paskyra prisijungia ir gali saugiai pakelti privilegijas.


1-7. Laiko sinchronizavimas

Patikrinkite laiko sinchronizavimą. Netikslus serverio laikas apsunkina žurnalų koreliaciją, sertifikatų tikrinimą ir incidentų analizę.

CentOS 7 pavyzdyje naudojamas chronyd; senesniuose leidimuose galėjo būti ntpd. Patikrinkite, ar paslauga veikia ir ar sistema iš tiesų sinchronizuota su patikimu laiko šaltiniu.

[root@hostname ~]# ps aux | grep chronyd
chrony     567  0.0  1.3 117804 13664 ?        SL    5月04   0:04 /usr/sbin/chronyd
root     32489  0.0  0.0 112732   972 pts/1    S+   16:30   0:00 grep --color=auto chronyd
[root@hostname ~]# timedatectl
      Local time: diena (mėnesio) 2020-11-29 16:30:43 JST
  Universal time: diena (mėnesio) 2020-11-29 07:30:43 UTC
        RTC time: diena (mėnesio) 2020-11-29 07:30:43
       Time zone: Asia/Tokyo (JST, +0900)
     NTP enabled: yes
NTP synchronized: yes
 RTC in local TZ: no
      DST active: n/a

Vien vietinio laiko rodmens nepakanka: tikrinkite ir NTP sinchronizavimo būseną bei šaltinius.


1-8. SSH autentifikavimas raktu

Naujai administratoriaus paskyrai nustatykite autentifikavimą SSH raktu ir tik patikrinę veikimą išjunkite slaptažodinį SSH prisijungimą.

Raktai sumažina slaptažodžių spėjimo riziką, tačiau turi būti generuojami saugiu algoritmu, apsaugoti slaptafraze, laikomi patikimame įrenginyje ir atšaukiami praradus prieigą.

Toliau pateikta istorinė rakto sukūrimo serveryje ir privataus rakto perkėlimo procedūra. Dabartinėje praktikoje raktų porą geriau generuoti kliento įrenginyje ir į serverį kopijuoti tik viešąjį raktą.

[username@hostname ~]$ su - xxxxxx
[xxxxxx@hostname ~]$ ssh-keygen -t rsa -b 2048

Pastaba: xxxxxxxx yra papildomo operacinio naudotojo vardas.

Pastaba: originalus pavyzdys naudoja „ssh-keygen -t rsa -b 2048“ ir palieka tuščią rakto slaptafrazę. Dabartiniam interaktyviam administratoriaus raktui rinkitės organizacijos patvirtintą algoritmą ir naudokite slaptafrazę; rakto slaptafrazė nėra tas pats, kas serverio paskyros slaptažodis.


Tada patikrinkite, ar raktas sukurtas.

[xxxxxx@hostname ~]$ ll /home/xxxxxx/.ssh

Pastaba: xxxxxxxx yra papildomo operacinio naudotojo vardas.

Originalioje procedūroje privatusis raktas yra „id_rsa“, o viešasis – „id_rsa.pub“.

Viešasis raktas įrašomas į autorizuotų raktų failą, o privatusis raktas perkeliamas į kliento įrenginį. Saugiau privataus rakto serveryje apskritai nekurti.

[xxxxxx@hostname ~]$ mv /home/xxxxxx/.ssh/id_rsa.pub /home/xxxxxx/.ssh/authorized_keys
[xxxxxx@hostname ~]$ mv /home/xxxxxx/.ssh/id_rsa /home/xxxxxx/id_rsa

Pastaba: xxxxxxxx yra papildomo operacinio naudotojo vardas.

Jei sekate istorinį pavyzdį, saugiai pašalinkite privataus rakto failą id_rsa iš serverio, kai tik patikimai perkėlėte ir apsaugojote jį kliente.

Perkelkite /home/xxxxxxxxxx/id_rsa į vietinį. (Eikite į, pvz., WinSCP).

Po perkėlimo atlikite komandą ištrinti.

[xxxxxx@hostname ~]$ rm /home/xxxxxx/id_rsa

Pastaba: xxxxxxxx yra naudotojo vardas, pridėtas 3 veiksmu.

Prieš keisdami autentifikavimo politiką atskirame terminale patikrinkite prisijungimą naujuoju privačiuoju raktu.

Tik sėkmingai patikrinę raktą išjunkite slaptažodinį SSH autentifikavimą ir turėkite atkūrimo prieigą per paslaugų teikėjo konsolę.

[username@hostname ~]$ su -
[root@hostname ~]# vi /etc/ssh/sshd_config


sshd_config【Prieš pakeitimą】


PasswordAuthentication yes


sshd_config【po pakeitimo】


PasswordAuthentication no

Patikrinkite sintaksę ir iš naujo paleiskite sshd.

[root@hostname ~]# /usr/sbin/sshd -t
[root@hostname ~]# systemctl restart sshd

Po sshd konfigūracijos patikros ir perkrovimo dar kartą patvirtinkite prisijungimą raktu.


2. Santrauka

Originalus kontrolinis sąrašas apima sistemos versijos, paketų, SELinux, administratoriaus paskyros, SSH ir laiko sinchronizavimo nustatymus.

CentOS 7 nebepalaikoma, todėl šias komandas naudokite tik senai aplinkai suprasti ir migracijai planuoti. Naują serverį kurkite palaikomoje sistemoje pagal jos saugos rekomendacijas.