nikolaos_ Δημοσ. 10 Φεβρουαρίου 2014 Share Δημοσ. 10 Φεβρουαρίου 2014 Μέχρι στιγμής έχω σχηματίσει την εικόνα ότι ένας υπολογιστής Linux παρέχει όλα τα προγράμματα στους χρήστες τα οποία βρίσκονται στο /usr/bin και είναι κοινά για όλους. Οι χρήστες κατανέμονται με διάφορους τρόπους σε ομάδες μόνο και μόνο για λόγους πρόσβασης στους home φακέλους καθενός. Ωστόσο εγώ έχω απορία, αν μπορώ χωρίς LDAP, να περιορίσω την χρήση των προγραμμάτων που μπορούν να τρέξουν κάποιοι χρήστες. Θέλω συγκεκριμένα να φτιάξω μια ιεραρχία ομάδων όπου ο χρήστης θα ανήκει μόνο σε μία από αυτές και θα μπορεί να τρέχει ολοένα και περισσότερα προγράμματα όσο ανεβαίνει στην ιεραρχία. Το πρόβλημά μου είναι ότι δεν ξέρω πώς να το σχεδιάσω αυτό το πράγμα και μπλέκουν και οι άλλες ομάδες στις οποίες ανήκουν αυτόματα οι χρήστες. Π.χ. Έχω τα προγράμματα Π1, Π2, Π3, Π4 και τους χρήστες Χ, Ψ, root. Θέλω ο Χ που είναι "χαμηλά" να μπορεί να τρέχει τα Π1, Π2 αλλά όχι τα Π3, Π4. Ο Ψ είναι ψηλά, μπορεί να τρέχει τα Π1, Π2, Π3 αλλά όχι το Π4. Δηλαδή το group του Ψ είναι "υποσύνολο" του Χ. Και τα τέσσερα προγράμματα μπορεί μόνο ο root να τα τρέξει. Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
mad-proffessor Δημοσ. 10 Φεβρουαρίου 2014 Share Δημοσ. 10 Φεβρουαρίου 2014 Μία λύση είναι να κάνεις mount το /usr/bin read-only μόνο απο τον root και να δίνεις μέσω sudo δικαιώματα να τρέχουν τα προγράμματα που θες τα μέλη των group. Aλλα αυτό προυποθέτει ότι οι χρήστες είναι εξοικιωμένοι με το πως να ξεκινούν ένα πρόγραμμα απο τη κονσόλα.Αλλα αυτό έχει και τα αρνητικά του π.χ δεν είναι σωστό να τρέχεις firefox με sudo.Θα μπορούσες επίσης να βάλεις στο home directory του χρήστη τα προγράμματα που μπορούν να τρέξουν ως σοφτλινκς και να βγάλεις απο το path τους το /usr/bin. Αλλα αυτο αν κάποιος γνωρίζει λίγο απο λίνουξτο φέρνει βόλτα εύκολα. Σαφώς πιο σωστή είναι λύση domain logins(αλλά αυτό προυποθέτει ldap,κερβερο) ή selinux guests/users/xguests Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
SpirosLouis Δημοσ. 10 Φεβρουαρίου 2014 Share Δημοσ. 10 Φεβρουαρίου 2014 Για δες και τα Jails του FreeBSD αν λειτουργούν σε Linux έκδοση που έχεις..αυτά θα σε σώσουν πιστεύω αν λειτουργούν! Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
mad-proffessor Δημοσ. 10 Φεβρουαρίου 2014 Share Δημοσ. 10 Φεβρουαρίου 2014 Για δες και τα Jails του FreeBSD αν λειτουργούν σε Linux έκδοση που έχεις..αυτά θα σε σώσουν πιστεύω αν λειτουργούν! Εδώ ξεφευγουν απο jails και chroot δαίμονες που τρέχουν χωρίς shell(/bin/false) δε θα ξεφύγει χρήστης με valid shell? Εκτός κ αν οι χρήστες του είναι τελείως αρχάριοι/άσχετοι Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
nikolaos_ Δημοσ. 10 Φεβρουαρίου 2014 Μέλος Share Δημοσ. 10 Φεβρουαρίου 2014 Οι διανομές που δουλεύω είναι Ubuntu, Debian, Opensuse και Centos. Μια σκέψη που έκανα είναι να φτιάξω group για κάθε πρόγραμμα που βρίσκεται στο /usr/bin και να βάλω τους users στις ομάδες που θέλω. Όμως δεν μου κολλάει η ιεραρχία και ανησυχώ μήπως το ένα κάνει κλήση στο άλλο και γίνει μπάχαλο. Jails θα τα διαβάσω αλλά δεν έχουν εφαρμογή στην περιπτωσή μου. Δυστυχώς η αναζήτηση στο internet δίνει αποτελέσματα που δεν ξεπερνούν τα βασικά. Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
SpirosLouis Δημοσ. 10 Φεβρουαρίου 2014 Share Δημοσ. 10 Φεβρουαρίου 2014 Ναι κατά καιρούς έχεις δίκιο υπάρχουν διάφορα τέτοια κρούσματα που μπορείς να κάνεις escape από chroot. Από jails όμως ποτέ δεν έχω δει κάτι τέτοιο.(μιλώντας πάντα για το BSD και όχι για τους κλώνους του στο linux που δεν ξέρω) http://www.freebsd.org/doc/handbook/jails-intro.html Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
mad-proffessor Δημοσ. 11 Φεβρουαρίου 2014 Share Δημοσ. 11 Φεβρουαρίου 2014 Ναι κατά καιρούς έχεις δίκιο υπάρχουν διάφορα τέτοια κρούσματα που μπορείς να κάνεις escape από chroot. Από jails όμως ποτέ δεν έχω δει κάτι τέτοιο.(μιλώντας πάντα για το BSD και όχι για τους κλώνους του στο linux που δεν ξέρω) http://www.freebsd.org/doc/handbook/jails-intro.html Φίλε μου σίγουρα στο *bsd υπάρχει σαφέστερος διαχωρισμός ανάμεσα στο userland και στο kernel space και αυτό απο μόνο του είναι security advantage σε σχέση με το λίνουξ. Μη γελιέσαι όμως δεν είναι άτρωτο, ούτε unhackable λειτουργικό. Το γεγονός οτι έχει λίγους/λιγότερους χρήστες συμβάλει στη μυθοποίηση του ως ασφαλέστερου απο όλα τα *nix Τώρα για το φίλο νομίζω είναι overkill να προτείνουμε να μάθει νέο λειτουργικό απο τη στιγμή που δε ξέρει τόσο καλά ούτε το λίνουξ. Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
SpirosLouis Δημοσ. 11 Φεβρουαρίου 2014 Share Δημοσ. 11 Φεβρουαρίου 2014 Δεν προτείνουμε να μάθει freebsd, σαφώς. Απλά λέω αν υπάρχει η ίδια αξιόπιστη λύση και στο linux. Είναι πολύ κοντά στο unhackable. Το FreeBSD φτιάχνεται με πρώτη σκέψη την ασφάλεια και μετά έρχονται όλα τα άλλα. Το ότι δεν χρησιμοποιείτε από πολύ κόσμο είναι άλλο thread από μόνο του. Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
warlock9_0 Δημοσ. 11 Φεβρουαρίου 2014 Share Δημοσ. 11 Φεβρουαρίου 2014 με umask 077 και acl δεν γίνεται? Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
mphxths Δημοσ. 11 Φεβρουαρίου 2014 Share Δημοσ. 11 Φεβρουαρίου 2014 Π.χ. Έχω τα προγράμματα Π1, Π2, Π3, Π4 και τους χρήστες Χ, Ψ, root. Θέλω ο Χ που είναι "χαμηλά" να μπορεί να τρέχει τα Π1, Π2 αλλά όχι τα Π3, Π4. Ο Ψ είναι ψηλά, μπορεί να τρέχει τα Π1, Π2, Π3 αλλά όχι το Π4. Δηλαδή το group του Ψ είναι "υποσύνολο" του Χ. Και τα τέσσερα προγράμματα μπορεί μόνο ο root να τα τρέξει. Με γκρουπς δεν νομιζω να γινεται....δηλ. να ειναι καποιο γκρουπ υποσυνολο του αλλου κλπ κλπ....και μπορει το ενα να καλει το αλλο και παει λεγοντας και να γινει κωλος. Αυτο που σκεφτηκα εχει να κανει με τα PATHs. Δηλαδη φτιαχνεις εναν φακελο καπου π.χ. στο /usr/bin για παραδειγμα /usr/bin/X , /usr/bin/Y Μετα τραβαμε soft links των προγραμματων απο οπου και αν βρισκονται μεσα στους φακελους αυτους.Αναλογως με το ποιος χρηστης θελουμε να τρεχει τι. Επειτα στο .bash_profile του καθε χρηστη αφαιρουμε ολα τα paths και βαζουμε το /bin για να χει τις βασικες εντολες και το /usr/bin/X ή οποιος ειναι τελοσπαντων ο χρηστης.... Αν θελεις να "ανεβασεις" το επιπεδο του χρηστη..να τρεχει δηλ περισσοτερα προγραμματα...απλα τραβας soft links τα "νεα" προγραμματα που θες να τρεχει στον "φακελο" του. Χοντρικα ετσι το φανταζομαι ...δοκιμασε το να δουμε αν δουλευει κιολας Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
warlock9_0 Δημοσ. 12 Φεβρουαρίου 2014 Share Δημοσ. 12 Φεβρουαρίου 2014 αν φτιάξεις /usr/bin/level1 και /usr/bin/level2 και θες το δεύτερο να είναι υποσύνολο του πρώτου απλά βάζεις στο πρώτο τα παραπάνω προγράμματα και προσθέτεις και τα δύο στο path του χρήστη που θες πάντως μου κάνει λίγο μπακάλικο με access control list μου φαίνεται πιο διαχειρίσιμο πχ root@dlp:~# getfacl /home/test.txt # file: home/test.txt # owner: root # group: root user::rwx group::--- group:security:rw- mask::rw- other::--- όλα στο /usr/bin είναι root:root αλλάζεις δικαιώματα σε 700 σε όλα και μετά αρχίζεις και φτιάχνεις τα groups που θες και τους δίνεις τα δικαιώματα βάζεις και το χρήστη στο ανάλογο group και τελείωσες 2 Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
nikolaos_ Δημοσ. 12 Φεβρουαρίου 2014 Μέλος Share Δημοσ. 12 Φεβρουαρίου 2014 Το ACL διαφέρει από την ιδέα των users/groups; Ξέχασα επίσης να διευκρινήσω ότι τα περισσότερα μηχανήματα είναι ήδη στημένα, οπότε δεν μπορώ απλά να πάρω το πρόγραμμα από το ένα directory και να το ρίξω στο άλλο. Ουσιαστικά θέλω "να βάλω μια τάξη", αν καταλαβαίνετε: πολλοί χρήστες πρέπει να δουλεύουν σε ένα πρόγραμμα "απλού χρήστη", λιγότεροι να δουλεύουν σε ένα πρόγραμμα "εξειδικευμένου" (χωρίς να απαγορεύεται να τρέχουν το "απλό"), ενώ υπάρχουν και χρήστες του συστήματος για διάφορες αυτοματοποιημένες διαχειριστικές εργασίες που μπορεί να τρέχουν ό,τι να 'ναι... Στην πράξη έχω 2-3 ανθρώπους που μπαίνουν με ένα "ισχυρό" λογαριασμό (όλοι το ίδιο) με κοινό username (π.χ. admin) και 8-9 που έχουν τον "απλό", με άλλο επίσης κοινό όμως username (π.χ. user). Το root φυσικά δεν πρέπει να το έχει κανείς τους. Από την άλλη το να φτιάξω 1 user ανά πρόσωπο παρότι ενδεδειγμένο, απλά δεν γίνεται. Είναι λοιπόν σημαντικό να είναι κάτι ενσωματωμένο και σχετικά εύκολα παραμετροποιήσιμο, αν είναι να μην καταφύγω στη λύση users/groups. Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
warlock9_0 Δημοσ. 12 Φεβρουαρίου 2014 Share Δημοσ. 12 Φεβρουαρίου 2014 τo acl είναι το ίδιο πράγμα με τα user/groups αλλά εξελιγμένο αντί να έχει ένα αρχείο μόνο τα δικαιώματα για user/group/others μπορείς να ορίζεις και δικαιώματα στο συγκεκριμένο αρχείο για συγκεκριμένους χρήστες/groups κλπ Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
nikolaos_ Δημοσ. 12 Φεβρουαρίου 2014 Μέλος Share Δημοσ. 12 Φεβρουαρίου 2014 Μάλλον φαίνεται χρήσιμο το ACL, ελπίζω να βρω έναν καλό οδηγό για να διαβάσω. Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
panacync Δημοσ. 13 Φεβρουαρίου 2014 Share Δημοσ. 13 Φεβρουαρίου 2014 Μάλλον φαίνεται χρήσιμο το ACL, ελπίζω να βρω έναν καλό οδηγό για να διαβάσω. Για αρχή: http://www.yolinux.com/TUTORIALS/LinuxTutorialManagingGroups.html#ACL Αν πρόκειται για συγκεκριμένα binaries και όχι του συστήματος μπορείς να το πετύχεις και με groups per category και απλά με το usermod να δίνεις πρόσβαση σε περισσότερα από ένα groups στο χρήστη (usermod -a -G group user). Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα