Jump to content
  • entries
    44
  • comments
    107
  • views
    4238

Πως να περιορίσετε την εμφάνιση φακέλων/αρχείων σε Shared Folders με το "Access Based Enumeration" (ABE) για Windows Server


GSimos

958 views

 Share

Καλή Χρονιά και Χρόνια Πολλά! Εύχομαι τα καλύτερα για το νέο έτος σε όλους/όλες σας!

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

Ίσως κάποιοι από εσάς να έχουν ασχοληθεί με το Novell Netware στο παρελθόν, ένα λειτουργικό σύστημα που είχε ιδιαίτερες δυνατότητες σε File Sharing, κάποτε το Novell ήταν ένα καθαρόαιμο λειτουργικό σύστημα Server εστιασμένο στις υπηρεσίες διαμοιρασμού αρχείων, πλέον συνδυάζει και άλλες δυνατότητες όπως GroupWare, collaboration κτλ, αλλά έχει χάσει την αίγλη του καθώς και μεγάλο μερίδιο της αγοράς λόγω λανθασμένων στρατηγικών κινήσεων.

Πλέον όμως το Novel βασίζεται σε Unix πυρήνα και "χτίζεται" με παρόμοιο τρόπο όπως το Mac OSX (μην παρεξηγείτε τα γραφόμενα, κάθε λειτουργικό αναπτύσσεται ανεξάρτητα), δεν έχει ξεχάσει όμως την κληρονομιά του, ίσα ίσα εξακολουθεί να αναπτύσσει καινοτόμες ιδέες, γεγονός που δεν αφορά το συγκεκριμένο άρθρο.

Το Novell λοιπόν περιόριζε τα αντικείμενα που ήταν θεάσιμα απο κάθε χρήστη όταν δεν είχε τα σχετικά δικαιώματα, πχ η Αλίκη προσπελαύνει το φάκελο "Users" στον οποίο  είχε δικαιώματα χρήσης μόνο στο φάκελο "Αλίκη"  και παρόλο που έχει και άλλους φακέλους ο "Users" αυτή βλέπει μόνο το δικό της, σκεφτείτε λίγο πόσο ασφαλές είναι αυτό από τα "περίεργα μάτια", είναι γνωστό ότι οι χρήστες είναι περίεργοι, γιατί  να τους δίνετε περισσότερα από όσα πρέπει να γνωρίζουν;

Για πολλά χρόνια η Microsoft δεχόταν αμέτρητες κριτικές και feedback απο χρήστες για τη συγκεκριμένη λειτουργία, τελικά ενσωμάτωσε τη λειτουργία αυτή από το Service Pack 1 για Windows 2003 Server καθώς και στο Windows Server 2003 R2, δεν υπήρχε όμως γραφικό ή Command Line περιβάλλον γι' αυτό και χρειάζεται να εγκατασταθεί το GUI από εδώ, η εγκατάσταση είναι πολύ απλή και δε θα υπεισέλθω περισσότερο απλά πριν ξεκινήσει θα ερωτηθείτε αν θέλετε να ενεργοποιηθεί η λειτουργία σε όλα τα shared folders ή αν θα την ενεργοποιήσετε εσείς σε όποια θέλετε, προτείνεται να επιλέξετε τη δεύτερη επιλογή, αν επιλέξετε την πρώτη επιλογή αυτό δε σημαίνει ότι θα ενεργοποιείται αυτόματα στους νέους διαμοιραζόμενους φακέλους θα ισχύσει μόνο για τους υπάρχοντες τη στιγμή της εγκατάστασης, στο Windows Server 2008 υπάρχει εγγενής υποστήριξή του ABE (Access Based Enumeration).

