Αρχική διαμόρφωση που απαιτείται κατά την εγκατάσταση του CentOS.


Ημερομηνία δημοσίευσης:8 Δεκεμβρίου 2020.



INFOMARTION > Αρχική διαμόρφωση που απαιτείται κατά την εγκατάσταση του CentOS.

Επισκόπηση.

Αυτή η ενότητα περιγράφει τις πρώτες απαραίτητες ρυθμίσεις μετά την εγκατάσταση του CentOS. Έχει κατασκευαστεί χρησιμοποιώντας το CentOS 7.6 (1810).

Πίνακας περιεχομένων

  1. βασική ρύθμιση
  2. περίληψη

1. βασική ρύθμιση

Αυτή η ενότητα περιγράφει τις βασικές ρυθμίσεις που απαιτούνται αμέσως μετά την εγκατάσταση του CentOS.

1-1. Έλεγχος του λειτουργικού συστήματος

Αρχικά, ελέγξτε ότι έχετε εγκαταστήσει το σωστό λειτουργικό σύστημα.

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

'CentOS Linux release 7.6.1810 (Core)' είναι το εγκατεστημένο λειτουργικό σύστημα. Ελέγξτε ότι είναι σωστή.

1-2. Εγκατάσταση του εργαλείου

Αμέσως μετά την εγκατάσταση, βασικές εντολές όπως η ifconfig δεν μπορούν να εκτελεστούν. Ως εκ τούτου, η εγκατάσταση πραγματοποιείται έτσι ώστε οι βασικές εντολές δικτύωσης και άλλες εντολές να μπορούν να εκτελεστούν από τις εντολές yum.

Πραγματοποιήστε το αν είναι απαραίτητο, καθώς είναι δυνατό να εκσυγχρονίσετε ό,τι έχει ήδη εγκατασταθεί με το '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・・・Η εντολή ifconifg και άλλες μπορούν να χρησιμοποιηθούν μετά την εγκατάσταση.

wget・・・Κυριολεκτικά, αλλά μπορεί να χρησιμοποιηθεί η εντολή wget. Εν συντομία, αυτή η εντολή στέλνει ένα αίτημα http.

tcpdump・・・Κυριολεκτικά, αλλά μπορεί να χρησιμοποιηθεί και η εντολή tcpdump. Εν συντομία, μπορεί να παρακολουθεί τις αιτήσεις που αποστέλλονται στον διακομιστή.

traceroute・・・Κυριολεκτικά, αλλά μπορεί να χρησιμοποιηθεί και η εντολή traceroute. Εν συντομία, δείχνει τη διαδρομή της IP προορισμού.

1-3. Απενεργοποίηση του selinux

Απενεργοποιήστε το selinux καθώς είναι ενεργοποιημένο και μπορεί να συμπεριφερθεί απροσδόκητα.

Αρχικά, το selinux είναι μια ρύθμιση που σχετίζεται με την ασφάλεια. Αν είστε σε θέση να το χρησιμοποιήσετε, μπορείτε να το ενεργοποιήσετε, αλλά αν είναι δύσκολο, απενεργοποιήστε το. Η απενεργοποίηση του selinux δεν καθιστά απαραίτητα την ασφάλεια ευάλωτη.Είναι πιο πιθανό να προκαλέσει προβλήματα αν είναι ενεργοποιημένο, αν και προσωπικά δεν το καταλαβαίνω καλά. Η απλή εξήγηση είναι ότι το selinux είναι ένα μέτρο ασφαλείας μετά την παραβίαση του διακομιστή (ρυθμισμένο για να ελαχιστοποιεί τη ζημιά σε περίπτωση παραβίασης), οπότε είναι μάλλον πιο σημαντικό να λάβετε μέτρα ασφαλείας για να αποτρέψετε την παραβίαση του διακομιστή.

Ακολουθούν τα βήματα για την απενεργοποίηση.

[username@hostname ~]$ getenforce
Disabled

