Počáteční konfigurace vyžadovaná při instalaci systému CentOS.


Datum vydání:8. prosince 2020.



INFOMARTION > Počáteční konfigurace vyžadovaná při instalaci systému CentOS.

Přehled.

Tato část popisuje první nezbytná nastavení po instalaci systému CentOS. Je sestaven pomocí systému CentOS 7.6 (1810).

Obsah

  1. základní nastavení
  2. shrnutí

1. základní nastavení

Tato část popisuje základní nastavení vyžadovaná bezprostředně po instalaci systému CentOS.

1-1. Kontrola operačního systému

Nejprve zkontrolujte, zda máte nainstalovaný správný operační systém.

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

Nainstalovaným operačním systémem je 'CentOS Linux release 7.6.1810 (Core)'. Zkontrolujte, zda je správná.

1-2. Instalace nástroje

Bezprostředně po instalaci nelze spustit základní příkazy, jako je ifconfig. Instalace se proto provádí tak, aby bylo možné provádět základní síťové a jiné příkazy pomocí příkazů yum.

Pokud je to nutné, proveďte to, protože je možné modernizovat to, co již bylo nainstalováno, pomocí '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・・・Po instalaci lze použít příkaz ifconifg a další.

wget・・・Doslova, ale lze použít příkaz wget. Stručně řečeno, tento příkaz odešle požadavek http.

tcpdump・・・Doslova, ale lze použít příkaz tcpdump. Stručně řečeno, může sledovat požadavky odeslané na server.

traceroute・・・Doslova, ale lze použít příkaz traceroute. Stručně zobrazuje trasu cílové IP adresy.

1-3. Zakázání selinuxu

Vypněte selinux, protože je povolen a může se chovat neočekávaně.

Začněme tím, že selinux je nastavení související se zabezpečením. Pokud jste schopni ji používat, můžete ji povolit, ale pokud je to obtížné, zakažte ji. Vypnutí selinuxu nemusí nutně ohrozit zabezpečení.Je pravděpodobnější, že způsobí problémy, pokud je povolen, i když já osobně mu příliš nerozumím. Jednoduché vysvětlení je, že selinux je bezpečnostní opatření po narušení serveru (nakonfigurovaný tak, aby minimalizoval škody v případě narušení), takže je spíše důležitější přijmout bezpečnostní opatření, aby se zabránilo narušení serveru.

Níže jsou uvedeny kroky pro deaktivaci.

[username@hostname ~]$ getenforce
Disabled

Pokud není nastavena na hodnotu "Disabled", lze ji změnit následujícím postupem.

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


config【Před změnou】


SELINUX=enforcing


config【po změně】


SELINUX=disabled

'SELINUX' a 'SELINUXTYPE', ale je třeba změnit právě 'SELINUX'. Všimněte si, že pokud omylem změníte "SELINUXTYPE", server se nespustí.

Restartujte server a konfigurace se projeví.

1-4. další provozní uživatel

Přihlašování a práce jako uživatel root je nebezpečná, proto přidejte uživatele, který se bude přihlašovat. V dalším kroku zakažte přihlášení uživatele root.

Riziko práce jako přihlášený uživatel root spočívá v tom, že si můžete dělat, co chcete. Riziko, že můžete dělat cokoli, spočívá v tom, že můžete omylem změnit nebo odstranit důležité změny týkající se operačního systému. Pokud server používáte pro osobní potřebu, jako je hobby nebo studium, a neděláte takové běžné chyby, osobně nevidím žádný problém v přihlašování jako uživatel root. Důvodem číslo jedna, proč není povoleno přihlášení uživatele root, je oddělení pravomocí. Tým pro vývoj aplikací používá uživatele, kteří se adresáře dotýkají pouze pro vývoj aplikací. Tým pro vývoj dávek používá uživatele, kteří se dotýkají pouze adresáře pro vývoj dávek. Je lepší oddělit uživatele tak, aby se potřebné týmy mohly dotýkat potřebných adresářů, např.

Níže jsou uvedeny kroky pro přidání uživatelů.

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

※xxxxxxxx je jméno uživatele, který má být přidán. Nastavte libovolné heslo.

1-5. Změna hesla uživatele root

Pokud nejste uživatelem root, přepněte se na něj pomocí su - a spusťte následující příkaz.

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

※Nastavte libovolné heslo.

Nikdy neopouštějte počáteční heslo. Heslo "root" je nejhorší. Hesla "password" a "1234" jsou také poměrně nebezpečná. Vhodné je minimálně osm číslic včetně alfanumerických symbolů.

Toto nastavení hesla je poměrně důležité z hlediska bezpečnostních opatření a mělo by být nastaveno s maximální péčí. Změna hesla uživatele root je poměrně jednoduchá, ale mějte na paměti, že jsme slyšeli mnoho příběhů o bezpečnostních incidentech způsobených touto změnou. Nepředpokládejte, že na váš server nikdo nezaútočí, protože je malý. Útočník přistupuje k náhodnému serveru s uživatelským jménem "root" a heslem "root".