Το πρόβλημα που αντιμετωπίζει το ABE αφορά το γεγονός της εμφάνισης αρχείων/φακέλων σε χρήστες που δεν έχουν το δικαίωμα να τα προσπελάσουν, αυτό οφείλεται σε μια αδυναμία του συστήματος διαμοιρασμού αρχείων των Windows την οποία θα δούμε ως το παράδειγμα μας:

  • Έχουμε δημιουργήσει δυο χρήστες την Alice και το John, είναι μέλη του γκρουπ "Users"
  • Έχουμε ένα φάκελο με όνομα "Shared Folder",
  • Το διαμοιράζουμε μέσω του "Sharing" με το ίδιο όνομα και το δικαίωμα "Read" στο γκρουπ "Everyone" (υπάρχει λόγος που θέτουμε everyone στο share γιατί θα κόψουμε την πρόσβαση από το Security tab),
  • Στο Security tab, αναθέτουμε δικαιώματα (allow) "Read & Execute" στο γκρουπ "Users"
  • Δημιουργούμε ένα αρχείο με όνομα Test.txt και ένα φάκελο με όνομα "DoUCMe" και αναθέτουμε και στα δυο δικαιώματα άρνησης  "Full Control" αντίστοιχα για την Alice και το John, οπότε η Alice έχει δικαίωμα να βλέπει το Test.txt ενώ όχι το φάκελο "DoUCMe" και ο John το αντίστροφο.

Το περιβάλλον του ABE είναι πολύ λιτό, οι επιλογές του είναι ξεκάθαρες και δε θα σας δυσκολέψουν ιδιαίτερα, βασική όμως προϋπόθεση για ενεργοποιηθεί είναι η ύπαρξη ενός διαμοιρασμένου φάκελου (ελληνιστί: shared folder), σε απλούς φακέλους δεν πρόκειται να δείτε τις επιλογές, ας δούμε όμως τις επιλογές ανά έκδοση:

Windows Server 2003 & R2

Μπαίνουμε στις ιδιότητες του φακέλου "Shared Folder" του παραδείγματος, παρατηρήστε τη νέα ταμπέλα που εμφανίζεται με όνομα "Access Based Enumeration" (Φώτο παρακάτω):

  Access_Based_Enumeration_Win_2003_Properties_General

Κάνοντας κλικ βλέπουμε τις παρακάτω επιλογές, επιλέγουμε την "1" και αφήνουμε τη "2" προς το παρόν, οι εξηγήσεις τους είναι αυτονόητες (βλ. Φώτο):

Access_Based_Enumeration_Win_2003_Properties_Enable_Features

Αφού πατήσουμε Apply & OK θα συνδεθούμε στο Shared Folder απο κάποιον Client για να δούμε τι συμβαίνει με τους δυο χρήστες.

Δείτε λοιπόν τι βλέπει η Alice:

ABE_Alice_User

Και τι βλέπει ο John:

ABE_John_User

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

Windows Server 2008 & Windows Vista

Στην περίπτωση των λειτουργικών αυτών  η υποστήριξη της λειτουργία έχει ενσωματωθεί στο λειτουργικό, για να την ενεργοποιήσουμε υπάρχουν τουλάχιστον τέσσερις (4) τρόποι, θα δειχθούν οι δυο και τους υπόλοιπους μπορείτε να τους ανακαλύψετε εσείς -δεν είναι κάτι ιδιαίτερα δύσκολο!-, απλά να θυμάστε τα δικαιώματα που δίνεται στους διαμοιρασμένους φακέλους και στο Security tab.

1ος Τρόπος:

Ακολουθούμε την κλασική διαδικασία διαμοιρασμού φακέλων, δηλαδή “δεξί” κλικ στο φάκελο που θέλουμε να μοιράσουμε και επιλέγουμε “Share”. Προσθέτουμε το χρήστη “Everyone” και το σύστημα του αποδίδει δικαιώματα “Reader”, το αφήνουμε ως έχει και πατάμε “Share” (βλ. Φώτο).

ABE_2008_Share_1

Εφόσον ολοκληρωθεί η διαδικασία, πατάμε Done και ο διαμοιρασμός έχει ολοκληρωθεί, κατά τη διαδικασία του διαμοιρασμού ενεργοποιήθηκε και το Access Based Enumeration, αυτό μπορείτε να το ελέγξετε με την προσπέλαση των αρχείων/φακέλων όπως περιγράφηκε παραπάνω για τα Windows 2003 από κάποιο Client μηχανήμα, είτε από την κονσόλα “Share and Storage Management”.