Εάν δεν είναι "Απενεργοποιημένη", μπορείτε να την αλλάξετε με την ακόλουθη διαδικασία.

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


config【Πριν από την αλλαγή】


SELINUX=enforcing


config【μετά την αλλαγή】


SELINUX=disabled

'SELINUX' και 'SELINUXTYPE', αλλά το 'SELINUX' είναι αυτό που πρέπει να αλλάξει. Σημειώστε ότι αν αλλάξετε το "SELINUXTYPE" κατά λάθος, ο διακομιστής δεν θα ξεκινήσει.

Κάντε επανεκκίνηση του διακομιστή και η διαμόρφωση θα τεθεί σε ισχύ.

1-4. πρόσθετος επιχειρησιακός χρήστης

Η είσοδος και η εργασία ως χρήστης root είναι επικίνδυνη, οπότε προσθέστε έναν χρήστη για να συνδεθείτε. Σε ένα επόμενο βήμα, απενεργοποιήστε τη σύνδεση του χρήστη root.

Το ρίσκο του να εργάζεστε ως συνδεδεμένος χρήστης root είναι ότι μπορείτε να κάνετε ό,τι θέλετε. Ο κίνδυνος του να μπορείτε να κάνετε οτιδήποτε είναι να αλλάξετε ή να διαγράψετε κατά λάθος σημαντικές αλλαγές που σχετίζονται με το λειτουργικό σύστημα. Αν χρησιμοποιείτε τον διακομιστή για προσωπική χρήση, όπως για χόμπι ή μελέτη, και δεν κάνετε τέτοια συνηθισμένα λάθη, προσωπικά δεν βλέπω κανένα πρόβλημα με την είσοδο ως χρήστης root. Ο νούμερο ένα λόγος για να μην επιτρέπεται η είσοδος του χρήστη root είναι ο διαχωρισμός των εξουσιών. Η ομάδα ανάπτυξης εφαρμογών χρησιμοποιεί χρήστες που αγγίζουν μόνο τον κατάλογο για την ανάπτυξη εφαρμογών. Η ομάδα ανάπτυξης παρτίδων χρησιμοποιεί χρήστες που αγγίζουν μόνο τον κατάλογο ανάπτυξης παρτίδων. Είναι προτιμότερο να διαχωρίζετε τους χρήστες έτσι ώστε οι απαραίτητες ομάδες να μπορούν να αγγίξουν τους απαραίτητους καταλόγους, όπως

Ακολουθούν τα βήματα για την προσθήκη χρηστών.

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

※xxxxxxxx είναι το όνομα του χρήστη που θα προστεθεί. Ορίστε οποιονδήποτε κωδικό πρόσβασης.

1-5. Αλλαγή κωδικού πρόσβασης χρήστη root

Αν δεν είστε ο χρήστης root, μεταβείτε στον χρήστη root με την εντολή su - και εκτελέστε την ακόλουθη εντολή

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

※Ορίστε οποιονδήποτε κωδικό πρόσβασης.

Ποτέ μην εγκαταλείπετε τον αρχικό κωδικό πρόσβασης. Ο κωδικός πρόσβασης 'root' είναι ο χειρότερος. Οι κωδικοί πρόσβασης "password" και "1234" είναι επίσης αρκετά επικίνδυνοι. Καλό είναι να έχει τουλάχιστον οκτώ ψηφία, συμπεριλαμβανομένων των αλφαριθμητικών συμβόλων.

Αυτή η ρύθμιση του κωδικού πρόσβασης είναι αρκετά σημαντική για τα μέτρα ασφαλείας και θα πρέπει να ρυθμίζεται με τη μεγαλύτερη δυνατή προσοχή. Η αλλαγή του κωδικού πρόσβασης του χρήστη root είναι αρκετά βασική, αλλά πρέπει να γνωρίζετε ότι έχουμε ακούσει πολλές ιστορίες περιστατικών ασφαλείας που προκλήθηκαν από αυτό. Μην υποθέτετε ότι κανείς δεν θα επιτεθεί στον διακομιστή σας επειδή είναι μικρός σε μέγεθος. Ο επιτιθέμενος αποκτά πρόσβαση σε έναν τυχαίο διακομιστή με το όνομα χρήστη 'root' και τον κωδικό πρόσβασης 'root'.

