Wyszukiwanie w witrynie

Początkowa konfiguracja i konfiguracja serwera w systemie CentOS 7


W tym samouczku wyjaśnione zostaną pierwsze podstawowe kroki, które należy wykonać po zainstalowaniu minimalnego systemu CentOS 7 bez środowiska graficznego, aby uzyskać informacje o zainstalowanym systemie i sprzęcie, na którym działa system i skonfiguruj inne specyficzne zadania systemowe, takie jak praca w sieci, uprawnienia roota, oprogramowanie, usługi i inne.

Wymagania

  1. Minimalna instalacja CentOS 7

Ważne: użytkownicy RHEL 7 mogą skorzystać z tego artykułu, aby przeprowadzić wstępną konfigurację serwera w RHEL 7.

Zaktualizuj system CentOS 7

Pierwszym krokiem, który należy wykonać na świeżo zainstalowanym systemie CentOS, jest upewnienie się, że system jest na bieżąco z najnowszymi poprawkami jądra i zabezpieczeń systemu, repozytoriami oprogramowania i pakietami.

Aby w pełni zaktualizować system CentOS 7, wydaj następujące polecenia z uprawnieniami roota.


yum check-update
yum upgrade

Po zakończeniu procesu aktualizacji, aby zwolnić miejsce na dysku, możesz usunąć wszystkie pobrane pakiety, które zostały użyte w procesie aktualizacji, wraz ze wszystkimi informacjami o buforowanych repozytoriach, wykonując następujące polecenie.


yum clean all

Zainstaluj Narzędzia systemowe w CentOS 7

Następujące pakiety narzędzi mogą okazać się przydatne w codziennej administracji systemem: nano (edytor tekstu zastępujący edytor vi), wget, curl (narzędzia służące do pobierania pakiety głównie przez sieć) net-tools, lsof (narzędzia do zarządzania siecią lokalną) i bash-completion (autouzupełnianie wiersza poleceń).

Zainstaluj je wszystkie za jednym razem, wykonując poniższe polecenie.


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

Skonfiguruj sieć w CentOS 7

CentOS 7 posiada szeroką gamę narzędzi, których można używać do konfigurowania sieci i zarządzania nią, od ręcznej edycji pliku konfiguracyjnego sieci po używanie poleceń takich jak ip, ifconfig, nmtui, nmcli lub trasa.

Najłatwiejszym narzędziem, którego może użyć początkujący do zarządzania konfiguracją sieci i zmiany jej konfiguracji, jest graficzny wiersz poleceń nmtui.

Aby zmienić nazwę hosta systemu za pomocą narzędzia nmtui, wykonaj polecenie nmtui-hostname, ustaw nazwę hosta swojego komputera i naciśnij OK, aby zakończyć, jak pokazano na poniższym zrzucie ekranu.


nmtui-hostname

Aby manipulować interfejsem sieciowym, wykonaj polecenie nmtui-edit, wybierz interfejs, który chcesz edytować i wybierz edytuj z prawego menu, jak pokazano na zrzucie ekranu poniżej.


nmtui-edit

Po wejściu do interfejsu graficznego narzędzia nmtui możesz skonfigurować ustawienia IP interfejsu sieciowego, jak pokazano na poniższym zrzucie ekranu. Po zakończeniu przejdź do OK za pomocą klawisza [tab], aby zapisać konfigurację i wyjść.

Aby zastosować nową konfigurację interfejsu sieciowego, wykonaj polecenie nmtui-connect, wybierz interfejs, którym chcesz zarządzać i kliknij opcję Dezaktywuj/Aktywuj, aby wyłączyć i uruchomić interfejs z ustawieniami IP, jak pokazano na poniższych zrzutach ekranu.


nmtui-connect

Aby wyświetlić ustawienia interfejsu sieciowego, możesz sprawdzić zawartość pliku interfejsu lub wydać poniższe polecenia.


ifconfig enp0s3
ip a
ping -c2 google.com

Inne przydatne narzędzia, których można używać do zarządzania szybkością, stanem łącza lub uzyskiwania informacji o interfejsach sieciowych maszyny, to ethtool i mii-tool.


ethtool enp0s3
mii-tool enp0s3

Ważnym aspektem tworzenia sieci maszyn jest sporządzenie listy wszystkich otwartych gniazd sieciowych, aby zobaczyć, jakie programy nasłuchują na jakich portach i jaki jest stan nawiązanych połączeń sieciowych.

Aby wyświetlić listę wszystkich serwerów, które otworzyły gniazda TCP lub UDP w stanie nasłuchiwania, wydaj następujące polecenia. Jednak serwer UDP nie wyświetli żadnego stanu gniazda, ponieważ UDP jest protokołem bezpołączeniowym, który tylko wysyła pakiety przez sieć i nie ustanawia połączeń.


netstat -tulpn
ss -tulpn
lsof -i4 -6

Zarządzaj usługami w CentOS 7

CentOS 7 zarządza demonami lub usługami za pomocą narzędzia systemctl. Aby wyświetlić stan wszystkich usług, wydaj następujące polecenie.


systemctl list-units

Aby sprawdzić, czy demon lub usługa jest włączona do automatycznego uruchamiania podczas uruchamiania systemu, wydaj następujące polecenie.


systemctl list-unit-files -t service