Από το Start Menu πληκτρολογείτε στο “Start Search” πεδίο τη λέξη “Share” και θα εμφανιστεί στην κορυφή της λίστας η επιλογή “Share and Storage Management”, επιλέξτε την. Θα εμφανιστεί η παρακάτω κονσόλα, κάντε δεξί κλικ πάνω στο διαμοιρασμένο φάκελο, ο “Shared Folder” στην περίπτωση μας και επιλέξτε “Properties”:

ABE_2008_Check

Στη συνέχεια πατήστε το πλήκτρο “Advanced” και θα εμφανιστεί ο ακόλουθος διάλογος:

ABE_2008_Check_2

2ος Τρόπος:

Από την κονσόλα “Share and Storage Management” πατάμε απο τη δεξιά στήλη “Actions” την επιλογή “Provision Share”, στο διάλογο που θα εμφανιστεί πληκτρολογούμε τη θέση του φακέλου που θέλουμε να μοιράσουμε ή εναλλακτικά τον επιλέγουμε μέσω της επιλογής “Browse” και πατάμε “Next”.

Στο επόμενο βήμα απαντάμε “No, do not change NTFS permissions” και πατάμε “Next”.

Στο επόμενο βήμα “Share Protocols” αν δεν έχουμε εγκαταστήσει το NFS, αφήνουμε το SMB ως έχει και συνεχίζουμε.

Στο επόμενο βήμα “SMB Settings”, πατάμε το πλήκτρο “Advanced” και εμφανίζεται  διάλογος της φωτογραφίας παραπάνω (τέλος του 1ου τρόπου) χωρίς όμως να έχει επιλεγμένο το ABE, το επιλέγουμε και πατάμε OK και συνεχίζουμε.

Στα “SMB Permissions” επιλέγουμε την επιλογή “Users and groups have custom share permissions”, έπειτα πατάμε το πλήκτρο “Permissions” και επιβεβαιώνουμε ότι το Group “Everyone” έχει μόνο “Read” δικαιώματα στο “Share”, πατάμε OK και συνεχίζουμε.

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

Μπορείτε να ελέγξετε τα Share Permissions μετά την ολοκλήρωση της διαδικασίας, Το γκρουπ “Administrators” έχει πλήρη δικαιώματα και το γκρουπ “Everyone” έχει μόνο ανάγνωσης.

Να έχετε υπόψη σας ότι υπάρχει κάποιο performance penalty για πολλά αρχεία/φακέλους και ειδικά όταν γίνεται ταυτόχρονη προσπέλαση, δεν είναι όμως κάτι ανησυχητικό αυτό.

Και πάλι καλή χρονιά, ελπίζω να σας φανεί χρήσιμη η λειτουργία αυτή.

Υ.Γ. Το άρθρο για τα "Μαγειρέματα #1" δουλεύεται, θέλω να σας δείξω κάποια πράγματα που είμαι σίγουρος ότι θα εκτιμήσετε, γι' αυτό και υπάρχει καθυστέρηση.

Υ.Γ.2 Λέω να μη βάλω γνωμικό αυτή τη φορά, την επόμενη όμως σίγουρα!

Technorati Tags:
Reblog this post [with Zemanta]
 Share

9 Comments


Recommended Comments

Είδες αμα κάνει fan club ο άνθρωπος, όπου και να διαβάζουν οι fans αυτόν αναφέρουν...

 

Ο Γιώργος (Σίμος) είμαι βρε όχι ο Χρήστος..... :P

Link to comment

ααααααααααααα! γιωργο 10000 συγγνωμες !!!! Ηταν αργα οταν το "παπατρεχικο" ποντικι εκανε κλικ στο submit!!!

Προσπαθησα για edit μα , ηταν αργα! :D

Ουτως η αλλως, πολυ καλο σαν ιδεα.

Link to comment

@ThanosZ: Κανένα πρόβλημα! Καλά που γίνονται και κάτι τέτοια και διασκεδάζουμε/κοινωνικοποιούμαστε.

 

@Blackman: :)

Link to comment
Guest
Add a comment...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...