Initiële configuratie vereist wanneer CentOS is geïnstalleerd.


Datum van publicatie:8 december 2020.



INFOMARTION > Initiële configuratie vereist wanneer CentOS is geïnstalleerd.

Overzicht.

Deze sectie beschrijft de eerste noodzakelijke instellingen na de installatie van CentOS. Het is gebouwd met CentOS 7.6 (1810).

Inhoudsopgave

  1. basisinstelling
  2. samenvatting

1. basisinstelling

Deze sectie beschrijft de basisinstellingen die direct na de installatie van CentOS vereist zijn.

1-1. Controleren van het besturingssysteem

Controleer eerst of u het juiste besturingssysteem hebt geïnstalleerd.

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

CentOS Linux release 7.6.1810 (Core)" is het geïnstalleerde besturingssysteem. Controleer of het correct is.

1-2. Het gereedschap installeren

Onmiddellijk na de installatie kunnen basiscommando's zoals ifconfig niet worden uitgevoerd. Daarom wordt de installatie zo uitgevoerd dat basis netwerk- en andere commando's door yum commando's kunnen worden uitgevoerd.

Voer dit uit indien nodig, want het is mogelijk om wat al geïnstalleerd is te moderniseren met '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・・・Het commando ifconifg en andere kunnen na de installatie worden gebruikt.

wget・・・Letterlijk, maar het wget commando kan gebruikt worden. In het kort, dit commando stuurt een http verzoek.

tcpdump・・・Letterlijk, maar het tcpdump commando kan gebruikt worden. In het kort, het kan verzoeken controleren die naar de server worden gestuurd.

traceroute・・・Letterlijk, maar het traceroute commando kan gebruikt worden. In het kort, het toont de route van het bestemmings IP.

1-3. Uitschakelen van selinux

Schakel selinux uit omdat het is ingeschakeld en zich onverwacht kan gedragen.

Om te beginnen is selinux een beveiligingsinstelling. Als u in staat bent het te gebruiken, kunt u het inschakelen, maar als het moeilijk is, schakel het dan uit. Het uitschakelen van selinux maakt de beveiliging niet noodzakelijk kwetsbaar.Het is waarschijnlijker dat het problemen veroorzaakt als het is ingeschakeld, ook al begrijp ik het persoonlijk niet goed. De eenvoudige verklaring is dat selinux een veiligheidsmaatregel is nadat de server is geschonden (geconfigureerd om de schade bij een schending te minimaliseren), dus is het belangrijker om veiligheidsmaatregelen te nemen om te voorkomen dat de server wordt geschonden.

Hieronder vindt u de stappen voor deactivering.

[username@hostname ~]$ getenforce
Disabled

Als het niet "Disabled" is, kan het worden veranderd met de volgende procedure.

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


config【Voor de verandering】


SELINUX=enforcing


config【na de verandering】


SELINUX=disabled

'SELINUX' en 'SELINUXTYPE', maar het is de 'SELINUX' die moet worden gewijzigd. Merk op dat als u de "SELINUXTYPE" per ongeluk wijzigt, de server niet zal starten.

Herstart de server en de configuratie wordt van kracht.

1-4. extra operationele gebruiker

Inloggen en werken als de root gebruiker is gevaarlijk, dus voeg een gebruiker toe om in te loggen. Schakel in een volgende stap de aanmelding van de root-gebruiker uit.

Het risico van werken als een ingelogde root gebruiker is dat je alles kunt doen wat je wilt. Het risico dat u alles kunt doen is dat u per ongeluk belangrijke wijzigingen met betrekking tot het besturingssysteem wijzigt of verwijdert. Als je de server voor persoonlijk gebruik gebruikt, zoals hobby of studie, en je maakt niet zulke gewone fouten, dan zie ik persoonlijk geen probleem om in te loggen als root gebruiker. De belangrijkste reden om de root-gebruiker niet toe te staan in te loggen is de scheiding der machten. Het app-ontwikkelingsteam gebruikt gebruikers die alleen de directory aanraken voor app-ontwikkeling. Het batch ontwikkelteam gebruikt gebruikers die alleen in de batch ontwikkelmap komen. Het is beter om gebruikers te scheiden, zodat de noodzakelijke teams de noodzakelijke mappen kunnen aanraken, zoals

Hieronder vindt u de stappen voor het toevoegen van gebruikers.

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

※xxxxxxxx is de naam van de gebruiker die moet worden toegevoegd. Stel een willekeurig wachtwoord in.

1-5. Wijzig root gebruikerswachtwoord

Als u niet de root-gebruiker bent, schakel dan over naar de root-gebruiker met su - en voer het volgende commando uit

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

※Stel een willekeurig wachtwoord in.

Geef nooit het oorspronkelijke wachtwoord op. Het wachtwoord 'root' is het ergste. Wachtwoorden "password" en "1234" zijn ook heel gevaarlijk. Een minimum van acht cijfers, inclusief alfanumerieke symbolen, is goed.

Deze wachtwoordinstelling is heel belangrijk voor veiligheidsmaatregelen en moet met de grootste zorg worden ingesteld. Het wijzigen van het wachtwoord van de root-gebruiker is vrij eenvoudig, maar let op: we hebben veel verhalen gehoord over beveiligingsincidenten die hierdoor zijn veroorzaakt. Ga er niet van uit dat niemand uw server zal aanvallen omdat hij klein van omvang is. De aanvaller krijgt toegang tot een willekeurige server met de gebruikersnaam 'root' en wachtwoord 'root'.

