From e83a37650235d1b1940dd2b58b3c578b9d7d7ffd Mon Sep 17 00:00:00 2001 From: Manolis Kiagias Date: Sat, 11 Oct 2008 19:15:34 +0000 Subject: [PATCH] Whitespace only: Fix lots of whitespace issues in Greek Handbook's 'jails' chapter Obtained from: FreeBSD Greek Documentation Project --- .../books/handbook/jails/chapter.sgml | 690 +++++++++--------- 1 file changed, 350 insertions(+), 340 deletions(-) diff --git a/el_GR.ISO8859-7/books/handbook/jails/chapter.sgml b/el_GR.ISO8859-7/books/handbook/jails/chapter.sgml index 310f33ce19..d436071fc2 100644 --- a/el_GR.ISO8859-7/books/handbook/jails/chapter.sgml +++ b/el_GR.ISO8859-7/books/handbook/jails/chapter.sgml @@ -30,11 +30,11 @@ Σύνοψη Το κεφάλαιο αυτό εξηγεί τι είναι τα jails (φυλακές) του &os; και - πως χρησιμοποιούνται. Τα jails, που αναφέρονται ορισμένες φορές σαν - μια ενισχυμένη εναλλακτική λύση για περιβάλλοντα chroot, - είναι ένα ισχυρό εργαλείο για διαχειριστές συστημάτων, αλλά - η βασική τους χρήση μπορεί επίσης να είναι χρήσιμη σε προχωρημένους - χρήστες. + πως χρησιμοποιούνται. Τα jails, που αναφέρονται ορισμένες φορές σαν + μια ενισχυμένη εναλλακτική λύση για + περιβάλλοντα chroot, είναι ένα ισχυρό εργαλείο για + διαχειριστές συστημάτων, αλλά η βασική τους χρήση μπορεί επίσης να + είναι χρήσιμη σε προχωρημένους χρήστες. Αφού διαβάσετε αυτό το κεφάλαιο, θα ξέρετε: @@ -45,8 +45,8 @@ - Πως να φτιάξετε, να εκκινήσετε, και να σταματήσετε ένα jail. - + Πως να φτιάξετε, να εκκινήσετε, και να σταματήσετε ένα + jail. @@ -59,18 +59,18 @@ - Η σελίδα manual του &man.jail.8;. Περιέχει πλήρη αναφορά + Η σελίδα manual του &man.jail.8;. Περιέχει πλήρη αναφορά του βοηθητικού προγράμματος jail — του διαχειριστικού εργαλείου που μπορεί να χρησιμοποιηθεί στο &os; - για την εκκίνηση, διακοπή, και έλεγχο των jails. + για την εκκίνηση, διακοπή, και έλεγχο των jails. - Οι λίστες ταχυδρομείου και τα αρχεία τους. Τα αρχεία από την + Οι λίστες ταχυδρομείου και τα αρχεία τους. Τα αρχεία από την &a.questions; και άλλες λίστες που εξυπηρετούνται από τον - &a.mailman.lists; περιέχουν πλήρη οδηγό για τα jails. Είναι πάντοτε + &a.mailman.lists; περιέχουν πλήρη οδηγό για τα jails. Είναι πάντοτε ενδιαφέρον να ψάχνετε τα αρχεία ή να δημοσιεύετε νέες ερωτήσεις - στη λίστα &a.questions.name;. + στη λίστα &a.questions.name;. @@ -84,56 +84,54 @@ - &man.chroot.2; (εντολή) - + &man.chroot.2; (εντολή) + Μια κλήση συστήματος (system call) του &os;, η οποία αλλάζει - τον γονικό κατάλογο (root directory) μιας διεργασίας και όλων των - άλλων διεργασιών που εξαρτώνται από αυτή. + τον γονικό κατάλογο (root directory) μιας διεργασίας και όλων των + άλλων διεργασιών που εξαρτώνται από αυτή. - &man.chroot.2; (περιβάλλον) - + &man.chroot.2; (περιβάλλον) + Το περιβάλλον μια διεργασίας που τρέχει μέσα σε ένα - chroot. Αυτό περιλαμβάνει πόρους όπως το τμήμα - του συστήματος αρχείων που είναι ορατό, τα ID του χρήστη και της - ομάδας που είναι διαθέσιμα, καθώς και τις διεπαφές δικτύου - (network interfaces), τους μηχανισμούς IPC κλπ. - + chroot. Αυτό περιλαμβάνει πόρους όπως το τμήμα + του συστήματος αρχείων που είναι ορατό, τα ID του χρήστη και της + ομάδας που είναι διαθέσιμα, καθώς και τις διεπαφές δικτύου + (network interfaces), τους μηχανισμούς IPC κλπ. - &man.jail.8; (εντολή) - + &man.jail.8; (εντολή) + Το πρόγραμμα που σας επιτρέπει να διαχειρίζεστε το σύστημα - σας και να ξεκινάτε διεργασίες σε περιβάλλον jail. - + σας και να ξεκινάτε διεργασίες σε περιβάλλον jail. - host (σύστημα (system), διεργασία (process), χρήστης (user), - κλπ.) - + host (σύστημα (system), διεργασία (process), χρήστης (user), + κλπ.) + Το φυσικό σύστημα που φιλοξενεί και ελέγχει ένα περιβάλλον - jail. Το host system έχει πρόσβαση σε όλο το διαθέσιμο υλικό, - και μπορεί να ελέγξει διεργασίες τόσο μέσα όσο και έξω από το - περιβάλλον του jail. Μία από τις σημαντικότερες διαφορές μεταξύ - του host system και του jail είναι ότι οι περιορισμοί που - εφαρμόζονται στις διεργασίες του χρήστη root μέσα στο περιβάλλον - jail, δεν ισχύουν για τις διεργασίες στο host system. + jail. Το host system έχει πρόσβαση σε όλο το διαθέσιμο υλικό, + και μπορεί να ελέγξει διεργασίες τόσο μέσα όσο και έξω από το + περιβάλλον του jail. Μία από τις σημαντικότερες διαφορές μεταξύ + του host system και του jail είναι ότι οι περιορισμοί που + εφαρμόζονται στις διεργασίες του χρήστη root μέσα στο περιβάλλον + jail, δεν ισχύουν για τις διεργασίες στο host system. - hosted (σύστημα (system), διεργασία (process), χρήστης (user), - κλπ.) - + hosted (σύστημα (system), διεργασία (process), χρήστης (user), + κλπ.) + Μια διεργασία, ένας χρήστης ή κάποια άλλη οντότητα, του - οποίου η πρόσβαση στους πόρους του συστήματος περιορίζεται μέσα - από ένα jail. + οποίου η πρόσβαση στους πόρους του συστήματος περιορίζεται μέσα + από ένα jail. @@ -144,60 +142,59 @@ Μια και η διαχείριση ενός συστήματος μπορεί να είναι δύσκολη και περίπλοκη, αναπτύχθηκαν αρκετά εργαλεία τα οποία μπορούν να κάνουν τη - ζωή ενός διαχειριστή πολύ πιο εύκολη. Τα εργαλεία αυτά προσφέρουν + ζωή ενός διαχειριστή πολύ πιο εύκολη. Τα εργαλεία αυτά προσφέρουν κάποιες πρόσθετες δυνατότητες όσο αφορά τον τρόπο εγκατάστασης, - ρύθμισης και συντήρησης ενός συστήματος. Μια από τις εργασίες που - αναμένεται να εκτελέσει κάθε διαχειριστής συστήματος, είναι να ρυθμίσει + ρύθμισης και συντήρησης ενός συστήματος. Μια από τις εργασίες που + αναμένεται να εκτελέσει κάθε διαχειριστής συστήματος, είναι να ρυθμίσει σωστά την ασφάλεια του συστήματος, προκειμένου να προσφέρει τις υπηρεσίες για τις οποίες έχει προγραμματιστεί, χωρίς να επιτρέπει - συμβιβασμούς στην ασφάλεια. - + συμβιβασμούς στην ασφάλεια. Ένα από τα εργαλεία που μπορούν να ενισχύσουν την ασφάλεια ενός - συστήματος &os; είναι τα jails. Τα Jails + συστήματος &os; είναι τα jails. Τα Jails πρωτοεμφανίστηκαν στο &os; 4.X από τον &a.phk;, αλλά βελτιώθηκαν πολύ περισσότερο στην έκδοση &os; 5.X, προκειμένου να προσφέρουν - περισσότερες δυνατότητες και να είναι περισσότερο ευέλικτα. Η ανάπτυξή + περισσότερες δυνατότητες και να είναι περισσότερο ευέλικτα. Η ανάπτυξή τους συνεχίζεται ακόμη, με βελτιώσεις στους τομείς της ευχρηστίας, της - απόδοσης, της αξιοπιστίας και της ασφάλειας που πρέπει να παρέχουν. - + απόδοσης, της αξιοπιστίας και της ασφάλειας που πρέπει να + παρέχουν. - Τι Είναι Ένα Jail + Τι Είναι Ένα Jail Τα λειτουργικά συστήματα τύπου BSD, παρείχαν το &man.chroot.2; από - την εποχή του 4.2BSD. Η εντολή &man.chroot.8; μπορεί να - χρησιμοποιηθεί για να αλλάξει τον γονικό κατάλογο μιας ομάδας - διεργασιών, δημιουργώντας ένα ασφαλές περιβάλλον, ξεχωριστό από το - υπόλοιπο σύστημα. Όσες διεργασίες δημιουργούνται σε έναν τέτοιο - περιβάλλον, δεν έχουν πρόσβαση σε αρχεία και πόρους έξω από αυτό. + την εποχή του 4.2BSD. Η εντολή &man.chroot.8; μπορεί να + χρησιμοποιηθεί για να αλλάξει τον γονικό κατάλογο μιας ομάδας + διεργασιών, δημιουργώντας ένα ασφαλές περιβάλλον, ξεχωριστό από το + υπόλοιπο σύστημα. Όσες διεργασίες δημιουργούνται σε έναν τέτοιο + περιβάλλον, δεν έχουν πρόσβαση σε αρχεία και πόρους έξω από αυτό. Για αυτό το λόγο, αν μια υπηρεσία τρέχει μέσα σε ένα τέτοιο - περιβάλλον, και κάποιος εισβολέας καταφέρει να διεισδύσει σε αυτή, δε - θα του επιτραπεί η πρόσβαση στο υπόλοιπο σύστημα. + περιβάλλον, και κάποιος εισβολέας καταφέρει να διεισδύσει σε αυτή, δε + θα του επιτραπεί η πρόσβαση στο υπόλοιπο σύστημα. Η εντολή &man.chroot.8; είναι πολύ καλή για απλές εργασίες οι οποίες - δε χρειάζονται να είναι πολύ ευέλικτες ή να διαθέτουν πολύπλοκα και - προηγμένα χαρακτηριστικά. Ωστόσο, από την αρχή της ιδέας του chroot, - βρέθηκαν αρκετοί τρόποι για να μπορέσει κάποιος να ξεφύγει από το - περιβάλλον αυτό. Παρ' όλο που έχουν διορθωθεί πολλά σφάλματα στις + δε χρειάζονται να είναι πολύ ευέλικτες ή να διαθέτουν πολύπλοκα και + προηγμένα χαρακτηριστικά. Ωστόσο, από την αρχή της ιδέας του chroot, + βρέθηκαν αρκετοί τρόποι για να μπορέσει κάποιος να ξεφύγει από το + περιβάλλον αυτό. Παρ' όλο που έχουν διορθωθεί πολλά σφάλματα στις πρόσφατες εκδόσεις του πυρήνα του &os;, ήταν ξεκάθαρο ότι η - &man.chroot.2; δεν ήταν η ιδανική λύση για την ασφάλιση υπηρεσιών. - Έπρεπε να υλοποιηθεί ένα νέο υποσύστημα. + &man.chroot.2; δεν ήταν η ιδανική λύση για την ασφάλιση υπηρεσιών. + Έπρεπε να υλοποιηθεί ένα νέο υποσύστημα. Αυτός είναι ένας από τους κύριους λόγους για την ανάπτυξη των jails. Τα jails βελτίωσαν με διάφορους τρόπους την ιδέα του παραδοσιακού - περιβάλλοντος του &man.chroot.2;. Στο τυπικό περιβάλλον του + περιβάλλοντος του &man.chroot.2;. Στο τυπικό περιβάλλον του &man.chroot.2;, οι διεργασίες περιορίζονται μόνος ως προς το μέρος - του συστήματος αρχείων όπου μπορούν να έχουν πρόσβαση. Οι υπόλοιποι - πόροι του συστήματος (όπως οι χρήστες, οι τρέχοντες διεργασίες, το - υποσύστημα δικτύωσης) είναι κοινόχρηστοι μεταξύ των διεργασιών του - περιβάλλοντος chroot και των διεργασιών του host system. Τα jails - επεκτείνουν αυτό το μοντέλο, με την εικονικοποίηση όχι μόνο της - πρόσβασης στο σύστημα αρχείων, αλλά επίσης των χρηστών, του - υποσυστήματος δικτύωσης του πυρήνα του &os; και μερικών ακόμη - πραγμάτων. Περισσότερα για τις διαθέσιμες εντολές που μπορούν να - χρησιμοποιηθούν για τη ρύθμιση και τον έλεγχο ενός περιβάλλοντος jail + του συστήματος αρχείων όπου μπορούν να έχουν πρόσβαση. Οι υπόλοιποι + πόροι του συστήματος (όπως οι χρήστες, οι τρέχοντες διεργασίες, το + υποσύστημα δικτύωσης) είναι κοινόχρηστοι μεταξύ των διεργασιών του + περιβάλλοντος chroot και των διεργασιών του host system. Τα jails + επεκτείνουν αυτό το μοντέλο, με την εικονικοποίηση όχι μόνο της + πρόσβασης στο σύστημα αρχείων, αλλά επίσης των χρηστών, του + υποσυστήματος δικτύωσης του πυρήνα του &os; και μερικών ακόμη + πραγμάτων. Περισσότερα για τις διαθέσιμες εντολές που μπορούν να + χρησιμοποιηθούν για τη ρύθμιση και τον έλεγχο ενός περιβάλλοντος jail μπορείτε να βρείτε στο . Το Jail έχει τέσσερα κύρια στοιχεία: @@ -205,48 +202,48 @@ Έναν κατάλογο με δική του δομή — το αρχικό σημείο - στο οποίο εισέρχεται ένα jail. Από τη στιγμή που μια διεργασία - βρίσκεται μέσα σε ένα jail, δεν επιτρέπεται να βγει έξω από τον - κατάλογο αυτό. Τα προβλήματα που ταλαιπωρούσαν τον σχεδιασμό του - &man.chroot.2; δεν επηρεάζουν τα jails του &os;. + στο οποίο εισέρχεται ένα jail. Από τη στιγμή που μια διεργασία + βρίσκεται μέσα σε ένα jail, δεν επιτρέπεται να βγει έξω από τον + κατάλογο αυτό. Τα προβλήματα που ταλαιπωρούσαν τον σχεδιασμό του + &man.chroot.2; δεν επηρεάζουν τα jails του &os;. Ένα hostname (όνομα συστήματος) — το hostname το οποίο - θα χρησιμοποιηθεί μέσα στο jail. Τα jails χρησιμοποιούνται - κυρίως για την εξυπηρέτηση δικτυακών υπηρεσιών, + θα χρησιμοποιηθεί μέσα στο jail. Τα jails χρησιμοποιούνται + κυρίως για την εξυπηρέτηση δικτυακών υπηρεσιών, επομένως η ύπαρξη ενός χαρακτηριστικού hostname που να - περιγράφει ταυτόχρονα και τη χρήση του, μπορεί να βοηθήσει αρκετά - τον διαχειριστή συστήματος. + περιγράφει ταυτόχρονα και τη χρήση του, μπορεί να βοηθήσει αρκετά + τον διαχειριστή συστήματος. Μια διεύθυνση IP — αυτή η διεύθυνση - αντιστοιχεί σε ένα jail και δεν μπορεί να αλλάξει κατά τη - διάρκεια της ζωής του. Η διεύθυνση IP ενός jail είναι συνήθως - μία διεύθυνση τύπου alias για μια ήδη υπάρχουσα διεπαφή δικτύου - (network interface), αλλά κάτι τέτοιο δεν είναι απαραίτητο. + αντιστοιχεί σε ένα jail και δεν μπορεί να αλλάξει κατά τη + διάρκεια της ζωής του. Η διεύθυνση IP ενός jail είναι συνήθως + μία διεύθυνση τύπου alias για μια ήδη υπάρχουσα διεπαφή δικτύου + (network interface), αλλά κάτι τέτοιο δεν είναι απαραίτητο. Μία εντολή — η διαδρομή προς ένα εκτελέσιμο το οποίο θα - εκτελείται μέσα στο jail. Η διαδρομή αυτή είναι σχετική ως προς - τον γονικό κατάλογο του περιβάλλοντος του jail, και μπορεί να - διαφέρει πολύ από jail σε jail ανάλογα με το συγκεκριμένο + εκτελείται μέσα στο jail. Η διαδρομή αυτή είναι σχετική ως προς + τον γονικό κατάλογο του περιβάλλοντος του jail, και μπορεί να + διαφέρει πολύ από jail σε jail ανάλογα με το συγκεκριμένο περιβάλλον. Εκτός αυτών, τα jails μπορούν να έχουν τις δικές τους ομάδες - χρηστών και τον δικό τους χρήστη root. Φυσικά, ο - έλεγχος που έχει ο χρήστης root του jail, - περιορίζεται μέσα στο περιβάλλον του jail, και από την + χρηστών και τον δικό τους χρήστη root. Φυσικά, ο + έλεγχος που έχει ο χρήστης root του jail, + περιορίζεται μέσα στο περιβάλλον του jail, και από την οπτική γωνία του host system, ο χρήστης αυτός δεν είναι παντοδύναμος. Επιπλέον, ο χρήστης root του jail, δεν μπορεί - να εκτελέσει κρίσιμες εργασίες στο σύστημα έξω από το περιβάλλον του - &man.jail.8;. Περισσότερες πληροφορίες σχετικά με τις δυνατότητες και - τους περιορισμούς του root θα βρείτε στο - . + να εκτελέσει κρίσιμες εργασίες στο σύστημα έξω από το περιβάλλον του + &man.jail.8;. Περισσότερες πληροφορίες σχετικά με τις δυνατότητες και + τους περιορισμούς του root θα βρείτε στο + . @@ -258,7 +255,7 @@ ένα πραγματικό σύστημα &os;, και τα service jails, τα οποία χρησιμοποιούνται για μια εφαρμογή ή υπηρεσία, που πιθανόν εκτελείται με ειδικά προνόμια. Αυτός είναι ένας νοητικός διαχωρισμός - και δεν επιδρά στη διαδικασία δημιουργίας ενός jail. Η σελίδα manual + και δεν επιδρά στη διαδικασία δημιουργίας ενός jail. Η σελίδα manual του &man.jail.8; περιέχει κατατοπιστικές πληροφορίες για τη διαδικασία δημιουργίας ενός jail: @@ -274,30 +271,30 @@ Ο καλύτερος τρόπος για να ξεκινήσετε είναι με την επιλογή μιας - θέσης (διαδρομής) για το jail σας. Εκεί θα βρίσκονται αποθηκευμένα - τα αρχεία του jail όσο αφορά το σύστημα σας. Μια καλή ιδέα είναι - το /usr/jail/jailname, + θέσης (διαδρομής) για το jail σας. Εκεί θα βρίσκονται αποθηκευμένα + τα αρχεία του jail όσο αφορά το σύστημα σας. Μια καλή ιδέα είναι + το /usr/jail/jailname, όπου jailname το hostname με το οποίο θα αναγνωρίζεται το jail. Το σύστημα αρχείων - /usr/ έχει συνήθως αρκετό χώρο - για το σύστημα αρχείων του jail, το οποίο, για ένα - complete jail είναι ουσιαστικά + /usr/ έχει συνήθως αρκετό + χώρο για το σύστημα αρχείων του jail, το οποίο, για ένα + complete jail είναι ουσιαστικά ένας κλώνος κάθε αρχείου του βασικού συστήματος μια προεπιλεγμένης - εγκατάστασης του &os;. + εγκατάστασης του &os;. Η εντολή αυτή θα εμπλουτίσει τον κατάλογο που επιλέξατε για το - jail με όλα τα απαραίτητα αρχεία, βιβλιοθήκες, σελίδες βοήθειας κλπ. + jail με όλα τα απαραίτητα αρχεία, βιβλιοθήκες, σελίδες βοήθειας κλπ. Όλα γίνονται με τον τυπικό τρόπο του &os; — αρχικά τα πάντα μεταγλωττίζονται και στη συνέχεια εγκαθίστανται στη - διαδρομή που έχετε επιλέξει. + διαδρομή που έχετε επιλέξει. Το distribution target του make εγκαθιστά όλα τα αρχεία ρυθμίσεων - που απαιτούνται. Με απλά λόγια, εγκαθιστά κάθε αρχείο από το + που απαιτούνται. Με απλά λόγια, εγκαθιστά κάθε αρχείο από το /usr/src/etc/ στον κατάλογο /etc του περιβάλλοντος jail: $D/etc/. @@ -305,29 +302,29 @@ Δε χρειάζεται να προσαρτήσετε το &man.devfs.8; στο περιβάλλον - του jail. Από την άλλη όμως, όλες, ή σχεδόν όλες οι εφαρμογές - χρειάζονται πρόσβαση σε τουλάχιστον μία συσκευή, αναλόγως με τον - σκοπό της εφαρμογής. Είναι πολύ σημαντικό να ελέγχεται η πρόσβαση - στις συσκευές μέσα σε ένα jail, καθώς λανθασμένες ρυθμίσεις + του jail. Από την άλλη όμως, όλες, ή σχεδόν όλες οι εφαρμογές + χρειάζονται πρόσβαση σε τουλάχιστον μία συσκευή, αναλόγως με τον + σκοπό της εφαρμογής. Είναι πολύ σημαντικό να ελέγχεται η πρόσβαση + στις συσκευές μέσα σε ένα jail, καθώς λανθασμένες ρυθμίσεις μπορεί να επιτρέψουν σε κάποιον εισβολέα να κάνει - άσχημα παιχνίδια μέσα στο jail. + άσχημα παιχνίδια μέσα στο jail. Ο έλεγχος του &man.devfs.8; γίνεται μέσω ενός συνόλου κανόνων οι - οποίοι περιγράφονται στις σελίδες manual του &man.devfs.8; και του - &man.devfs.conf.5;. + οποίοι περιγράφονται στις σελίδες manual του &man.devfs.8; και του + &man.devfs.conf.5;. Από την στιγμή που έχει εγκατασταθεί ένα jail, μπορεί να εκκινηθεί - με τη χρήση της εντολής &man.jail.8;. Η &man.jail.8; δέχεται τέσσερις + με τη χρήση της εντολής &man.jail.8;. Η &man.jail.8; δέχεται τέσσερις υποχρεωτικές παραμέτρους οι οποίες περιγράφονται στο - . Μπορείτε να δώσετε και άλλες παραμέτρους, + . Μπορείτε να δώσετε και άλλες παραμέτρους, π.χ., για να εκτελέσετε μια διεργασία στο περιβάλλον του jail με τις άδειες ενός συγκεκριμένου χρήστη. Η παράμετρος - εξαρτάται από τον τύπο του jail. Για ένα + εξαρτάται από τον τύπο του jail. Για ένα εικονικό σύστημα, το /etc/rc είναι μια καλή επιλογή, μια και στην ουσία θα κλωνοποιήσει - την διαδικασία εκκίνησης ενός πραγματικού συστήματος &os;. Για ένα + την διαδικασία εκκίνησης ενός πραγματικού συστήματος &os;. Για ένα service jail, η παράμετρος εξαρτάται από την υπηρεσία ή την εφαρμογή που θα τρέχει μέσα στο jail. @@ -338,7 +335,7 @@ Η λίστα με τα jails που θέλετε να ξεκινάνε κατά την εκκίνηση θα - πρέπει να προστεθούν στο αρχείο &man.rc.conf.5;: + πρέπει να προστεθούν στο αρχείο &man.rc.conf.5;: jail_enable="YES" # Set to NO to disable starting of any jails jail_list="www" # Space separated list of names of jails @@ -346,8 +343,8 @@ jail_list="www" # Space separated list of names o Για κάθε jail που υπάρχει στο jail_list, θα - πρέπει να προστεθεί μια ομάδα από ρυθμίσεις στο &man.rc.conf.5;, οι - οποίες θα το περιγράφουν: + πρέπει να προστεθεί μια ομάδα από ρυθμίσεις στο &man.rc.conf.5;, οι + οποίες θα το περιγράφουν: jail_www_rootdir="/usr/jail/www" # jail's root directory jail_www_hostname="www.example.org" # jail's hostname @@ -357,21 +354,21 @@ jail_www_devfs_ruleset="www_rulesetΗ προεπιλεγμένη εκκίνηση του jail μέσω του &man.rc.conf.5;, θα ξεκινήσει το script του jail - /etc/rc, το οποίο υποθέτει ότι το jail είναι - ένα ολοκληρωμένο εικονικό σύστημα. Για service jails, η - προεπιλεγμένη εκκίνηση πρέπει να αλλάξει, ορίζοντας κατάλληλα την + /etc/rc, το οποίο υποθέτει ότι το jail είναι + ένα ολοκληρωμένο εικονικό σύστημα. Για service jails, η + προεπιλεγμένη εκκίνηση πρέπει να αλλάξει, ορίζοντας κατάλληλα την επιλογή jail_jailname_exec_start. Για πλήρη λίστα των διαθέσιμων επιλογών, δείτε το - &man.rc.conf.5;. + &man.rc.conf.5;. Το script /etc/rc.d/jail μπορεί να χρησιμοποιηθεί για να ξεκινήσει ή να σταματήσει κάποιο jail - χειροκίνητα. Πρέπει όμως να υπάρχει η αντίστοιχη καταχώρηση στο + χειροκίνητα. Πρέπει όμως να υπάρχει η αντίστοιχη καταχώρηση στο rc.conf: &prompt.root; /etc/rc.d/jail start www @@ -383,8 +380,7 @@ jail_www_devfs_ruleset="www_ruleset + βοηθητικού προγράμματος &man.jexec.8; έξω από αυτό: &prompt.root; sh /etc/rc.shutdown @@ -397,68 +393,60 @@ jail_www_devfs_ruleset="www_rulesetΥπάρχουν αρκετές επιλογές που μπορούν να εφαρμοστούν σε ένα jail, καθώς και διάφοροι τρόποι για να συνδυαστεί ένα σύστημα &os; με jails - προκειμένου να παράγουν εφαρμογές υψηλότερου επιπέδου. Η ενότητα αυτή - παρουσιάζει: - + προκειμένου να παράγουν εφαρμογές υψηλότερου επιπέδου. Η ενότητα αυτή + παρουσιάζει: Μερικές από τις διαθέσιμες επιλογές για την ρύθμιση της - συμπεριφοράς και των περιορισμών ασφαλείας που υλοποιούνται από την - εγκατάσταση ενός jail. - + συμπεριφοράς και των περιορισμών ασφαλείας που υλοποιούνται από την + εγκατάσταση ενός jail. Μερικές εφαρμογές υψηλού επιπέδου για τη διαχείριση jails, οι οποίες είναι διαθέσιμες μέσω της συλλογής των Ports του &os; και - μπορούν να χρησιμοποιηθούν στην υλοποίηση ολοκληρωμένων λύσεων με - τη χρήση jails. + μπορούν να χρησιμοποιηθούν στην υλοποίηση ολοκληρωμένων λύσεων με + τη χρήση jails. Εργαλεία συστήματος του &os; για τη ρύθμιση jails Λεπτομερής ρύθμιση ενός jail γίνεται κατά κύριο λόγο μέσω των - μεταβλητών του &man.sysctl.8;. Υπάρχει ένα ειδικό subtree του sysctl + μεταβλητών του &man.sysctl.8;. Υπάρχει ένα ειδικό subtree του sysctl το οποίο αποτελεί τη βάση για την οργάνωση όλων των σχετικών - επιλογών: πρόκειται για την ιεραρχία επιλογών πυρήνα - security.jail.*. Παρακάτω θα βρείτε μια λίστα με - τα κύρια sysctl που σχετίζονται με κάποιο jail καθώς και τις - προεπιλεγμένες τιμές τους. Τα ονόματα μάλλον εξηγούν από μόνα τους + επιλογών: πρόκειται για την ιεραρχία επιλογών πυρήνα + security.jail.*. Παρακάτω θα βρείτε μια λίστα με + τα κύρια sysctl που σχετίζονται με κάποιο jail καθώς και τις + προεπιλεγμένες τιμές τους. Τα ονόματα μάλλον εξηγούν από μόνα τους την αντίστοιχη λειτουργία, αλλά για περισσότερες πληροφορίες μπορείτε - να δείτε τις σελίδες βοήθειας των &man.jail.8; και &man.sysctl.8;. - + να δείτε τις σελίδες βοήθειας των &man.jail.8; + και &man.sysctl.8;. - security.jail.set_hostname_allowed: - 1 + security.jail.set_hostname_allowed: 1 - security.jail.socket_unixiproute_only: - 1 + security.jail.socket_unixiproute_only: 1 - security.jail.sysvipc_allowed: - 0 + security.jail.sysvipc_allowed: 0 - security.jail.enforce_statfs: - 2 + security.jail.enforce_statfs: 2 - security.jail.allow_raw_sockets: - 0 + security.jail.allow_raw_sockets: 0 - security.jail.chflags_allowed: - 0 + security.jail.chflags_allowed: 0 @@ -467,41 +455,41 @@ jail_www_devfs_ruleset="www_ruleset Οι μεταβλητές αυτές μπορούν να χρησιμοποιηθούν από τον - διαχειριστή του host system + διαχειριστή του host system προκειμένου να προσθέσει ή να αφαιρέσει περιορισμούς οι οποίοι - υπάρχουν αρχικά στον χρήστη root. Υπάρχουν όμως - και κάποιοι περιορισμοί οι οποίοι δεν μπορούν να αφαιρεθούν. - Ο χρήστης root δεν επιτρέπεται να προσαρτά ή να - απο-προσαρτά συστήματα αρχείων μέσα από ένα &man.jail.8;. Ο + υπάρχουν αρχικά στον χρήστη root. Υπάρχουν όμως + και κάποιοι περιορισμοί οι οποίοι δεν μπορούν να αφαιρεθούν. + Ο χρήστης root δεν επιτρέπεται να προσαρτά ή να + απο-προσαρτά συστήματα αρχείων μέσα από ένα &man.jail.8;. Ο root μέσα σε ένα jail δεν επιτρέπεται να - φορτώσει ή να αποφορτώσει τους κανόνες (rulesets) του &man.devfs.8;, - το firewall, και διάφορες άλλες εργασίες διαχείρισης οι οποίες - χρειάζονται τροποποίηση των δεδομένων του πυρήνα, όπως για παράδειγμα + φορτώσει ή να αποφορτώσει τους κανόνες (rulesets) του &man.devfs.8;, + το firewall, και διάφορες άλλες εργασίες διαχείρισης οι οποίες + χρειάζονται τροποποίηση των δεδομένων του πυρήνα, όπως για παράδειγμα ο ορισμός του securelevel του πυρήνα. Το βασικό σύστημα του &os; περιέχει τα βασικά εργαλεία για τη - προβολή πληροφοριών σχετικά με τα ενεργά jails, και επίσης για την - ανάθεση συγκεκριμένων εντολών διαχείρισης σε κάποιο jail. Οι εντολές - &man.jls.8; και &man.jexec.8; αποτελούν μέρος του βασικού συστήματος - του &os;, και μπορούν να χρησιμοποιηθούν για να τις παρακάτω απλές - εργασίες: + προβολή πληροφοριών σχετικά με τα ενεργά jails, και επίσης για την + ανάθεση συγκεκριμένων εντολών διαχείρισης σε κάποιο jail. Οι εντολές + &man.jls.8; και &man.jexec.8; αποτελούν μέρος του βασικού συστήματος + του &os;, και μπορούν να χρησιμοποιηθούν για να τις παρακάτω απλές + εργασίες: Προβολή λίστας των ενεργών jails και τον αντίστοιχων - χαρακτηριστικών τους - jail identifier (JID), + χαρακτηριστικών τους - jail identifier (JID), διεύθυνση IP, hostname και path. Προσκόλληση σε κάποιο ενεργό jail, από το host system, και - εκτέλεση κάποιας εντολής μέσα στο jail ή εκτέλεση εργασιών - διαχείρισης μέσα στο jail. Κάτι τέτοιο είναι ιδιαίτερα χρήσιμο - όταν ο χρήστης root επιθυμεί να τερματίσει - με ασφάλεια κάποιο jail. Μπορεί επίσης να χρησιμοποιηθεί η εντολή - &man.jexec.8; για την εκτέλεση κάποιου shell μέσα στο jail - προκειμένου να εκτελεστούν εργασίες διαχείρισης, για παράδειγμα: - + εκτέλεση κάποιας εντολής μέσα στο jail ή εκτέλεση εργασιών + διαχείρισης μέσα στο jail. Κάτι τέτοιο είναι ιδιαίτερα χρήσιμο + όταν ο χρήστης root επιθυμεί να τερματίσει + με ασφάλεια κάποιο jail. Μπορεί επίσης να χρησιμοποιηθεί η εντολή + &man.jexec.8; για την εκτέλεση κάποιου shell μέσα στο jail + προκειμένου να εκτελεστούν εργασίες διαχείρισης, για + παράδειγμα: &prompt.root; jexec 1 tcsh @@ -509,15 +497,15 @@ jail_www_devfs_ruleset="www_ruleset - Εργαλεία διαχείρισης υψηλού επιπέδου στη συλλογή Ports του &os; - + Εργαλεία διαχείρισης υψηλού επιπέδου στη συλλογή Ports + του &os; - Ανάμεσα στις διάφορες εφαρμογές τρίτων κατασκευαστών για τη - διαχείριση των jails, ένα από τα ποιο ολοκληρωμένα και χρήσιμα πακέτα - είναι το sysutils/jailutils. - Αποτελεί ένα σύνολο μικρών εφαρμογών - οι οποίες συνεισφέρουν στη διαχείριση του &man.jail.8;. Για - περισσότερες πληροφορίες, δείτε στον δικτυακό του τόπο. + Ανάμεσα στις διάφορες εφαρμογές τρίτων κατασκευαστών για τη + διαχείριση των jails, ένα από τα ποιο ολοκληρωμένα και χρήσιμα πακέτα + είναι το sysutils/jailutils. + Αποτελεί ένα σύνολο μικρών εφαρμογών + οι οποίες συνεισφέρουν στη διαχείριση του &man.jail.8;. Για + περισσότερες πληροφορίες, δείτε στον δικτυακό του τόπο. @@ -539,46 +527,44 @@ jail_www_devfs_ruleset="www_rulesetService Jails Η ενότητα αυτή είναι βασισμένη στην ιδέα που παρουσιάστηκε αρχικά - από τον &a.simon; στο , καθώς και σε - ένα ανανεωμένο άρθρο του Ken Tom locals@gmail.com. - Στην ενότητα αυτή θα σας δείξουμε πως να στήσετε ένα σύστημα &os; το - οποίο να διαθέτει ένα επιπλέον επίπεδο ασφάλειας, με τη χρήση του - &man.jail.8;. Υποθέτουμε ότι το σύστημα τρέχει τουλάχιστον RELENG_6_0 - και ότι έχετε κατανοήσει όλες τις προηγούμενες πληροφορίες του - κεφαλαίου. + από τον &a.simon; στο , καθώς και + σε ένα ανανεωμένο άρθρο του Ken Tom locals@gmail.com. + Στην ενότητα αυτή θα σας δείξουμε πως να στήσετε ένα σύστημα &os; το + οποίο να διαθέτει ένα επιπλέον επίπεδο ασφάλειας, με τη χρήση του + &man.jail.8;. Υποθέτουμε ότι το σύστημα τρέχει τουλάχιστον RELENG_6_0 + και ότι έχετε κατανοήσει όλες τις προηγούμενες πληροφορίες του + κεφαλαίου. - Σχεδιασμός + Σχεδιασμός Ένα από τα σημαντικότερα προβλήματα με τα jails είναι η - διαχείριση της διαδικασίας αναβαθμίσεων. Αυτό τείνει να είναι - πρόβλημα διότι το κάθε jail πρέπει να δημιουργηθεί από την αρχή σε - κάθε αναβάθμιση. Συνήθως δεν είναι πρόβλημα αν έχετε ένα μόνο jail, - μια και πρόκειται για σχετικά απλή διαδικασία, αλλά γίνεται - κουραστική και χρονοβόρα αν έχετε πολλά jails. + διαχείριση της διαδικασίας αναβαθμίσεων. Αυτό τείνει να είναι + πρόβλημα διότι το κάθε jail πρέπει να δημιουργηθεί από την αρχή σε + κάθε αναβάθμιση. Συνήθως δεν είναι πρόβλημα αν έχετε ένα μόνο jail, + μια και πρόκειται για σχετικά απλή διαδικασία, αλλά γίνεται + κουραστική και χρονοβόρα αν έχετε πολλά jails. Οι παρακάτω ρυθμίσεις προϋποθέτουν εμπειρία με το &os; και τη - χρήση των διάφορων χαρακτηριστικών του. Εάν τα παρακάτω βήματα + χρήση των διάφορων χαρακτηριστικών του. Εάν τα παρακάτω βήματα σας φαίνονται πολύ περίπλοκα, είναι καλύτερα να ρίξετε μια ματιά σε κάτι ποιο απλό όπως το - sysutils/ezjail, το οποίο - παρέχει έναν ευκολότερο τρόπο διαχείρισης των jails του &os; και - δεν είναι τόσο εξειδικευμένο όσο οι παρακάτω ρυθμίσεις. - + sysutils/ezjail, το οποίο + παρέχει έναν ευκολότερο τρόπο διαχείρισης των jails του &os; και + δεν είναι τόσο εξειδικευμένο όσο οι παρακάτω ρυθμίσεις. Η ιδέα αυτή έχει παρουσιαστεί για να λύσει τέτοιου είδους - προβλήματα, με την βοήθεια της κοινής χρήσης όσο το δυνατόν - περισσότερων αρχείων μεταξύ των jails, με έναν ασφαλή + προβλήματα, με την βοήθεια της κοινής χρήσης όσο το δυνατόν + περισσότερων αρχείων μεταξύ των jails, με έναν ασφαλή όμως τρόπο — χρησιμοποιώντας προσαρτήσεις τύπου - &man.mount.nullfs.8; και μόνο για ανάγνωση (read only) + &man.mount.nullfs.8; και μόνο για ανάγνωση (read only) έτσι ώστε η αναβάθμιση να είναι ευκολότερη, και η χρήση μεμονωμένων - jails για κάθε υπηρεσία να καθίσταται επιθυμητή. Επιπλέον, παρέχει - έναν απλό τρόπο για να προσθέσετε και να αφαιρέσετε jails όπως - επίσης και να τα αναβαθμίσετε. - + jails για κάθε υπηρεσία να καθίσταται επιθυμητή. Επιπλέον, παρέχει + έναν απλό τρόπο για να προσθέσετε και να αφαιρέσετε jails όπως + επίσης και να τα αναβαθμίσετε. Παραδείγματα υπηρεσιών τέτοιου τύπου: ένας @@ -592,78 +578,88 @@ jail_www_devfs_ruleset="www_ruleset Δημιουργία απλών και κατανοητών jails. Αυτό σημαίνει ότι δεν θα τρέξουμε ένα - πλήρες installworld σε κάθε jail. + πλήρες installworld σε κάθε jail. + Εύκολη προσθήκη και διαγραφή jails. + Εύκολη αναβάθμιση υπαρχόντων jails. + - Δυνατότητα δημιουργίας προσαρμοσμένου τμήματος του &os;. - + Δυνατότητα δημιουργίας προσαρμοσμένου τμήματος + του &os;. + Όσο περισσότερη ασφάλεια είναι δυνατόν, με ελαχιστοποίηση - της πιθανότητας κακόβουλης χρήσης. + της πιθανότητας κακόβουλης χρήσης. + Εξοικονόμηση χώρου και inodes. Όπως έχουμε ήδη πει, ο σχεδιασμός αυτός εξαρτάται ιδιαίτερα από - την ύπαρξη ενός αρχικού template στο οποίο δεν επιτρέπεται η - εγγραφή δεδομένων (γνωστό ως nullfs) και - το οποίο πρέπει να έχει προσαρτηθεί σε κάθε jail, όπως επίσης και - στην ύπαρξη για κάθε jail μιας συσκευής που να επιτρέπει τόσο την - ανάγνωση όσο και την εγγραφή. Μια τέτοια συσκευή μπορεί να είναι - κάποιος ξεχωριστός φυσικός δίσκος, μια κατάτμηση, ή κάποια συσκευή - vnode &man.md.4;. Στο παρακάτω παράδειγμα, θα χρησιμοποιήσουμε - προσαρτήσεις τύπου nullfs στις οποίες - θα επιτρέπεται εγγραφή και ανάγνωση. + την ύπαρξη ενός αρχικού template στο οποίο δεν επιτρέπεται η + εγγραφή δεδομένων (γνωστό ως nullfs) και + το οποίο πρέπει να έχει προσαρτηθεί σε κάθε jail, όπως επίσης και + στην ύπαρξη για κάθε jail μιας συσκευής που να επιτρέπει τόσο την + ανάγνωση όσο και την εγγραφή. Μια τέτοια συσκευή μπορεί να είναι + κάποιος ξεχωριστός φυσικός δίσκος, μια κατάτμηση, ή κάποια συσκευή + vnode &man.md.4;. Στο παρακάτω παράδειγμα, θα χρησιμοποιήσουμε + προσαρτήσεις τύπου nullfs στις οποίες + θα επιτρέπεται εγγραφή και ανάγνωση. Η δομή του συστήματος αρχείων περιγράφεται στην παρακάτω - λίστα: + λίστα: Κάθε jail θα προσαρτάται κάτω από τον κατάλογο /home/j. + Το /home/j/mroot - είναι το template για το κάθε jail και η κατάτμηση μόνο - ανάγνωσης για όλα τα jails. + είναι το template για το κάθε jail και η κατάτμηση μόνο + ανάγνωσης για όλα τα jails. + Θα δημιουργηθεί ένας κενός κατάλογος για κάθε jail κάτω - από τον κατάλογο /home/j. - + από τον κατάλογο + /home/j. + Κάθε jail θα έχει έναν κατάλογο - /s, ο οποίος θα είναι + /s, ο οποίος θα είναι σύνδεσμος προς το εγγράψιμο μέρος του συστήματος. + Κάθε jail θα έχει το δικό εγγράψιμο μέρος το οποίο θα βασίζεται στο - /home/j/skel. + /home/j/skel. + Κάθε jailspace (το εγγράψιμο μέρος κάθε jail) θα πρέπει να δημιουργηθεί στον κατάλογο - /home/js. + /home/js. Όλα αυτά προϋποθέτουν ότι τα jails βρίσκονται κάτω από τον - κατάλογο /home. Αυτό βέβαια - μπορεί να αλλάξει σε οτιδήποτε εσείς θέλετε, αλλά θα επηρεάσει - όλα τα παρακάτω παραδείγματα. + κατάλογο /home. Αυτό + βέβαια μπορεί να αλλάξει σε οτιδήποτε εσείς θέλετε, αλλά θα + επηρεάσει όλα τα παρακάτω παραδείγματα. @@ -672,49 +668,51 @@ jail_www_devfs_ruleset="www_rulesetΔημιουργώντας το Template Η ενότητα αυτή θα περιγράψει τα βήματα που χρειάζονται - προκειμένου να δημιουργήσετε το πρωταρχικό template το οποίο θα - περιέχει το τμήμα των jails που είναι μόνο για ανάγνωση. + προκειμένου να δημιουργήσετε το πρωταρχικό template το οποίο θα + περιέχει το τμήμα των jails που είναι μόνο για ανάγνωση. Είναι πάντοτε καλή ιδέα να αναβαθμίζετε το &os; στη τελευταία - έκδοση -RELEASE. Για το σκοπό αυτό, διαβάστε το αντίστοιχο + έκδοση -RELEASE. Για το σκοπό αυτό, διαβάστε το αντίστοιχο κεφάλαιο - στο Εγχειρίδιο. Στη περίπτωση που η αναβάθμιση + στο Εγχειρίδιο. Στη περίπτωση που η αναβάθμιση δεν είναι εφικτή, θα χρειαστείτε buildworld για να μπορέσετε να - συνεχίσετε. Επιπλέον θα χρειαστείτε το πακέτο - sysutils/cpdup. Θα - χρησιμοποιήσουμε το βοηθητικό πρόγραμμα &man.portsnap.8; για να - κατεβάσουμε τη συλλογή των Ports. Για τους νεο-εισερχόμενους, - συνίσταται η ανάγνωση του κεφαλαίου για το Portsnap - στο Εγχειρίδιο του &os;. + συνεχίσετε. Επιπλέον θα χρειαστείτε το πακέτο + sysutils/cpdup. Θα + χρησιμοποιήσουμε το βοηθητικό πρόγραμμα &man.portsnap.8; για να + κατεβάσουμε τη συλλογή των Ports. Για τους νεο-εισερχόμενους, + συνίσταται η ανάγνωση του κεφαλαίου για το + Portsnap στο Εγχειρίδιο του &os;. Αρχικά, δημιουργήστε μια δομή καταλόγων για το σύστημα - αρχείων το οποίο θα είναι μόνο για ανάγνωση, και το οποίο θα - περιέχει τα εκτελέσιμα (binaries) του &os; για τα jails. + αρχείων το οποίο θα είναι μόνο για ανάγνωση, και το οποίο θα + περιέχει τα εκτελέσιμα (binaries) του &os; για τα jails. Στη συνέχεια πηγαίνετε στον κατάλογο όπου βρίσκονται τα αρχεία - πηγαίου κώδικα (source tree) του &os; και + πηγαίου κώδικα (source tree) του &os; και εγκαταστήστε τα αντίστοιχα αρχεία στο jail template: &prompt.root; mkdir /home/j /home/j/mroot &prompt.root; cd /usr/src &prompt.root; make installworld DESTDIR=/home/j/mroot + Επόμενο βήμα είναι να προετοιμάσετε τη συλλογή των Ports - του &os; για τα jails όπως επίσης και ένα &os; source tree, το - οποίο θα χρειαστεί για το - mergemaster: + του &os; για τα jails όπως επίσης και ένα &os; source tree, το + οποίο θα χρειαστεί για το + mergemaster: &prompt.root; cd /home/j/mroot &prompt.root; mkdir usr/ports &prompt.root; portsnap -p /home/j/mroot/usr/ports fetch extract &prompt.root; cpdup /usr/src /home/j/mroot/usr/src + Δημιουργήστε το σκελετό για το τμήμα του συστήματος όπου - προορίζεται για ανάγνωση και εγγραφή: + προορίζεται για ανάγνωση και εγγραφή: &prompt.root; mkdir /home/j/skel /home/j/skel/home /home/j/skel/usr-X11R6 /home/j/skel/distfiles &prompt.root; mv etc /home/j/skel @@ -723,24 +721,26 @@ jail_www_devfs_ruleset="www_rulesetmv var /home/j/skel &prompt.root; mv root /home/j/skel + Χρησιμοποιήστε το mergemaster - για να εγκαταστήσετε τα αρχεία ρυθμίσεων που λείπουν. Στη - συνέχεια διαγράψτε όλους τους έξτρα καταλόγους + για να εγκαταστήσετε τα αρχεία ρυθμίσεων που λείπουν. Στη + συνέχεια διαγράψτε όλους τους έξτρα καταλόγους που δημιουργεί το mergemaster: &prompt.root; mergemaster -t /home/j/skel/var/tmp/temproot -D /home/j/skel -i &prompt.root; cd /home/j/skel &prompt.root; rm -R bin boot lib libexec mnt proc rescue sbin sys usr dev + Τώρα, δημιουργήστε συνδέσμους από το σύστημα αρχείων στο - οποίο επιτρέπεται η εγγραφή, προς το σύστημα αρχείων που είναι - μόνο για ανάγνωση. Βεβαιωθείτε ότι οι σύνδεσμοι έχουν - δημιουργηθεί στις σωστές θέσεις s/. Η ύπαρξη πραγματικών καταλόγων - ή η δημιουργία καταλόγων σε λάθος θέσεις θα οδηγήσουν την - εγκατάσταση σε αποτυχία. + οποίο επιτρέπεται η εγγραφή, προς το σύστημα αρχείων που είναι + μόνο για ανάγνωση. Βεβαιωθείτε ότι οι σύνδεσμοι έχουν + δημιουργηθεί στις σωστές θέσεις s/. Η ύπαρξη πραγματικών + καταλόγων ή η δημιουργία καταλόγων σε λάθος θέσεις θα οδηγήσουν + την εγκατάσταση σε αποτυχία. &prompt.root; cd /home/j/mroot &prompt.root; mkdir s @@ -753,21 +753,21 @@ jail_www_devfs_ruleset="www_rulesetln -s s/tmp tmp &prompt.root; ln -s s/var var + Σαν τελευταίο βήμα, δημιουργήστε ένα γενικό αρχείο /home/j/skel/etc/make.conf με τα παρακάτω δεδομένα: - WRKDIRPREFIX?= /s/portbuild + WRKDIRPREFIX?= /s/portbuild - - Έχοντας ορίσει το WRKDIRPREFIX με - αυτόν τον τρόπο, θα μπορείτε να μεταγλωττίσετε ports του &os; - μέσα σε κάθε jail. Θυμηθείτε ότι ο κατάλογος των ports είναι - μέρος του συστήματος αρχείων που έχει προσαρτηθεί μόνο για - ανάγνωση. Η προσαρμοσμένη διαδρομή για το - WRKDIRPREFIX επιτρέπει την μεταγλώττιση - των ports στο εγγράψιμο μέρος του κάθε jail. + Έχοντας ορίσει το WRKDIRPREFIX με + αυτόν τον τρόπο, θα μπορείτε να μεταγλωττίσετε ports του &os; + μέσα σε κάθε jail. Θυμηθείτε ότι ο κατάλογος των ports είναι + μέρος του συστήματος αρχείων που έχει προσαρτηθεί μόνο για + ανάγνωση. Η προσαρμοσμένη διαδρομή για το + WRKDIRPREFIX επιτρέπει την μεταγλώττιση + των ports στο εγγράψιμο μέρος του κάθε jail. @@ -777,7 +777,7 @@ jail_www_devfs_ruleset="www_rulesetΤώρα που έχουμε ένα ολοκληρωμένο &os; jail template, μπορούμε να εγκαταστήσουμε και να ρυθμίσουμε τα jails στο - /etc/rc.conf. Το παράδειγμα αυτό δείχνει + /etc/rc.conf. Το παράδειγμα αυτό δείχνει τη δημιουργία τριών jails: NS, MAIL και WWW. @@ -794,21 +794,22 @@ jail_www_devfs_ruleset="www_ruleset - + Οι κατατμήσεις που είναι σημειωμένες με 0 pass number δεν - ελέγχονται κατά την εκκίνηση από το &man.fsck.8;, ενώ για τις - κατατμήσεις με 0 dump number, η &man.dump.8; δεν θα - δημιουργεί αντίγραφα ασφαλείας. Προφανώς, δεν θέλουμε το + ελέγχονται κατά την εκκίνηση από το &man.fsck.8;, ενώ για τις + κατατμήσεις με 0 dump number, η &man.dump.8; δεν θα + δημιουργεί αντίγραφα ασφαλείας. Προφανώς, δεν θέλουμε το fsck να ελέγχει τις προσαρτήσεις τύπου nullfs, ούτε και το dump να κρατά αντίγραφα από τα - μόνο για ανάγνωση nullfs συστήματα αρχείων των jails. Αυτός - είναι και ο λόγος που βάλαμε 0 0 στις δύο - τελευταίες στήλες κάθε εγγραφής του - fstab. + μόνο για ανάγνωση nullfs συστήματα αρχείων των jails. Αυτός + είναι και ο λόγος που βάλαμε 0 0 στις δύο + τελευταίες στήλες κάθε εγγραφής του + fstab. + Ρυθμίστε τα jails στο /etc/rc.conf: @@ -828,35 +829,39 @@ jail_www_hostname="www.example.org" jail_www_ip="62.123.43.14" jail_www_rootdir="/home/j/www" jail_www_devfs_enable="YES" - - Ο λόγος για τον οποίο θέτουμε τη μεταβλητή - jail_name_rootdir να - δείχνει στο /usr/home αντί για - το /home είναι ότι η φυσική - διαδρομή για τον κατάλογο /home - σε μια τυπική εγκατάσταση του &os; είναι το - /usr/home. Η μεταβλητή - jail_name_rootdir - δεν δεν πρέπει να δείχνει προς διαδρομή που - περιλαμβάνει συμβολικό δεσμό, διαφορετικά τα jails θα αρνηθούν να - ξεκινήσουν. Χρησιμοποιήστε το βοηθητικό πρόγραμμα &man.realpath.1; - για να προσδιορίσετε την τιμή που θα πρέπει να λάβει αυτή η - μεταβλητή. Δείτε το &os;-SA-07:01.jail Security Advisory για - περισσότερες πληροφορίες. - + + Ο λόγος για τον οποίο θέτουμε τη μεταβλητή + jail_name_rootdir + να δείχνει στο + /usr/home + αντί για το /home + είναι ότι η φυσική διαδρομή για τον κατάλογο + /home σε μια τυπική + εγκατάσταση του &os; είναι το + /usr/home. Η μεταβλητή + jail_name_rootdir + δεν δεν πρέπει να δείχνει προς διαδρομή + που περιλαμβάνει συμβολικό δεσμό, διαφορετικά τα jails θα + αρνηθούν να ξεκινήσουν. Χρησιμοποιήστε το βοηθητικό πρόγραμμα + &man.realpath.1; για να προσδιορίσετε την τιμή που θα πρέπει + να λάβει αυτή η μεταβλητή. Δείτε το &os;-SA-07:01.jail + Security Advisory για περισσότερες πληροφορίες. + + Δημιουργήστε τα απαραίτητα σημεία προσαρτήσεων για το - σύστημα αρχείων μόνο ανάγνωσης του κάθε jail: + σύστημα αρχείων μόνο ανάγνωσης του κάθε jail: &prompt.root; mkdir /home/j/ns /home/j/mail /home/j/www + Εγκαταστήστε το εγγράψιμο template μέσα στο κάθε jail. - Προσέξτε εδώ τη χρήση του - sysutils/cpdup, το οποίο - επιβεβαιώνει ότι δημιουργείται το σωστό αντίγραφο του κάθε - καταλόγου: + Προσέξτε εδώ τη χρήση του + sysutils/cpdup, το οποίο + επιβεβαιώνει ότι δημιουργείται το σωστό αντίγραφο του κάθε + καταλόγου: