mod_chroot
Contents
Apache Module : mod_chroot
mod_chroot makes running Apache in a secure chroot environment easy.
mod_chroot allows you to run Apache in a chroot jail with no additional files.
The chroot() system call is performed at the end of startup procedure –
when all libraries are loaded and log files open.
Download
Η τελευταία έκδοση του μπορεί να βρεθεί στο
http://core.segfault.pl/~hobbit/mod_chroot/
http://core.segfault.pl/~hobbi[..]od_chroot-0.5.tar.gz
Εγκατάσταση
Η εγκατάσταση
tar zxvf mod_chroot-0.5.tar.gz cd mod_chroot-0.5 apxs -cia mod_chroot.c
Για να δούμε εάν ολοκληρώθηκε η εγκατάστασή μας τρέχουμε,
αλλά και για να δούμε τι modules τρέχουμε πληκτρολογούμε:
httpd -M
πρέπει να δούμε κάτι τέτοιο:
chroot_module (shared)
Ρυθμίσεις
Το μόνο που χρειάζεται είναι να προσθέσουμε την εξής γραμμή στο httpd.conf
ChrootDir /opt/www
Στην συνέχεια χρειάζεται να αλλάξουμε το Document Root σε "/":
DocumentRoot "/"
ΣΗΜΑΝΤΙΚΗ ΠΑΡΑΤΗΡΗΣΗ
Για να ολοκληρώσουμε την ρύθμισή μας χρειάζεται να ορίσουμε σωστά το αρχείο Pid File
του apache. Στο συγκεκριμένο παράδειγμά μας και επειδή έχουμε εγκαταστήσει τον
web server μας στον κατάλογο: /opt/apache, το αρχείο Pid File βρίσκεται στην διαδρομή:
/opt/apache/logs/httpd.pid
Έτσι για να μπορούμε να κάνουμε restart ή graceful τον apache μας χρειάζεται στην νέα
ρίζα που δημιουργήσαμε με το Chroot Dir να δημιουργήσουμε την ίδια διαδρομή:
mkdir -p /opt/www/opt/apache/logs/
και τέλος να δημιουργήσουμε ένα νέο σύνδεσμο από τον παλιό κατάλογο του apache
στον καινούριο.
ln -s /opt/www/opt/apache/logs/httpd.pid opt/apache/logs/httpd.pid
Restart ή Graceful
Πλέον είμαστε σε θέση να επανεκκινήσουμε ή να επαναφορτώσουμε τις νέες μας
ρυθμίσεις. Πληκτρολογούμε:
httpd -k restart ή httpd -k graceful
Virtual Hosts
Δεν ξεχνάμε ότι πλέον όλα τα virtual hosts μας πρέπει να έχουν ως
document root το /.
Άρα εάν έχουμε ένα virtual host με πραγματικό κατάλογο:
DocumentRoot /opt/www/ebalaskas.gr
τώρα θα γίνει απλά:
DocumentRoot ebalaskas.gr