Įdiegus "CentOS" reikalinga pradinė konfigūracija.


Paskelbimo data:2020 m. gruodžio 8 d.



INFOMARTION > Įdiegus "CentOS" reikalinga pradinė konfigūracija.

Apžvalga.

Šiame skyriuje aprašomi pirmieji būtini nustatymai įdiegus "CentOS". Jis sukurtas naudojant "CentOS 7.6" (1810).

Turinys

  1. pagrindinis nustatymas
  2. santrauka

1. pagrindinis nustatymas

Šiame skyriuje aprašomi pagrindiniai nustatymai, reikalingi iš karto įdiegus "CentOS".

1-1. Operacinės sistemos tikrinimas

Pirmiausia patikrinkite, ar įdiegta tinkama operacinė sistema.

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

Įdiegta operacinė sistema yra "CentOS Linux release 7.6.1810 (Core)". Patikrinkite, ar jis teisingas.

1-2. Įrankio diegimas

Iš karto po įdiegimo negalima vykdyti pagrindinių komandų, pvz., ifconfig. Todėl diegimas atliekamas taip, kad pagrindines tinklo ir kitas komandas būtų galima vykdyti yum komandomis.

Jei reikia, atlikite tai, nes tai, kas jau įdiegta, galima atnaujinti naudojant "yum -y update".

