Επιτρέποντας την πρόσβαση σε αρχεία FTP Server εκτός /home

Οδηγοί - How to - Tutorials

Δημοσίευσηαπό tellidis » Δευτ Νοέμ 23, 2009 1:00 am

Ρυθμίζοντας έναν FTP Server πολλές φορές αντιμετωπίζουμε το θέμα αν θα πρέπει να περιορίσουμε τους χρήστες στο φυσικό χώρο τους /home/user_name ή αν θα μπορούν να προσπελάσουν directory και εκτός /home.
Ρυθμίζοντας το chroot restriction σε YES οι χρήστες θα περιοριστούν /home χώρο τους. Όταν όμως χρειαζόμαστε να δώσουμε πρόσβαση πχ σε ένα directory που είναι mount σε ένα εξωτερικό δίσκο τί γίνεται;

Για το παράδειγμά μας, θα χρησιμοποιήσουμε το vsftpd που είναι ένας από τους ποιο διαδεδομένους FTP Servers.
Έχουμε επίσης έναν χρήστη gates και θα του δώσουμε πρόσβαση σε έναν directory με το όνομα files που βρίσκεται στο /media/usbdisk/files
Επίσης δεν επιτρέπουμε anonymous login ώστε να έχουμε περισσότερη ασφάλεια.

Ξεκινάμε με την εγκατάσταση του vsftpd

Κώδικας: Επιλογή όλων
$ sudo apt-get install vsftpd


το configuration file βρσίκεται στο /etc το οποίο και θα χρησιμοποιήσουμε για τις ρυθμίσεις μας:
πρώτα ένα backup του αρχικού:

Κώδικας: Επιλογή όλων
$ sudo cp /etc/vsftpd.conf /etc/vsftpd.original


και το ανοίγουμε με τον editor μας και:

Κώδικας: Επιλογή όλων
$ sudo nano /etc/vsftpd.conf


κάνουμε τις αλλαγές

Κώδικας: Επιλογή όλων
listen=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
chroot_local_user=YES
secure_chroot_dir=/var/run/vsftpd
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/certs/vsftpd.pem


σώζουμε το αρχείο και βγαίνουμε απο τον editor.

Κατόπιν δημιουργούμε ένα directory μέσα στον χώρο του χρήστη, και εκεί κάνουμε mount το directory που θέλουμε να μοιράσουμε με την παράμετρο --bind.

Από το man pages έχουμε: "–bind Remount a subtree somewhere else (so that its contents are available in both places"


Κώδικας: Επιλογή όλων
mkdir /home/gates/files
mount –-bind /media/usbdisk/files /home/gates/files


και είμαστε έτοιμοι!!!

αν θέλετε επίσης να το κάνετε μόνιμο τότε θα πρέπει να επεξεργαστείτε το /etc/fstab και να τοποθετήσετε μέσα το παρακάτω:

Κώδικας: Επιλογή όλων
/media/usbdisk/files  /home/gates/files    none    bind    0       0

Every men die, but not every men really live...

Άβαταρ μέλους
tellidis
Ειδικός Συντονιστής
Ειδικός Συντονιστής
 
Δημοσιεύσεις: 36
Εγγραφή: Τετ Μάιος 27, 2009 9:55 am

Δημοσίευσηαπό linuxman » Δευτ Νοέμ 23, 2009 1:42 pm

Άψογο , μου άρεσε πολύ , άλλα θα κάνω ερώτηση γιατί πόρτα είναι 20 ?
Δεν είναι 21 για ftp ?
Οδηγίες προς Νεοεισερχόμενους
LinuxMint 17 qiana 3.13.0-24-generic 64bit (el_GR.UTF-8, X-Cinnamon cinnamon)
Intel Core i3-2310M CPU @ 2.10GHz ‖ RAM 3866 MiB ‖ Dell Inc. 0D7C51 - Dell Inc. Dell System Vostro 3750
Intel 2nd Generation Core Processor Family Integrated Graphics [8086:0116]
wlan0: Intel Centrino Wireless-N 1030 [Rainbow Peak] [8086:008a]
Άβαταρ μέλους
linuxman
Διαχειριστής
Διαχειριστής
 
Δημοσιεύσεις: 912
Εγγραφή: Σάβ Φεβ 28, 2009 2:39 pm
Τοποθεσία: Θεσσαλονίκη

Δημοσίευσηαπό tellidis » Δευτ Νοέμ 23, 2009 3:22 pm

το 21 port είναι η command port, ενώ η 20 port είναι η data connection.

Every men die, but not every men really live...

Άβαταρ μέλους
tellidis
Ειδικός Συντονιστής
Ειδικός Συντονιστής
 
Δημοσιεύσεις: 36
Εγγραφή: Τετ Μάιος 27, 2009 9:55 am


Επιστροφή στο Οδηγοί Χρήσης



Μέλη σε σύνδεση

Μέλη σε αυτή την Δ. Συζήτηση : Δεν υπάρχουν εγγεγραμμένα μέλη και 1 επισκέπτης

cron