1-6. Ρύθμιση παραμέτρων για την απαγόρευση συνδέσεων από μη λειτουργικούς χρήστες (απαγορεύει τις συνδέσεις από τον χρήστη root και άλλους χρήστες).

Περιορίστε τον αριθμό των χρηστών που μπορούν να συνδεθούν. Ειδικότερα, δεν θα πρέπει να επιτρέπεται η είσοδος σε χρήστες root. Αν έχετε συνδεθεί ως διαχειριστής συστήματος (root), αυτό ισοδυναμεί με απενεργοποίηση όλων των μέτρων ασφαλείας.

Ακολουθούν τα βήματα για την απενεργοποίηση της σύνδεσης του χρήστη root και την προσθήκη χρηστών που μπορούν να συνδεθούν. Μεταβείτε σε χρήστη root και, στη συνέχεια, αλλάξτε το αρχείο ρυθμίσεων. (Είναι δυνατόν να μεταβείτε σε χρήστη root με το 'su-', απλά δεν μπορείτε να συνδεθείτε.)

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


sshd_config【Πριν από την αλλαγή】


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


sshd_config【μετά την αλλαγή】


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

※xxxxxxxx είναι το λειτουργικό όνομα χρήστη που μόλις προσθέσατε.


Ένα σημείο που πρέπει να σημειωθεί εδώ είναι ότι αν το όνομα AllowUsers είναι λάθος, κανείς δεν θα μπορεί να συνδεθεί, οπότε ελέγξτε προσεκτικά τα ονόματα χρηστών.

Ελέγξτε τη σύνταξη και επανεκκινήστε το sshd.

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

Αφού αποσυνδεθείτε και επιβεβαιώσετε ότι δεν μπορείτε να συνδεθείτε ως root και ότι μπορείτε να συνδεθείτε ως ο λειτουργικός χρήστης που προστέθηκε, τελειώσατε.


1-7. συγχρονισμός χρόνου

Ελέγξτε ότι η ώρα είναι συγχρονισμένη. Μερικές φορές η ώρα του διακομιστή δεν συγχρονίζεται, οπότε η ημερομηνία και η ώρα εξόδου του αρχείου καταγραφής εξάγεται σε διαφορετική ώρα από την αναμενόμενη και χρειάζεται πολύς χρόνος για την ανάλυση του προβλήματος.

Ελέγξτε την εκκίνηση της διαδικασίας συγχρονισμού του χρόνου (chronyd). Ελέγξτε την κατάσταση συγχρονισμού της ώρας. Σημειώστε ότι το CentOS7 είναι το 'chronyd', αλλά τα προηγούμενα είναι το 'ntpd', οπότε να είστε προσεκτικοί αν είστε στο 6 ή σε προηγούμενες εκδόσεις.

