Αρχικό Setup Debian 8 Server

server-setup

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

Βημα 1ο – Root Login

Για να συνδεθούε στο server , θα πρέπει να γνωρίζουμε τη public IP του  και τον κωδικό πρόσβασης για το λογαριασμό  χρήστη "root".

Εάν δεν είστε ήδη συνδεδεμένοι στο διακομιστή σας, προχωρήστε και συνδεθείτε ως χρήστης root χρησιμοποιώντας την ακόλουθη εντολή (αντικαταστήστε την επισημασμένη λέξη με τη δημόσια διεύθυνση IP του διακομιστή σας):

 ssh root@SERVER_IP_ADDRESS

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

O χρήστης root :

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

Το επόμενο βήμα είναι να δημιουργηθεί ένας εναλλακτικός λογαριασμός χρήστη με περιορισμένα δικαιώματα  για καθημερινή χρήση .

Βήμα 2ο – Δημιουργία Νέου Χρήστη

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

Για παράδειγμα , θα χρησιμοποιήσουμε ως username  "demo", αλλά εσείς προφανώς θα ορίσετε αυτό που θέλετε:

 adduser demo

Θα μας γίνουν μερικές ερωτήσεις, ξεκινώντας από τον κωδικό πρόσβασης του λογαριασμού.

Εισαγάγουμε έναν ισχυρό κωδικό πρόσβασης και συμπληρώνουμε οποιαδήποτε από τις πρόσθετες πληροφορίες  θέλουμε. Αυτό δεν είναι απαραίτητο και  απλά πατάμε "ENTER" σε οποιοδήποτε πεδίο θέλουμε να παραλέιψουμε.

Βήμα 3ο – Προνόμια Διαχειριστή

Τώρα, έχουμε ένα νέο λογαριασμό χρήστη με περιορισμένα δικαιώματα. Ωστόσο, ενδέχεται μερικές φορές να χρειαστεί να εκτελέσουμε  εργασίες με δικαιώματα διαχειριστή.

Για αυτό υπάρχει η εντολή sudo. Βάζοντας το sudo μπροστά απο μια εντολή , την εκτελεί με δικαιώματα διαχειριστή , και μας γλυτώνει από τον κόπο να πρέπει να κάνουμε log out και έπειτα login με τον λογαριασμό root . 

Για να μπορεί να γίνει όμως η χρήση της sudo , πρέπει ο χρήστης να ανήκει στο group sudo του Debian , δηλαδή την ομάδα χρηστών που έχουν δικαίωμα να τη χρησιμοποιούν . 

Ως root, εκτελούμε αυτήν την εντολή για να προσθέσουμε τον νέο χρήστη στην ομάδα sudo (αντικαταστήστε την επισημασμένη λέξη με το νέο σας χρήστη):

gpasswd -a demo sudo

Τώρα ο χρήστης demo  μπορεί να τρέξει εντολές με δικαιώματα διαχειριστή!

Βήμα 4ο - Προσθήκη ελέγχου ταυτότητας δημόσιου κλειδιού (συνιστάται).

Το επόμενο βήμα στη διασφάλιση του server  είναι να ρυθμίσετε τον έλεγχο ταυτότητας δημόσιου κλειδιού για τον νέο σας χρήστη. Η ρύθμιση αυτή θα αυξήσει την ασφάλεια του server απαιτώντας ένα ιδιωτικό κλειδί SSH για να γίνει η σύνδεση . 

Δημιουργήστε ένα ζεύγος κλειδιών

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

Αντιγραφή του Public Key

Αφού δημιουργήσουμε ένα ζευγάρι κλειδιών SSH, θέλουμε να αντιγράψουμε το public key στο νέο μας server. Θα πούμε δύο εύκολους τρόπους για να γίνει αυτό. 

  • Επιλογή 1: Με χρήση της ssh-copy-id

Αν είναι εγκατεστημένο  το ssh-copy-id script, μπορούμε να το χρησιμοποιήσουμε για να εγκαταστήσουμε το public key  σε οποιονδήποτε χρήστη για τον οποίο ξέρουμε τα credentials του.

ssh-copy-id demo@SERVER_IP_ADDRESS

Αφού βάλουμε σωστά τον κωδικό , είμαστε έτοιμοι . 

  • Επιλογή 2: Χειροκίνητη εγκατάσταση του κλειδιού

Υποθέτοντας ότι δημιουργήσατε ένα ζεύγος κλειδιών SSH χρησιμοποιώντας το προηγούμενο βήμα, χρησιμοποιούμε την ακόλουθη εντολή στο command prompt του τοπικού  μηχανήματος για να εκτυπώθει το δημόσιο κλειδί (id_rsa.pub):

 cat ~/.ssh/id_rsa.pub

Αυτή θα εκτυπώσει το public SSH key , το οποίο θα πρέπει να μοιάζει με το εξής:

 id_rsa.pub contents

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDBGTO0tsVejssuaYR5R3Y/i73SppJAhme1dH7W2c47d4gOqB4izP0+fRLfvbz/tnXFz4iOP/H6eCV05hqUhF+KYRxt9Y8tVMrpDZR2l75o6+xSbUOMu6xN+uVF0T9XzKcxmzTmnV7Na5up3QM3DoSRYX/EP3utr2+zAqpJIfKPLdA74w7g56oYWI9blpnpzxkEd3edVJOivUkpZ4JoenWManvIaSdMTJXMy3MtlQhva+j9CgguyVbUkdzK9KKEuah+pFZvaugtebsU+bllPTB0nlXGIJk98Ie9ZtxuY3nCKneB+KjKiXrAvXUPCI9mWkYS/1rggpFmu3HbXBnWSUdf localuser@machine.local

Επιλέγουμε το δημόσιο κλειδί και το αντιγράφουμε στο πρόχειρο.

Προσθέτουμε το δημόσιο κλειδί στον νέο απομακρυσμένο χρήστη

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

Στον server, ως χρήστης root, πληκτρολογούμε την ακόλουθη εντολή για να μεταβούμε στον νέο χρήστη (αντικαταστήστε το δικό σας όνομα χρήστη):

su – demo

Τώρα είμαστε στον αρχικό directory του νέου χρήστη σας.

Δημιουργούμε ένα νέο directory με όνομα .ssh και περιορίζουμε τα δικαιώματα του με τις ακόλουθες εντολές:

 mkdir .ssh

chmod 700 .ssh

Τώρα ανοίγουμε ένα αρχείο στο .ssh που ονομάζεται authorized_keys με έναν text editor .

vi .ssh/authorized_keys

Τώρα εισαγάγουμε το public key (το οποίο θα πρέπει να βρίσκεται στο πρόχειρο ) .

Κάνουμε αποθήκευση και έξοδο.

Τώρα περιορίσαμε τα δικαιώματα του αρχείου authorized_keys με αυτήν την εντολή:

chmod 600 .ssh/authorized_keys

Πληκτρολογούμε αυτήν την εντολή μία φορά για να επιστρέψουμε στον χρήστη root:

Exit

Τώρα μπορούμε να συνδεθούμε  με SSH ως νέο χρήστης, χρησιμοποιώντας το private key ως έλεγχο ταυτότητας.

Βήμα 5ο - Ρύθμιση του SSH Daemon

Τώρα που έχουμε τον νέο λογαριασμό θα τροποποιήσουμε τη διαμόρφωση του Daemon SSH (το πρόγραμμα που μας επιτρέπει να συνδεθούμε εξ αποστάσεως) για να αποκλείσουμε την απομακρυσμένη πρόσβαση SSH στο λογαριασμό root.

Ξεκινάμε ανοίγοντας το αρχείο ρυθμίσεων με έναν text editor ως root:

vi /etc/ssh/sshd_config

 Στη συνέχεια, πρέπει να βρούμε τη γραμμή που μοιάζει με αυτή:

/etc/ssh/sshd_config (before)

PermitRootLogin yes

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

Τροποποιήουμε αυτήν τη γραμμή σε no έτσι ώστε να απενεργοποιήθεί η σύνδεση root:

/etc/ssh/sshd_config (after)

PermitRootLogin no

Η απενεργοποίηση της απομακρυσμένης root σύνδεσης συνιστάται σε κάθε server!

Όταν τελειώσουμε με τις αλλαγές , αποθηκεύουμε και κλείνουμε το αρχείο χρησιμοποιώντας τη μέθοδο που χρησιμοποιήσαμε προηγουμένως (CTRL-X, τότε Y και ENTER).

Βήμα 6ο - Επαναφόρτωση SSH

Τώρα που έχουμε κάνει την αλλαγή μας, πρέπει να ξεκινήσουμε ξανά την υπηρεσία SSH, ώστε να φορτώσει τη νέα διαμόρφωση.

Πληκτρολογούμε:

 service ssh restart

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

Ανοίγουμε  ένα νέο παράθυρο τερματικού στο τοπικό μηχάνημα. Στο νέο παράθυρο, πρέπει να ξεκινήσουμε μια νέα σύνδεση στο server . Αυτή τη φορά, αντί να χρησιμοποιήσουμε το λογαριασμό root, θέλουμε να χρησιμοποιήσουμε το νέο λογαριασμό που δημιουργήσαμε.

Θα συνδεθούμε με αυτή την εντολή :

 ssh demo@SERVER_IP_ADDRESS

Θα μας ζητηθεί ο κωδικός πρόσβασης του νέου χρήστη που ρυθμίσαμε. 

Αν όλα είναι καλά, θα βγούμε από τις περιόδους σύνδεσης πληκτρολογώντας:

Exit

Σε αυτό το σημείο, έχουμε δημιουργήσει  μια σταθερή βάση για το server και μπορούμε να εγκαταστήσουμε το λογισμικό  που θέλουμε !

ΣΥΝΔΕΣΗ

Αίτηση επικοινωνίας

ΠΑΝΩ