1-6. Configuratie om logins door niet-operationele gebruikers te verbieden (verbiedt logins door root-gebruiker en andere gebruikers).

Beperk het aantal gebruikers dat zich kan aanmelden. Met name root-gebruikers zouden niet mogen inloggen. Als je ingelogd bent als root, staat dat gelijk aan het uitschakelen van alle veiligheidsmaatregelen.

Hieronder staan de stappen voor het uitschakelen van de root gebruikers login en het toevoegen van gebruikers die kunnen inloggen. Schakel over naar de root-gebruiker en wijzig dan het configuratiebestand. (Het is mogelijk om over te schakelen naar root gebruiker met 'su-', alleen niet om in te kunnen loggen).

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


sshd_config【Voor de verandering】


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


sshd_config【na de verandering】


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

※xxxxxxxx is de operationele gebruikersnaam die u zojuist hebt toegevoegd.


Een punt om hier op te merken is dat als de AllowUsers naam verkeerd is, niemand zal kunnen inloggen, dus controleer de gebruikersnamen zorgvuldig.

Controleer de syntaxis en herstart sshd.

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

Zodra u uitgelogd bent en bevestigd hebt dat u zich niet kunt aanmelden als root en dat u zich kunt aanmelden als de toegevoegde operationele gebruiker, bent u klaar.


1-7. tijdsynchronisatie

Controleer of de tijd is gesynchroniseerd. Soms is de tijd van de server niet gesynchroniseerd, zodat de datum en tijd van de logoutput op een ander tijdstip vallen dan verwacht en het veel tijd kost om het probleem te analyseren.

Controleer het opstarten van het tijdsynchronisatieproces (chronyd). Controleer de status van de tijdsynchronisatie. Merk op dat CentOS7 'chronyd' is, maar eerder is 'ntpd', dus wees voorzichtig als je op 6 of eerder zit.

[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: dag (van de maand) 2020-11-29 16:30:43 JST
  Universal time: dag (van de maand) 2020-11-29 07:30:43 UTC
        RTC time: dag (van de maand) 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

Het is OK als 'Lokale tijd' overeenkomt met de huidige tijd, 'NTP ingeschakeld' is ja en 'NTP gesynchroniseerd' is ja.


1-8. Sleutelauthenticatie-instellingen

Voor de operationele gebruikers die u net hebt toegevoegd, laat hen alleen inloggen met sleutelauthenticatie.

Het uitschakelen van de wachtwoordverificatie verhoogt de veiligheid aanzienlijk. In het geval van wachtwoordauthenticatie zal u, als u een complex wachtwoord gebruikt, in principe niet worden ingelogd, maar de kans is niet nul procent. In het geval van sleutelauthenticatie kunt u echter alleen inloggen als u in de eerste plaats de sleutel hebt, dus zolang u uw sleutel goed beheert, zult u niet worden ingelogd.

Hieronder volgt de procedure voor het instellen van sleutelauthenticatie.

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

※xxxxxxxx is de naam van de extra operationele gebruiker.

※Na het uitvoeren van het commando "ssh-keygen -t rsa -b 2048" wordt u om een antwoord gevraagd, alle standaardwaarden en drukt u op "Enter". Ook in te stellen zonder wachtwoord. (Het invoeren van een wachtwoord biedt extra veiligheid als sleutelauthenticatie plus wachtwoordauthenticatie, maar in dit geval wordt geen wachtwoord verondersteld).


Controleer vervolgens of de sleutel is aangemaakt.

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

※xxxxxxxx is de naam van de extra operationele gebruiker.

Controleer of de private sleutel "id_rsa" public key "id_rsa.pub" is opgeslagen.

Hernoem de publieke sleutel en verplaats de directory om de private sleutel te downloaden.

[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 is de naam van de extra operationele gebruiker.

Verwijder de private sleutel (id_rsa) van de server na deze lokaal te hebben verplaatst.

Verplaats /home/xxxxxxxx/id_rsa naar lokaal. (Ga naar b.v. WinSCP).

Voer na de verhuizing het verwijdercommando uit.

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

※xxxxxxxx is de gebruikersnaam die in stap (3) is toegevoegd.

Hiermee is de instelling van de sleutelauthenticatie voltooid. Controleer of u zich kunt aanmelden met de private sleutel die u hebt aangemaakt.

Zodra u de bevestiging hebt dat u kunt inloggen, is de laatste stap het wijzigen van de instellingen zodat u niet kunt inloggen met wachtwoordverificatie.

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


sshd_config【Voor de verandering】


PasswordAuthentication yes


sshd_config【na de verandering】


PasswordAuthentication no

Controleer de syntaxis en herstart sshd.

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

Hiermee is de instelling van de sleutelauthenticatie voltooid.


2. samenvatting

We hebben de initiële configuratie beschreven die nodig is wanneer CentOS wordt geïnstalleerd.

De informatie in dit artikel is het minimum dat geïmplementeerd moet worden bij de installatie van CentOS, dus als u na het lezen van dit artikel het gevoel heeft dat er tekortkomingen zijn, probeer ze dan in te stellen.

Bedankt voor het kijken tot het einde.