[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: ημέρα (του μήνα) 2020-11-29 16:30:43 JST
  Universal time: ημέρα (του μήνα) 2020-11-29 07:30:43 UTC
        RTC time: ημέρα (του μήνα) 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

Είναι εντάξει αν η 'Τοπική ώρα' ταιριάζει με την τρέχουσα ώρα, η 'Ενεργοποίηση NTP' είναι ναι και η 'Συγχρονισμός NTP' είναι ναι.


1-8. Ρυθμίσεις ελέγχου ταυτότητας κλειδιού

Για τους λειτουργικούς χρήστες που μόλις προσθέσατε, επιτρέψτε τους να συνδεθούν μόνο με έλεγχο ταυτότητας με κλειδί.

Η απλή απενεργοποίηση του ελέγχου ταυτότητας με κωδικό πρόσβασης αυξάνει σημαντικά την ασφάλεια. Στην περίπτωση του ελέγχου ταυτότητας με κωδικό πρόσβασης, εάν χρησιμοποιείτε έναν σύνθετο κωδικό πρόσβασης, ουσιαστικά δεν θα συνδεθείτε, αλλά η πιθανότητα δεν είναι μηδενική. Ωστόσο, στην περίπτωση της αυθεντικοποίησης με κλειδί, μπορείτε να συνδεθείτε μόνο αν έχετε εξαρχής το κλειδί, οπότε εφόσον διαχειρίζεστε σωστά το κλειδί σας, δεν θα συνδεθείτε.

Παρακάτω περιγράφεται η διαδικασία για τη ρύθμιση του ελέγχου ταυτότητας με κλειδί.

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

※xxxxxxxx είναι το όνομα του πρόσθετου επιχειρησιακού χρήστη.

※Μετά την εκτέλεση της εντολής "ssh-keygen -t rsa -b 2048", θα σας ζητηθεί απάντηση, όλες οι προεπιλεγμένες τιμές και πατήστε "Enter". Ρύθμιση και χωρίς κωδικό πρόσβασης. (Η εισαγωγή ενός κωδικού πρόσβασης παρέχει πρόσθετη ασφάλεια ως έλεγχος ταυτότητας με κλειδί συν έλεγχο ταυτότητας με κωδικό πρόσβασης, αλλά σε αυτή την περίπτωση δεν απαιτείται κωδικός πρόσβασης.)


Στη συνέχεια, ελέγξτε ότι το κλειδί έχει δημιουργηθεί.

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

※xxxxxxxx είναι το όνομα του πρόσθετου επιχειρησιακού χρήστη.

Ελέγξτε ότι το ιδιωτικό κλειδί "id_rsa" δημόσιο κλειδί "id_rsa.pub" είναι αποθηκευμένο.

Μετονομάστε το δημόσιο κλειδί και μετακινήστε τον κατάλογο για τη λήψη του ιδιωτικού κλειδιού.

[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 είναι το όνομα του πρόσθετου επιχειρησιακού χρήστη.

Διαγράψτε το ιδιωτικό κλειδί (id_rsa) από το διακομιστή αφού το μετακινήσετε τοπικά.

Μετακινήστε το /home/xxxxxxxxxx/id_rsa στο local. (Πηγαίνετε π.χ. στο WinSCP).

Μετά τη μετακίνηση, εκτελέστε την εντολή delete.

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

※xxxxxxxx είναι το όνομα χρήστη που προστέθηκε στο βήμα (3).

Με αυτόν τον τρόπο ολοκληρώνεται η ρύθμιση του κλειδιού ελέγχου ταυτότητας. Ελέγξτε ότι μπορείτε να συνδεθείτε με το ιδιωτικό κλειδί που δημιουργήσατε.

Αφού επιβεβαιώσετε ότι μπορείτε να συνδεθείτε, το τελευταίο βήμα είναι να αλλάξετε τις ρυθμίσεις ώστε να μην μπορείτε να συνδεθείτε χρησιμοποιώντας την επαλήθευση του κωδικού πρόσβασης.

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


sshd_config【Πριν από την αλλαγή】


PasswordAuthentication yes


sshd_config【μετά την αλλαγή】


PasswordAuthentication no

Ελέγξτε τη σύνταξη και επανεκκινήστε το sshd.

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

Με αυτόν τον τρόπο ολοκληρώνεται η ρύθμιση του κλειδιού ελέγχου ταυτότητας.


2. περίληψη

Περιγράψαμε τις αρχικές ρυθμίσεις που απαιτούνται κατά την εγκατάσταση του CentOS.

Οι πληροφορίες σε αυτό το άρθρο είναι οι ελάχιστες που πρέπει να εφαρμόζονται κατά την εγκατάσταση του CentOS, οπότε αν αισθάνεστε ότι υπάρχουν ελλείψεις μετά την ανάγνωση αυτού του άρθρου, δοκιμάστε να τις ρυθμίσετε.

Σας ευχαριστούμε που παρακολουθήσατε μέχρι το τέλος.