johndoes Δημοσ. 21 Ιανουαρίου 2010 Share Δημοσ. 21 Ιανουαρίου 2010 Ψάχνοντας στο Ιnternet για το θέμα του τίτλου, βρήκα την παρακάτω περιγραφή: First you need to edit the network interfaces file using the following comamnd sudo vi /etc/network/interfaces or sudo gedit /etc/network/interfaces Now you need to add the simple iptables rule to the interfaces file when the internet connection starts up Simply add this under auto wlan0 or auto eth0 in the interfaces file pre-up iptables -A OUTPUT -p tcp -m owner --uid-owner username -j DROP save and exit the file. Now you need to type in the terminal with the following command sudo iptables -A OUTPUT -p tcp -m owner --uid-owner username -j DROP and switch users to the username you blocked and try to access the internet. Αυτό που δεν καταλαβαίνω είναι α) γιατί πρέπει να τοποθετήσω την εντολή στο αρχείο των interfaces β) αν θα πρέπει να τρέχω κάθε φορά την εντολή γ) πώς επαναφέρω την πρόσβαση στο Internet για τον συγκεκριμένο χρήστη. Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
twiner Δημοσ. 21 Ιανουαρίου 2010 Share Δημοσ. 21 Ιανουαρίου 2010 Αυτό που δεν καταλαβαίνω είναι α) γιατί πρέπει να τοποθετήσω την εντολή στο αρχείο των interfaces για να μπλοκάρει το χρήστη κάθε φορά (δηλ. μετά από reboot). β) αν θα πρέπει να τρέχω κάθε φορά την εντολή όχι. Δε χρειάζεται να την τρέξεις καν, αν κάνεις reboot. Πρόσεξε ότι ουσιαστικά είναι η ίδια εντολή που έγραψες και στο αρχείο. γ) πώς επαναφέρω την πρόσβαση στο Internet για τον συγκεκριμένο χρήστη. αφαιρείς αυτό που πρόσθεσες στο αρχείο interfaces. Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
jim_p Δημοσ. 21 Ιανουαρίου 2010 Share Δημοσ. 21 Ιανουαρίου 2010 Αυτο το κομματακι >[b]pre-up[/b] iptables -A OUTPUT -p tcp -m owner --uid-owner username -j DROP οριζει τι θα γινει ΠΡΙΝ ξεκινησει το εκαστοτε interface, εστω το eth0, και λεει να απορριπτεται καθε tcp συνδεση απο τον χρηστη "username". Δεν θα ηταν πιο ευκολο απλα να βγαλεις το χρηστη απο το γκρουπ netdev? Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
nske Δημοσ. 21 Ιανουαρίου 2010 Share Δημοσ. 21 Ιανουαρίου 2010 Δεν θα ηταν πιο ευκολο απλα να βγαλεις το χρηστη απο το γκρουπ netdev? Δε ξέρω πώς τα έχει οργανώσει η συγκεκριμένη διανομή αλλά φαντάζομαι ότι το group απλά χρησιμοποιείται για να ελέγχεται το ποιος θα μπορεί να αλλάξει ρυθμίσεις όπως οι διευθύνσεις των network interfaces ή οι routes, όχι και το ποιος θα μπορεί να στείλει γενικά δεδομένα στο δίκτυο, αν στο μηχάνημα έχουν οριστεί ήδη κάποιες έγκυρες τέτοιες ρυθμίσεις. Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
jim_p Δημοσ. 21 Ιανουαρίου 2010 Share Δημοσ. 21 Ιανουαρίου 2010 Μα αν δεν εισαι root, οχι ρυθμισεις δεν σε αφηνει να αλλαξεις, ουτε ενα "iface eth0 up" δεν σε αφηνει να κανεις. πχ >$ id modis uid=1000(modis) gid=1000(modis) ομάδες=1000(modis),20(dialout),24(cdrom),25(floppy),29(audio),44(video),46(plugdev),[b]111(netdev)[/b],112(vboxusers) Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
nske Δημοσ. 21 Ιανουαρίου 2010 Share Δημοσ. 21 Ιανουαρίου 2010 Ναι, αλλά αν το eth0 γίνεται up και ορίζονται κάποιες έγκυρες ρυθμίσεις από κάποιο init script, όλοι οι χρήστες θα μπορούν να κάνουν χρήση του δικτύου. Ενώ με το owner match module μπορεί κάποιος να απορρίπτει πακέτα που προέρχονται από κάποιον συγκεκριμένο user άσχετα από το παραπάνω. [ EDIT ] Α, δεν είχα καταλάβει τι εννοούσες. Δεν είναι απαραίτητο να είναι κάποιος άμεσα root για να πειράξει τέτοια πράγματα, γίνεται και με κάποιον daemon που τρέχει με δικαιώματα root, δέχεται την είσοδο των απλών χρηστών με βάση κάποιο κριτήριο (π.χ. ότι ανήκουν σε κάποιο group) και περνάει τις αντίστοιχες ρυθμίσεις. Οι διάφοροι Network Managers έτσι πρέπει να λειτουργούν. Αν θέλεις να το δοκιμάσεις βγες από το group netdev και δοκίμασε να κάνεις π.χ. ping google.com, ενώ το δίκτυο είναι up and configured. Δε νομίζω να έχουν σετάρει κάτι από πίσω ώστε να σε εμποδίσει -και τι να έχουν σετάρει, είτε μέσω IPtables και owner match θα το έκαναν είτε μέσω κάποιου MAC σαν το SElinux, ούτε το ένα ούτε το άλλο μου φαίνεται πιθανό. Ούτε το όνομα "netdev" προδίδει κάτι τέτοιο. Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
johndoes Δημοσ. 22 Ιανουαρίου 2010 Μέλος Share Δημοσ. 22 Ιανουαρίου 2010 Εμένα μ' ενδιαφέρει να μπορεί να γίνεται και δυναμικά: Αν ο χρήστης είναι ήδη συνδεδεμένος, μπορώ να δώσω την παραπάνω εντολή και να του κόψω την πρόσβαση; Αν θέλω να την αναιρέσω, ποια εντολή πρέπει να δώσω; Αν κάνει logout και αμέσως μετά ξανά login, θα παρακάμψει την εντολή (εφόσον δεν είναι στο interfaces) ή παραμένει σε ισχύ όσο λειτουργεί ο υπολογιστής; Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
apoikos Δημοσ. 22 Ιανουαρίου 2010 Share Δημοσ. 22 Ιανουαρίου 2010 Δε ξέρω πώς τα έχει οργανώσει η συγκεκριμένη διανομή αλλά φαντάζομαι ότι το group απλά χρησιμοποιείται για να ελέγχεται το ποιος θα μπορεί να αλλάξει ρυθμίσεις όπως οι διευθύνσεις των network interfaces ή οι routes, όχι και το ποιος θα μπορεί να στείλει γενικά δεδομένα στο δίκτυο, αν στο μηχάνημα έχουν οριστεί ήδη κάποιες έγκυρες τέτοιες ρυθμίσεις. Δεν είναι απαραίτητο να είναι κάποιος άμεσα root για να πειράξει τέτοια πράγματα, γίνεται και με κάποιον daemon που τρέχει με δικαιώματα root, δέχεται την είσοδο των απλών χρηστών με βάση κάποιο κριτήριο (π.χ. ότι ανήκουν σε κάποιο group) και περνάει τις αντίστοιχες ρυθμίσεις. Οι διάφοροι Network Managers έτσι πρέπει να λειτουργούν. Αν θέλεις να το δοκιμάσεις βγες από το group netdev και δοκίμασε να κάνεις π.χ. ping google.com, ενώ το δίκτυο είναι up and configured. Δε νομίζω να έχουν σετάρει κάτι από πίσω ώστε να σε εμποδίσει -και τι να έχουν σετάρει, είτε μέσω IPtables και owner match θα το έκαναν είτε μέσω κάποιου MAC σαν το SElinux, ούτε το ένα ούτε το άλλο μου φαίνεται πιθανό. Ούτε το όνομα "netdev" προδίδει κάτι τέτοιο. Το group "netdev" στο debian χρησιμοποιείται κυρίως για policy enforcement στα μηνύματα του DBus που έχουν σχέση με δικτυακές υπηρεσίες. Έτσι μόνο χρήστες μέλη του netdev μπορούν να χρησιμοποιήσουν τον network manager και διάφορες αντίστοιχες εφαρμογές. Αυτό που θέλει ο johndoes μπορεί να γίνει με το owner match του netfilter, όπως περιέγραψε ο nske. Το /etc/network/interfaces όμως *δεν* είναι το κατάλληλο μέρος για αυτές τις εντολές, εκτός αν ξέρει κανείς καλά τι κάνει. Με network manager στο σύστημα για παράδειγμα, δε νομίζω ότι θα κληθεί ποτέ η εντολή αυτή από το /etc/network/interfaces. Όσον αφορά στο δυναμικό, προφανώς και μπορείς ανά πάσα στιγμή ως root, με τις συνήθεις εντολές διαχείρισης του netfilter (iptables), αν και δεν είναι ό,τι πιο ευέλικτο υπάρχει. Αν θες να το πας ακόμα πιο μακριά, μπορείς να χρησιμοποιήσεις το NFQUEUE και, με τη βοήθεια ενός userspace helper, να μπορείς να τρέξεις ό,τι τεστς θες πάνω σε κάθε πακέτο και να αποφασίσεις αν θες να το αφήσεις να περάσει ή όχι. Αυτήν την προσέγγιση ακολουθεί το NuFW, το οποίο υπάρχει στο debian και ίσως θα είχε νόημα να του ρίξεις μια ματιά. Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
johndoes Δημοσ. 22 Ιανουαρίου 2010 Μέλος Share Δημοσ. 22 Ιανουαρίου 2010 Όσον αφορά στο δυναμικό, προφανώς και μπορείς ανά πάσα στιγμή ως root, με τις συνήθεις εντολές διαχείρισης του netfilter (iptables), αν και δεν είναι ό,τι πιο ευέλικτο υπάρχει. Τι είναι πιο ευέλικτο; Η διανομή που χρησιμοποιώ είναι ubuntu 9.04 Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.