Διακομιστής μεσολάβησης

(Ανακατεύθυνση από Proxy server)

Ο Διακομιστής μεσολάβησης (αγγλ. proxy server) είναι διακομιστής που έχει στόχο να βελτιώσει την ταχύτητα πλοήγησης στο Διαδίκτυο και παράλληλα να μειώσει την κίνηση του δικτύου προς το Διαδίκτυο[1]. Τοποθετείται ενδιάμεσα των χρηστών και του Διαδικτύου. Λαμβάνει τα αιτήματα ιστοσελίδων από έναν χρήστη, προσκομίζει τη σελίδα από το Διαδίκτυο, και έπειτα την δίνει στον υπολογιστή που την ζήτησε. Ο proxy server μπορεί να είναι και μέρος ενός firewall και μπορεί να αποτρέπει τους χάκερς από το να χρησιμοποιήσουν το Διαδίκτυο για να αποκτήσουν πρόσβαση σε υπολογιστές ενός ιδιωτικού δικτύου.

Χαρακτηριστικά

Επεξεργασία

Χαρακτηριστικά ενός διακομιστή μεσολάβησης:

  • Γρήγορη Μνήμη (Cache)
  • Ανώνυμη Πλοήγηση Χρηστών (Anonymous User Navigation)
  • Έλεγχος διακινούμενου Περιεχομένου (Content Management)
  • Φιλτράρισμα Κίνησης Δικτύου (Filtering)

Δυνατότητες

Επεξεργασία

Ένας διακομιστής μεσολάβησης μπορεί να προσφέρει:[2][3]

  • Πιο γρήγορη πρόσβαση σε ιστοσελίδες ή αρχεία που ήδη έχουν ζητηθεί από άλλους χρήστες.[4]
  • Μπορεί να τροποποιεί το ερώτημα.
    • αντί να φαίνεται ότι τη σελίδα ζήτησε ο χρήστης Χ που δεν έχει πρόσβαση στη σελίδα, να φαίνεται ότι τη ζήτησε ο Ψ ο οποίος έχει δυνατότητα πρόσβασης
  • Μπορεί να τροποποιεί την απάντηση.
    • Να αφαιρεί ή να προσθέτει κείμενο.
  • Να ελέγχει τα αρχεία ή τις παραπομπές σε αρχεία για ιούς.
  • Να μετατρέπει τη μορφή των αρχείων.
    • για παράδειγμα να μετατρέπει όλα τα αρχεία βίντεο από .mp4 σε .wma (ή το αντίστροφο), επειδή πιθανά οι χρήστες να μην έχουν τον κατάλληλο αποκωδικοποιητή (codec).
  • Να περιορίζει την ταχύτητα ή την ποσότητα δεδομένων για κάθε υπολογιστή.
  • Να καταγράφει τη χρήση του διαδικτύου για κάθε υπολογιστή.

Το πρωτόκολλο αυτό θεωρητικά δεν επιτρέπει σε διακομιστές μεσολάβησης να δουν το περιεχόμενο του ερωτήματος ή της απάντησης. Όμως η αλυσίδα TLS/SSL στηρίζεται στην ύπαρξη ενός έμπιστου ριζικού πιστοποιητικού πιστοποιημένου από μία αρχή πιστοποίησης (certificate authority). Στο περιβάλλον μιας επιχείρησης ή ενός ιδρύματος μπορεί να έχει καταχωρηθεί στους υπολογιστές ένα πιστοποιητικό της επιχείρησης το οποίο να αναγνωρίζεται ως ριζικό και ο διακομιστής μεσολάβησης να έχει πρόσβαση στο ιδιωτικό του κλειδί. Σε αυτήν την περίπτωση ο διακομιστής μεσολάβησης δρώντας ως επιτιθέμενος μπορεί να αποκτήσει πρόσβαση στα δεδομένα.

Διαφανής διακομιστής μεσολάβησης

Επεξεργασία

Ως Διαφανής διακομιστής μεσολάβησης (αγγλ. transparent proxy) νοείται ο διακομιστής μεσολάβησης που υπάρχει χωρίς να απαιτείται οποιαδήποτε ειδική ρύθμιση παραμέτρων υπολογιστή-πελάτη. Οι πελάτες δεν χρειάζεται να γνωρίζουν την ύπαρξη του διακομιστή μεσολάβησης. Το RFC 2616 (Hypertext Transfer Protocol—HTTP/1.1) αναφέρει:[5]

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

Ένας διαφανής διακομιστής μεσολάβησης συνήθως βρίσκεται μεταξύ του πελάτη και του Διαδικτύου, με τον διακομιστή μεσολάβησης να εκτελεί κάποιες από τις λειτουργίες ενός ρούτερ.[6] Όταν δηλαδή το πρόγραμμα πελάτης ζητήσει μια ιστοσελίδα το δίκτυο (τοπικό ή το δίκτυο του ISP) αντί να αποστείλει το αίτημα κατευθείαν μέσω ρούτερ, το αποστέλλει σε έναν διακομιστή μεσολάβησης ο οποίος δεν απαιτεί από το πρόγραμμα πελάτη κάποια ειδική ρύθμιση. Το πρόγραμμα πελάτης δεν μπορεί να γνωρίζει πάντα αυτή τη διαδικασία. Οι δυνατότητες ενός διαφανή διακομιστή μεσολάβησης είναι ακριβώς οι ίδιες όπως και ενός απλού διακομιστή μεσολάβησης.

Στο δίκτυο μιας επιχείρησης, η χρήση ενός μη διαφανούς διακομιστή μεσολάβησης συναντά δύο προβλήματα:[7]

  • Θα πρέπει να γίνει ειδική ρύθμιση σε όλους τους υπολογιστές με αποτέλεσμα να αυξάνει το κόστος εγκατάστασης και συντήρησης
  • Η ρύθμιση αυτή μπορεί να παρακαμφθεί από τους χρήστες εσκεμμένα ή από λάθος με αποτέλεσμα π.χ. να μην φιλτραριστούν ιοί

Τα προβλήματα αυτά λύνονται με τη χρησιμοποίηση ενός μη διαφανούς διακομιστή μεσολάβησης.

Αντίστροφος διακομιστής μεσολάβησης

Επεξεργασία
 

Ως Αντίστροφος διακομιστής μεσολάβησης (αγγλ. reverse proxy) νοείται ο διακομιστής μεσολάβησης που υπάρχει πριν από κάποιον εξυπηρετητή ιστοσελίδων. Ο διακομιστής αυτός παραλαμβάνει όλα τα αιτήματα για τον διακομιστή των ιστοσελίδων και απαντά χρησιμοποιώντας προηγούμενα όμοια αιτήματα χωρίς να ξαναζητήσει τις σελίδες από τον εξυπηρετητή ιστοσελίδων. Επίσης μπορεί να χρησιμοποιηθεί για την κρυπτογράφηση των δεδομένων ώστε το πρόγραμμα κρυπτογράφησης να μην επιβαρύνει τον κύριο εξυπηρετητή. Ο αντίστροφος διακομιστής μεσολάβησης δηλαδή να επικοινωνεί με τον κύριο εξυπηρετητή με το απλό πρωτόκολλο http και με τους πελάτες να επικοινωνεί με το πιο περίπλοκο https.[8]

Ανοιχτοί διακομιστές μεσολάβησης

Επεξεργασία

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

Διακομιστής μεσολάβησης DNS

Επεξεργασία

Ένας Διακομιστής μεσολάβησης DNS ουσιαστικά μεταφέρει τις κλήσεις για DNS σε διακομιστές Υπηρεσιών DNS επιστρέφοντας τις απαντήσεις και καταγράφοντας αυτές σε προσωρινή μνήμη. Όλοι οι σύγχρονοι οικιακοί router παρέχουν έναν υποτυπώδη Διακομιστή μεσολάβησης DNS.

Παραπομπές

Επεξεργασία
  1. «What is a Proxy Server and How it Works? | GoHacking». www.gohacking.com. Αρχειοθετήθηκε από το πρωτότυπο στις 8 Νοεμβρίου 2016. Ανακτήθηκε στις 13 Ιανουαρίου 2017. 
  2. «Why» (στα Αγγλικά). squid-cache.org. 9 Μαΐου 2013. Ανακτήθηκε στις 24 Ιουλίου 2017. 
  3. «ConfigExamples» (στα Αγγλικά). squid-cache.org. 10 Μαΐου 2016. Ανακτήθηκε στις 24 Ιουλίου 2017. 
  4. «Μείωση κόστους συνδέσεων internet με χρήση open source proxy server squid». ΕΕΛ/ΛΑΚ. 28 Σεπτεμβρίου 2015. Αρχειοθετήθηκε από το πρωτότυπο στις 26 Νοεμβρίου 2020. Ανακτήθηκε στις 24 Ιουλίου 2017. 
  5. «Hypertext Transfer Protocol -- HTTP/1.1» (στα Αγγλικά). IETF. 1999. Ανακτήθηκε στις 24 Ιουλίου 2017. 
  6. «Transparent Proxy Definition». ukproxyserver.org. 1 Φεβρουαρίου 2011. Αρχειοθετήθηκε από το πρωτότυπο στις 1 Μαρτίου 2013. Ανακτήθηκε στις 14 Φεβρουαρίου 2013. 
  7. «Transparent Proxy Mode» (στα Αγγλικά). Zeroshell. Αρχειοθετήθηκε από το πρωτότυπο στις 21 Ιουλίου 2017. Ανακτήθηκε στις 24 Ιουλίου 2017. 
  8. «Forward and reverse proxies» (στα Αγγλικά). The Apache Software Foundation. Ανακτήθηκε στις 24 Ιουλίου 2017.