[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・・・Įdiegus galima naudoti komandą ifconifg ir kitas.

wget・・・Pažodžiui, bet galima naudoti wget komandą. Trumpai tariant, šia komanda siunčiama http užklausa.

tcpdump・・・Pažodžiui, bet galima naudoti komandą tcpdump. Trumpai tariant, jis gali stebėti į serverį siunčiamas užklausas.

traceroute・・・Pažodžiui, bet galima naudoti ir "traceroute" komandą. Trumpai tariant, rodomas paskirties IP adresas.

1-3. "selinux" išjungimas

Išjunkite "selinux", nes ji įjungta ir gali elgtis netikėtai.

Pirmiausia, "selinux" yra su saugumu susijusi aplinka. Jei galite ja naudotis, galite ją įjungti, o jei sunku, išjunkite ją. Išjungus "selinux", saugumas nebūtinai tampa pažeidžiamas.Labiau tikėtina, kad ji sukels problemų, jei bus įjungta, nors aš asmeniškai jos gerai nesuprantu. Paprasta paaiškinti, kad "selinux" yra saugumo priemonė po to, kai į serverį buvo įsilaužta (sukonfigūruota siekiant sumažinti žalą įsilaužimo atveju), todėl daug svarbiau imtis saugumo priemonių, kad į serverį nebūtų įsilaužta.

Toliau pateikiami deaktyvavimo veiksmai.

[username@hostname ~]$ getenforce
Disabled

Jei ji nėra "Disabled" (išjungta), ją galima pakeisti atlikus šią procedūrą.

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


config【Prieš pakeitimą】


SELINUX=enforcing


config【po pakeitimo】


SELINUX=disabled

"SELINUX" ir "SELINUXTYPE", tačiau reikia pakeisti būtent "SELINUX". Atkreipkite dėmesį, kad jei per klaidą pakeisite "SELINUXTYPE", serveris neįsijungs.

Iš naujo paleiskite serverį ir konfigūracija įsigalios.

1-4. papildomas operatyvinis naudotojas

Prisijungti ir dirbti kaip root naudotojas yra pavojinga, todėl pridėkite naudotoją, kuris galėtų prisijungti. Kitame žingsnyje uždrauskite root naudotojo prisijungimą.

Dirbdami prisijungę kaip root naudotojas rizikuojate tuo, kad galite daryti viską, ką norite. Galimybė atlikti bet kokius veiksmus kelia riziką, kad netyčia galite pakeisti arba ištrinti svarbius su operacine sistema susijusius pakeitimus. Jei serverį naudojate asmeniniais tikslais, pavyzdžiui, hobiui ar studijoms, ir nedarote tokių įprastų klaidų, aš asmeniškai nematau jokios problemos prisijungti kaip root vartotojas. Pagrindinė priežastis, dėl kurios neleidžiama prisijungti pagrindiniam naudotojui, yra įgaliojimų atskyrimas. Programėlių kūrimo komanda naudojasi naudotojais, kurie prie katalogo prisiliečia tik kurdami programėles. Partijos kūrimo komanda naudoja naudotojus, kurie liečiasi tik prie partijos kūrimo katalogo. Geriau atskirti naudotojus, kad reikiamos komandos galėtų prisiliesti prie reikiamų katalogų, pvz.

Toliau pateikiami naudotojų pridėjimo veiksmai.

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

※xxxxxxxx - pridedamo naudotojo vardas. Nustatykite bet kokį slaptažodį.

1-5. Pakeiskite root naudotojo slaptažodį

Jei nesate root naudotojas, persijunkite į root naudotoją naudodami su - ir atlikite šią komandą

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

※Nustatykite bet kokį slaptažodį.

Niekada neatsisakykite pradinio slaptažodžio. Slaptažodis "root" yra pats blogiausias. Slaptažodžiai "password" ir "1234" taip pat yra gana pavojingi. Gerai, kad būtų ne mažiau kaip aštuoni skaitmenys, įskaitant raidinius-skaitmeninius simbolius.

Šis slaptažodžio nustatymas yra gana svarbus saugumo priemonėms ir turėtų būti nustatomas labai atsargiai. Pakeisti šakninio naudotojo slaptažodį yra gana paprasta, tačiau žinokite, kad esame girdėję daug istorijų apie dėl to kilusius saugumo incidentus. Nemanykite, kad niekas nepuls jūsų serverio, nes jis yra nedidelis. Užpuolikas prisijungia prie atsitiktinio serverio naudodamasis vartotojo vardu "root" ir slaptažodžiu "root".

1-6. Konfigūracija, draudžianti prisijungimus neaktyviems naudotojams (draudžia prisijungimus root naudotojui ir kitiems naudotojams).

Apribokite naudotojų, galinčių prisijungti, skaičių. Visų pirma neturėtų būti leidžiama prisijungti "root" naudotojams. Jei esate prisijungę kaip root, tai reiškia, kad visos saugumo priemonės yra išjungtos.

Toliau pateikiami veiksmai, kaip išjungti root naudotojo prisijungimą ir pridėti naudotojus, kurie gali prisijungti. Persijunkite į root naudotoją ir pakeiskite konfigūracijos failą. (Naudojant 'su-' galima persijungti į root naudotoją, tik negalima prisijungti.)

[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

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


Reikėtų atkreipti dėmesį į tai, kad jei AllowUsers vardas yra neteisingas, niekas negalės prisijungti, todėl atidžiai patikrinkite naudotojų vardus.

Patikrinkite sintaksę ir iš naujo paleiskite sshd.

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

Atsijungę ir patvirtinę, kad negalite prisijungti kaip root ir kad galite prisijungti kaip pridėtas operacinis naudotojas, baigsite.


1-7. laiko sinchronizavimas

Patikrinkite, ar laikas sinchronizuotas. Kartais serverio laikas nesinchronizuojamas, todėl žurnalo išvesties data ir laikas išvedami kitu laiku, nei tikėtasi, ir problemos analizė užtrunka ilgai.

Patikrinkite, ar paleistas laiko sinchronizavimo procesas (chronyd). Patikrinkite laiko sinchronizavimo būseną. Atkreipkite dėmesį, kad "CentOS7" yra "chronyd", o ankstesnėse sistemose - "ntpd", todėl būkite atsargūs, jei naudojate 6 ar ankstesnes sistemas.

[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

Gerai, jei "Vietinis laikas" sutampa su dabartiniu laiku, "NTP įjungta" yra taip, o "NTP sinchronizuota" yra taip.


1-8. Rakto autentiškumo nustatymo nustatymai

Ką tik pridėtiems operatyviniams naudotojams leiskite prisijungti tik naudojant autentifikavimo raktą.

Tiesiog išjungus autentifikavimą slaptažodžiu gerokai padidėja saugumas. Jei naudojate sudėtingą slaptažodį, iš esmės neprisijungsite, tačiau tikimybė nėra lygi nuliui procentų. Tačiau autentifikavimo raktu atveju galite prisijungti tik tuo atveju, jei iš pradžių turite raktą, taigi, kol tinkamai valdysite raktą, nebūsite prisijungę.

Toliau pateikiama rakto autentiškumo nustatymo procedūra.

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

※xxxxxxxx yra papildomo operacinio naudotojo vardas.

※Įvykdžius komandą "ssh-keygen -t rsa -b 2048", bus paprašyta atsakymo, visų numatytųjų reikšmių ir paspauskite "Enter". Nustatykite ir be slaptažodžio. (Įvedus slaptažodį užtikrinamas papildomas saugumas, nes autentiškumo patvirtinimas raktu ir slaptažodžiu, tačiau šiuo atveju slaptažodis neįvedamas.)


Tada patikrinkite, ar raktas sukurtas.

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

※xxxxxxxx yra papildomo operacinio naudotojo vardas.

Patikrinkite, ar saugomas privatus raktas "id_rsa" viešasis raktas "id_rsa.pub".

Pervardykite viešąjį raktą ir perkelkite katalogą, iš kurio atsisiųsite privatųjį raktą.

[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

※xxxxxxxx yra papildomo operacinio naudotojo vardas.

Ištrinkite privatųjį raktą (id_rsa) iš serverio po to, kai jį perkelsite vietoje.

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

Po perkėlimo atlikite komandą ištrinti.

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

※xxxxxxxx yra naudotojo vardas, pridėtas 3 veiksmu.

Taip užbaigiama rakto autentiškumo nustatymo sąranka. Patikrinkite, ar galite prisijungti naudodami sukurtą privatųjį raktą.

Gavę patvirtinimą, kad galite prisijungti, paskutinis žingsnis - pakeisti nustatymus taip, kad negalėtumėte prisijungti naudodami slaptažodžio patvirtinimą.

[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

Taip užbaigiama rakto autentiškumo nustatymo sąranka.


2. santrauka

Aprašėme pradinę konfigūraciją, kurios reikia įdiegus "CentOS".

Šiame straipsnyje pateikta informacija yra minimali, kurią reikėtų įdiegti diegiant "CentOS", todėl, jei perskaitę šį straipsnį manote, kad yra trūkumų, pabandykite juos nustatyti.

Dėkojame, kad žiūrėjote iki pabaigos.