1-6. Konfigurace pro zákaz přihlašování nepracujících uživatelů (zakazuje přihlašování uživatele root a dalších uživatelů).

Omezit počet uživatelů, kteří se mohou přihlásit. Zejména uživatelům s oprávněním root by nemělo být povoleno přihlášení. Pokud jste přihlášeni jako root, rovná se to zakázání všech bezpečnostních opatření.

Níže jsou uvedeny kroky pro zakázání přihlášení uživatele root a přidání uživatelů, kteří se mohou přihlásit. Přepněte se na uživatele root a změňte konfigurační soubor. (Je možné přepnout se na uživatele root pomocí 'su-', jen se nelze přihlásit.)

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


sshd_config【Před změnou】


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


sshd_config【po změně】


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

※xxxxxxxx je operační uživatelské jméno, které jste právě přidali.


Zde je třeba upozornit na to, že pokud je název AllowUsers špatný, nikdo se nebude moci přihlásit, proto pečlivě zkontrolujte názvy uživatelů.

Zkontrolujte syntaxi a restartujte sshd.

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

Po odhlášení a potvrzení, že se nemůžete přihlásit jako root a že se můžete přihlásit jako přidaný provozní uživatel, jste hotovi.


1-7. synchronizace času

Zkontrolujte, zda je čas synchronizován. Někdy není synchronizován čas serveru, takže datum a čas výstupu protokolu se zobrazí v jiném čase, než se očekává, a analýza problému trvá dlouho.

Zkontrolujte spuštění procesu synchronizace času (chronyd). Zkontrolujte stav synchronizace času. Všimněte si, že CentOS7 používá 'chronyd', ale starší verze 'ntpd', takže pokud používáte verzi 6 nebo starší, buďte opatrní.

[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: den (měsíce) 2020-11-29 16:30:43 JST
  Universal time: den (měsíce) 2020-11-29 07:30:43 UTC
        RTC time: den (měsíce) 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

Je v pořádku, pokud "Místní čas" odpovídá aktuálnímu času, "NTP povolen" je ano a "NTP synchronizován" je ano.


1-8. Nastavení ověřování klíčů

Právě přidaným provozním uživatelům povolte přihlašování pouze pomocí ověřování klíčem.

Jednoduché vypnutí ověřování heslem výrazně zvyšuje zabezpečení. V případě ověřování heslem platí, že pokud použijete složité heslo, v podstatě nebudete přihlášeni, ale tato možnost není nulová. V případě ověřování pomocí klíče se však můžete přihlásit pouze tehdy, pokud klíč vůbec máte, takže pokud svůj klíč správně spravujete, nebudete přihlášeni.

Níže je uveden postup pro nastavení ověřování klíčů.

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

※xxxxxxxx je jméno dalšího provozního uživatele.

※Po provedení příkazu "ssh-keygen -t rsa -b 2048" budete vyzváni k odpovědi, zadejte všechny výchozí hodnoty a stiskněte "Enter". Nastavení i bez hesla. (Zadání hesla poskytuje dodatečné zabezpečení jako ověření klíčem plus ověření heslem, ale v tomto případě se žádné heslo nepředpokládá.)


Poté zkontrolujte, zda byl klíč vytvořen.

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

※xxxxxxxx je jméno dalšího provozního uživatele.

Zkontrolujte, zda je uložen soukromý klíč "id_rsa" veřejný klíč "id_rsa.pub".

Přejmenujte veřejný klíč a přesuňte adresář pro stažení soukromého klíče.

[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 je jméno dalšího provozního uživatele.

Odstranění soukromého klíče (id_rsa) ze serveru po jeho místním přesunu.

Přesun /home/xxxxxxxx/id_rsa do local. (Přejděte např. na WinSCP).

Po přesunu proveďte příkaz delete.

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

※xxxxxxxx je uživatelské jméno přidané v kroku (3).

Tím je nastavení ověřování klíčů dokončeno. Zkontrolujte, zda se můžete přihlásit pomocí vytvořeného soukromého klíče.

Po potvrzení, že se můžete přihlásit, je posledním krokem změna nastavení tak, aby se nebylo možné přihlásit pomocí ověření hesla.

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


sshd_config【Před změnou】


PasswordAuthentication yes


sshd_config【po změně】


PasswordAuthentication no

Zkontrolujte syntaxi a restartujte sshd.

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

Tím je nastavení ověřování klíčů dokončeno.


2. shrnutí

Popsali jsme počáteční konfiguraci vyžadovanou při instalaci systému CentOS.

Informace v tomto článku představují minimum, které by mělo být implementováno při instalaci systému CentOS, takže pokud máte po přečtení tohoto článku pocit, že existují nedostatky, zkuste je nastavit.

Děkujeme, že jste se dívali až do konce.




■INFORMATION

Kliknutím sem přejdete na horní stránku s informacemi.


■PROFILE

Kliknutím sem získáte profil.


■Kontaktní údaje.

V případě dotazů k článku nás prosím kontaktujte zde.