Ερώτηση 1: Να αναφέρετε και να περιγράψετε τα πιο κοινά πρωτόκολλα επιπέδου εφαρμογής (HTTP, HTTPS, DNS, SMTP, POP3, IMAP, FTP, DHCP). Ποιος είναι ο ρόλος καθενός;
HTTP (Hypertext Transfer Protocol): Είναι το βασικό πρωτόκολλο για τη μεταφορά υπερκειμένου (HTML) και άλλου περιεχομένου (εικόνες, βίντεο κ.λπ.) από έναν web server σε έναν web browser (client) στο Παγκόσμιο Ιστό (World Wide Web). Ο ρόλος του είναι να καθορίζει τον τρόπο με τον οποίο οι browsers ζητούν και λαμβάνουν ιστοσελίδες και άλλα αρχεία από τους servers.
HTTPS (HTTP Secure): Είναι μια ασφαλής έκδοση του HTTP. Χρησιμοποιεί κρυπτογράφηση SSL/TLS για την ασφάλεια της επικοινωνίας μεταξύ του browser και του server, προστατεύοντας τα δεδομένα από υποκλοπή. Ο ρόλος του είναι η ασφαλής μεταφορά ευαίσθητων πληροφοριών (π.χ., κωδικοί πρόσβασης, στοιχεία πιστωτικών καρτών) μέσω του διαδικτύου.
DNS (Domain Name System): Είναι ένα κατανεμημένο σύστημα ονοματοδοσίας που μεταφράζει τα φιλικά προς τον άνθρωπο ονόματα τομέα (π.χ., www.google.com) σε διευθύνσεις IP (π.χ., 172.217.160.142) που κατανοούν οι υπολογιστές. Ο ρόλος του είναι να κάνει την πρόσβαση σε ιστοσελίδες και άλλες υπηρεσίες διαδικτύου ευκολότερη, καθώς οι χρήστες δεν χρειάζεται να θυμούνται αριθμητικές διευθύνσεις IP.
SMTP (Simple Mail Transfer Protocol): Είναι το πρωτόκολλο που χρησιμοποιείται για την αποστολή ηλεκτρονικού ταχυδρομείου (email) από έναν mail client σε έναν mail server και μεταξύ mail servers. Ο ρόλος του είναι να διασφαλίζει την αξιόπιστη μεταφορά των μηνυμάτων ηλεκτρονικού ταχυδρομείου.
POP3 (Post Office Protocol version 3): Είναι ένα πρωτόκολλο που χρησιμοποιείται από τους mail clients για την ανάκτηση μηνυμάτων ηλεκτρονικού ταχυδρομείου από έναν mail server. Συνήθως, μετά την ανάκτηση, τα μηνύματα διαγράφονται από τον server (αν και υπάρχουν επιλογές για να παραμείνουν). Ο ρόλος του είναι η λήψη email από τον server στον τοπικό υπολογιστή του χρήστη.
IMAP (Internet Message Access Protocol): Είναι ένα άλλο πρωτόκολλο για την ανάκτηση email από έναν mail server. Σε αντίθεση με το POP3, το IMAP συνήθως αφήνει τα μηνύματα στον server, επιτρέποντας στον χρήστη να έχει πρόσβαση στα email του από πολλές συσκευές και να διατηρεί την οργάνωση των μηνυμάτων στον server. Ο ρόλος του είναι η διαχείριση και η πρόσβαση σε email που παραμένουν αποθηκευμένα στον server.
FTP (File Transfer Protocol): Είναι ένα πρωτόκολλο που χρησιμοποιείται για τη μεταφορά αρχείων μεταξύ ενός client και ενός server. Επιτρέπει την αποστολή (upload) και τη λήψη (download) αρχείων. Ο ρόλος του είναι η διακίνηση αρχείων μέσω ενός δικτύου.
DHCP (Dynamic Host Configuration Protocol): Είναι ένα πρωτόκολλο που επιτρέπει σε έναν DHCP server να εκχωρεί αυτόματα διευθύνσεις IP και άλλες παραμέτρους δικτύου (π.χ., μάσκα υποδικτύου, default gateway, DNS server) σε clients όταν συνδέονται στο δίκτυο. Ο ρόλος του είναι η απλοποίηση της διαχείρισης των διευθύνσεων IP και η αποφυγή συγκρούσεων διευθύνσεων.
Ερώτηση 2: Τι είναι το DNS και πώς λειτουργεί η ανάλυση ονομάτων;
Όπως αναφέρθηκε παραπάνω, το DNS (Domain Name System) είναι ένα κατανεμημένο σύστημα ονοματοδοσίας που μεταφράζει τα φιλικά προς τον άνθρωπο ονόματα τομέα σε διευθύνσεις IP.
Η ανάλυση ονομάτων (name resolution) είναι η διαδικασία μέσω της οποίας ένας client (συνήθως ένας web browser) αναζητά τη διεύθυνση IP που αντιστοιχεί σε ένα συγκεκριμένο όνομα τομέα. Η διαδικασία αυτή λειτουργεί ως εξής:
Αίτημα από τον Client: Όταν ένας χρήστης πληκτρολογεί ένα όνομα τομέα (π.χ., www.example.com) στον browser του, ο υπολογιστής του πρώτα ελέγχει την τοπική του μνήμη cache (DNS cache) για να δει αν έχει πρόσφατα αναλύσει αυτό το όνομα.
Ερώτηση στον DNS Resolver: Αν η πληροφορία δεν βρίσκεται στην cache, ο υπολογιστής στέλνει ένα αίτημα (DNS query) σε έναν DNS resolver. Ο DNS resolver είναι συνήθως ένας DNS server που παρέχεται από τον πάροχο υπηρεσιών διαδικτύου (ISP) ή μπορεί να είναι ένας δημόσιος DNS server (π.χ., Google DNS, Cloudflare DNS).
Αναζήτηση στους Root Servers: Ο DNS resolver ξεκινά την αναζήτηση από τους root DNS servers. Αυτοί οι servers γνωρίζουν τις διευθύνσεις των Top-Level Domain (TLD) servers (π.χ., .com, .gr, .net).
Ερώτηση στους TLD Servers: Ο resolver ρωτάει τον κατάλληλο TLD server για τη διεύθυνση του Authoritative Name Server για τον τομέα που αναζητά (π.χ., για το example.com).
Ερώτηση στον Authoritative Name Server: Ο resolver ρωτάει τον Authoritative Name Server για το συγκεκριμένο όνομα τομέα (π.χ., www.example.com). Αυτός ο server είναι υπεύθυνος για τη διαχείριση των DNS εγγραφών για τον συγκεκριμένο τομέα και γνωρίζει την αντίστοιχη διεύθυνση IP.
Απάντηση στον Resolver: Ο Authoritative Name Server στέλνει την IP διεύθυνση πίσω στον DNS resolver.
Απάντηση στον Client: Ο DNS resolver στέλνει την IP διεύθυνση στον υπολογιστή του χρήστη.
Αποθήκευση στην Cache: Ο υπολογιστής αποθηκεύει την IP διεύθυνση στην τοπική του DNS cache για ένα συγκεκριμένο χρονικό διάστημα (Time To Live - TTL), ώστε να μην χρειάζεται να επαναλάβει την ίδια διαδικασία αν ξαναεπισκεφτεί την ίδια ιστοσελίδα σύντομα.
Σύνδεση: Ο browser χρησιμοποιεί την IP διεύθυνση για να συνδεθεί με τον web server που φιλοξενεί την ιστοσελίδα.
Ερώτηση 3: Πώς λειτουργεί το πρωτόκολλο HTTP και τι είναι οι μέθοδοι GET και POST; Τι είναι το HTTPS;
Το HTTP (Hypertext Transfer Protocol) είναι ένα πρωτόκολλο αιτήματος-απόκρισης (request-response) μεταξύ ενός client (συνήθως ενός web browser) και ενός server (συνήθως ενός web server). Η επικοινωνία γίνεται ως εξής:
Αίτημα (Request) από τον Client: Ο browser στέλνει ένα αίτημα στον server. Το αίτημα περιέχει:
Τη μέθοδο (π.χ., GET, POST).
Το URL του πόρου που ζητείται (π.χ., /index.html).
Headers, που παρέχουν επιπλέον πληροφορίες για το αίτημα (π.χ., τύπος browser, γλώσσα).
(Προαιρετικά) ένα σώμα (body), που περιέχει δεδομένα (συνήθως για μεθόδους όπως το POST).
Απόκριση (Response) από τον Server: Ο server επεξεργάζεται το αίτημα και στέλνει μια απόκριση πίσω στον client. Η απόκριση περιέχει:
Έναν κωδικό κατάστασης (status code), που υποδεικνύει το αποτέλεσμα του αιτήματος (π.χ., 200 OK, 404 Not Found, 500 Internal Server Error).
Headers, που παρέχουν επιπλέον πληροφορίες για την απόκριση (π.χ., τύπος περιεχομένου, ημερομηνία).
(Συνήθως) ένα σώμα (body), που περιέχει τα ζητούμενα δεδομένα (π.χ., HTML κώδικας της ιστοσελίδας, εικόνα).
Μέθοδοι HTTP:
Οι δύο πιο συνηθισμένες μέθοδοι HTTP είναι:
GET: Χρησιμοποιείται για την ανάκτηση δεδομένων από τον server. Τα δεδομένα που στέλνει ο client συνήθως περιλαμβάνονται στο URL ως παραμέτρους (query parameters). Τα αιτήματα GET είναι κυρίως για ανάγνωση δεδομένων και θεωρούνται ασφαλή (safe) και idempotent (η επανάληψη του αιτήματος έχει το ίδιο αποτέλεσμα).
POST: Χρησιμοποιείται για την αποστολή δεδομένων στον server για επεξεργασία (π.χ., υποβολή μιας φόρμας, αποστολή δεδομένων για δημιουργία ενός νέου πόρου). Τα δεδομένα στέλνονται στο σώμα του αιτήματος. Τα αιτήματα POST δεν είναι idempotent, καθώς η επανάληψη μπορεί να οδηγήσει σε διαφορετικά αποτελέσματα (π.χ., πολλαπλές υποβολές της ίδιας φόρμας).
Υπάρχουν και άλλες μέθοδοι HTTP (όπως PUT, DELETE, OPTIONS, κ.λπ.) που χρησιμοποιούνται για πιο εξειδικευμένες λειτουργίες.
HTTPS (HTTP Secure):
Το HTTPS είναι η ασφαλής έκδοση του HTTP. Λειτουργεί ακριβώς όπως το HTTP, αλλά όλη η επικοινωνία μεταξύ του client και του server κρυπτογραφείται χρησιμοποιώντας πρωτόκολλα όπως το SSL (Secure Sockets Layer) ή το νεότερο TLS (Transport Layer Security).
Η κρυπτογράφηση εξασφαλίζει:
Εμπιστευτικότητα (Confidentiality): Τα δεδομένα που ανταλλάσσονται δεν μπορούν να διαβαστούν από τρίτους που ενδέχεται να υποκλέψουν την επικοινωνία.
Ακεραιότητα (Integrity): Τα δεδομένα δεν μπορούν να τροποποιηθούν κατά τη μεταφορά χωρίς να γίνει αντιληπτό.
Αυθεντικότητα (Authentication): Ο server μπορεί να αποδείξει την ταυτότητά του στον client μέσω ψηφιακών πιστοποιητικών.
Η χρήση του HTTPS είναι απαραίτητη για την προστασία ευαίσθητων πληροφοριών, όπως κωδικοί πρόσβασης, στοιχεία πιστωτικών καρτών και προσωπικά δεδομένα, κατά τη διάρκεια της επικοινωνίας μέσω του διαδικτύου. Οι ιστοσελίδες που χρησιμοποιούν HTTPS έχουν συνήθως ένα εικονίδιο κλειδαριάς στη γραμμή διευθύνσεων του browser και η διεύθυνση URL ξεκινά με https://.

Ευχαριστούμε πολύ για την ενημέρωση !
ΑπάντησηΔιαγραφή