Μονάδα mod_become επιτρέπει τον web server για να αναλάβουν τα δικαιώματα πρόσβασης του χρήστη και της ομάδας, έτσι ώστε ~ χρήστες μπορούν να κάνουν τα διαθέσιμα αρχεία στο διαδίκτυο, χωρίς να χρειάζεται να τους αναγνώσιμο από τον κόσμο σχετικά με το τοπικό σύστημα αρχείων. Αυτό μπορεί να είναι χρήσιμο για τις περιοχές με μεγάλο αριθμό των χρηστών που επιθυμούν να υποβάλουν αίτηση ελέγχου πρόσβασης αρχείων μεταξύ τους. Η ενότητα αυτή μπορεί επίσης να εφαρμοστεί σε virtual hosts, καταλόγους, και τοποθεσίες.
Όταν ο διακομιστής έχει ρυθμιστεί με το "root χρήστη" (βλέπε Ασφάλεια), τότε αυτή η ενότητα θα συμπεριφέρεται σαν η οδηγία "MaxRequestsPerChild 1" έχουν οριστεί για το διακομιστή και "KeepAlive off" ορίστηκαν για το διακομιστή και για κάθε εικονικό υποδοχής όπου mod_become οδηγία φαίνεται, γεγονός που περιορίζει ουσιαστικά το διακομιστή και αυτά τα virtual hosts στο HTTP / 1.0 συμπεριφοράς.
Ως εκ τούτου, για κάθε αίτηση, αυτή η ενότητα θα setuid () και setgid () το χειρισμό της αίτησης που βασίζεται σε μία από τις πολιτικές που περιγράφονται παρακάτω διαδικασία. Μόλις η αίτηση έχει ολοκληρωθεί, η διαδικασία θα τερματιστεί. Η μητρική server θα είναι υπεύθυνη για την ωοτοκία μια νέα διαδικασία παιδί να χειριστεί τυχόν μελλοντικές αιτήσεις.
Η πηγή μπορεί να συνταχθεί για να χρησιμοποιήσετε seteuid () και setegid () αντί του setuid () και setgid () (βλέπε την κορυφή του Makefile), αλλά ΔΕΝ είναι η προεπιλογή. Χρήση seteuid () και setegid () μπορεί να βελτιώσει επιδόσεις με αποφεύγοντας την ανάγκη να σκοτώσει τη διαδικασία παιδί Apache μεταξύ των αιτημάτων, αλλά έχει σημαντικά ζητήματα ασφάλειας. Για παράδειγμα ενότητες όπως mod_php ή mod_perl που παρέχουν τα API για να seteuid () και setegid (), θα μπορούσε να χρησιμοποιηθεί για να γίνει και πάλι χρήστης root και να κάνουμε ό, τι ποτέ θέλουν.
Ουσιαστικά κάθε μονάδα που αποτελεί μέρος του χώρου διαδικασίας Apache θα μπορούσε να επανέλθει στο χρήστη root, εφόσον κάνουν χρήση της seteuid () και setegid (). Συνιστάται ότι μέσα mod_php, mod_perl και άλλες ενότητες γλώσσα που να απενεργοποιηθούν αυτά τα API. CGIs που ξεκίνησε ως μια ξεχωριστή διαδικασία από Apache θα έπρεπε, θεωρητικά, να είναι ασφαλή, δεδομένου ότι η αποτελεσματική id χρήστη και ομάδας να γίνει η πραγματική id χρήστη και ομάδας της θυγατρικής διεργασίας και ως εκ τούτου δεν μπορεί να επανέλθει στην ρίζα (αν κατάλαβα σωστά τα πράγματα) .
Διαμόρφωση
Οι εντολές παρακάτω μπορούν να προστεθούν στο γενικό αρχείο διαμόρφωσης Apache, httpd.conf.
Ταυτότητα χρήστη
Πλαίσιο: παγκόσμια,
Αυτό δεν αποτελεί μέρος της mod_become, αλλά χρησιμοποιείται για να ενεργοποιήσετε ή να απενεργοποιήσετε τη συμπεριφορά mod_become, αφού mod_become μπορεί να λειτουργήσει μόνο όταν "root χρήστη" έχει καθοριστεί για την κύρια διαμόρφωση του διακομιστή. Χρειάζεται να καταρτίσει Apache με -DBIG_SECURITY_HOLE για να γίνει αυτό.
Γίνετε id χρήστη
Γίνετε αναγνωριστικό ομάδας
Πλαίσιο: σέρβερ,
Καθορίστε το χρήστη ή την ομάδα που θα χρησιμοποιείται από προεπιλογή. Όταν η BecomePolicy είναι χρήστης-ομάδα, τότε αυτά θα πρέπει να χρησιμοποιείται πάντα. Εάν η κύρια διαμόρφωση του διακομιστή αποτυγχάνει να ορίσετε τον προεπιλεγμένο χρήστη και της ομάδας, στη συνέχεια, μια υπηρεσία δεν είναι διαθέσιμη σφάλμα 503 και μια καταχώρηση στο αρχείο καταγραφής σφαλμάτων μπορεί να συμβεί θα πρέπει να απαιτείται οι αξίες αυτές.
BecomePolicy πολιτική
Πλαίσιο: παγκόσμια,
Καθορίστε την πολιτική που χρησιμοποιείται για να ρυθμίσετε τα ταυτότητες χρήστη και της ομάδας της θυγατρικής διεργασίας:
αρχείο
Ο χρήστης & ομάδα του αιτούμενου αρχείου χρησιμοποιούνται. Δεν προτείνουμε.
ομάδα χρηστών
Η προεπιλεγμένη ομάδα χρηστών και καθορίζονται χρησιμοποιούνται. Αυτό είναι παρόμοιο στη συμπεριφορά με το Apache πυρήνα των οδηγιών χρήσης και του Ομίλου. Αυτή είναι η προεπιλεγμένη πολιτική.
έγγραφο-root
Χρησιμοποιείται ο χρήστης και ομάδα της ρίζας εγγράφου εικονική υποδοχής ο server ή.
γονέα-κατάλογος
Χρησιμοποιείται ο χρήστης και ομάδα γονικό κατάλογο του αιτήματος. Όταν η αίτηση αντιστοιχεί σε έναν κατάλογο, τότε χρησιμοποιείται αντί της μητρικής.
BecomeRoot boolean
Πλαίσιο: παγκόσμια,
Όταν η αληθινή, mod_become θα επιτρέψουμε η διαδικασία να λειτουργήσει ως χρήστης root ή ομάδα? Αλλιώς μια 403 Forbidden λάθος και μια καταχώρηση στο αρχείο καταγραφής σφαλμάτων θα συμβεί εάν η διαδικασία αυτή προσπαθεί να γίνει root χρήστη ή την ομάδα. Εξ ορισμού αυτή έχει οριστεί ψευδείς
Απαιτήσεις :.
- Apache 1.3.x
Τα σχόλια δεν βρέθηκε