Aby wyświetlić listę starych usług SysV obecnych w systemie i wyłączyć je, wydaj następujące polecenia chkconfig.


chkconfig --list
chkconfig service_name off

5. Wyłącz niechciane usługi w CentOS 7

Zaleca się, aby po zainstalowaniu CentOS 7 wyświetlić listę usług uruchomionych w systemie, uruchamiając powyższe polecenia oraz wyłączyć je i usunąć w celu ograniczenia wektorów ataków na system.

Na przykład demon Postfix jest domyślnie zainstalowany i włączony w CentOS 7. Jeśli Twój system nie wymaga uruchomienia serwera pocztowego, najlepiej zatrzymać, wyłączyć i usunąć usługę Postfix, wydając poniższe polecenia .


systemctl stop postfix
systemctl disable postfix
yum remove postfix

Oprócz poleceń netstat, ss, lsof lub systemctl możesz także uruchamiać polecenia ps, top lub pstree, aby wykryć i zidentyfikować, jakie niechciane usługi działają w Twoim systemie i wyłącz je lub usuń.

Domyślnie narzędzie pstree nie jest zainstalowane w CentOS 7. Aby je zainstalować, wykonaj następujące polecenie.


yum install psmisc
pstree -p

Włącz zaporę sieciową w CentOs 7

Firewalld to główne narzędzie zapory sieciowej, które wykorzystuje interakcję z w celu zarządzania regułami iptables.
Aby włączyć, uruchomić i zweryfikować zaporę sieciową w CentOS 7, wykonaj następujące polecenia.


systemctl enable firewalld
systemctl start firewalld
systemctl status firewalld

Aby otworzyć konkretną usługę dla połączeń przychodzących, najpierw sprawdź, czy aplikacja jest już obecna w regułach zapory sieciowej, a następnie dodaj regułę dla usługi, jak pokazano w poniższym przykładzie, który pozwala >SSH połączenia przychodzące. Użyj przełącznika --permanent, aby dodać regułę na stałe.


firewall-cmd --add-service=[tab]  #List services
firewall-cmd --add-service=ssh
firewall-cmd --add-service=ssh --permanent

Jeżeli usługa jest już zdefiniowana w regułach zapory sieciowej, możesz ręcznie dodać port usługi, jak pokazano w poniższym przykładzie.


firewall-cmd --add-port=22/tcp --permanent
firewall-cmd --reload     #Apply the rule on-fly

Włącz uprawnienia Sudo na kontach użytkowników

Aby nadać uprawnienia root zwykłemu użytkownikowi, najpierw utwórz użytkownika wydając polecenie adduser, ustaw hasło dla użytkownika i nadaj mu uprawnienia root, wykonując poniższe polecenie, które dodaje nowego użytkownika do grupy koła administracyjnego.


adduser tecmint
passwd tecmint
usermod -aG wheel tecmint

Aby sprawdzić, czy nowy użytkownik ma uprawnienia roota, zaloguj się do systemu przy użyciu poświadczeń użytkownika i uruchom polecenie yum z uprawnieniami sudo, jak pokazano w poniższym fragmencie.


su - tecmint
sudo yum update

Skonfiguruj uwierzytelnianie klucza publicznego SSH w CentOS 7

Aby zabezpieczyć SSH serwer i skonfigurować uwierzytelnianie za pomocą klucza publicznego w celu zwiększenia bezpieczeństwa serwera za pomocą prywatnego klucza SSH do logowania, najpierw wygeneruj parę kluczy SSH za pomocą następującego polecenia.

Nie wpisuj hasła, jeśli chcesz zautomatyzować zarządzanie serwerem przez SSH.


ssh-keygen -t RSA

Po wygenerowaniu par kluczy SSH skopiuj klucz na serwer, z którym chcesz się połączyć, wydając poniższe polecenie. Początkowo wprowadź hasło zdalnego użytkownika SSH, aby skopiować klucz publiczny.


ssh-copy-id remote_user@SSH_SERVER_IP

Po skopiowaniu klucza publicznego SSH na serwer zdalny zaloguj się do zdalnego serwera SSH za pomocą następującego polecenia.


ssh remote_user@SSH_SERVER_IP

Na koniec, aby zabezpieczyć serwer SSH, upewnij się, że nie zezwalasz na zdalny dostęp SSH do konta root, otwierając plik konfiguracyjny SSH /etc/ssh/sshd_config w edytorze tekstu jako root i zmień go z Tak do Nie.


PermitRootLogin no

Aby zastosować ustawienie należy zrestartować usługę SSH tak, aby korzystała z nowej konfiguracji.


systemctl restart sshd

To wszystko! To tylko kilka podstawowych ustawień i poleceń, które każdy administrator systemu musi znać i stosować na świeżo zainstalowanym systemie CentOS lub w celu wykonywania codziennych zadań w systemie.

Aby zabezpieczyć i wzmocnić serwer CentOS 7, zapoznaj się z poniższymi artykułami.

  1. Mega przewodnik po wzmocnieniu i zabezpieczeniu CentOS 7 – część 1
  2. Mega przewodnik po wzmocnieniu i zabezpieczeniu CentOS 7 – część 2

Jeśli planujesz wdrażać strony internetowe w tym systemie CentOS 7, dowiedz się, jak skonfigurować i skonfigurować stos LAMP lub stos LEMP.