Βήμα 1: Εγκατάσταση των απαιτούμενων πακέτων
Βήμα 2: Διαμόρφωση του διακομιστή FTP
Το vsFTPd είναι ένα ευέλικτο κομμάτι λογισμικού σχεδιασμένο για προσαρμογή και ευκολία στη χρήση. Επιτρέπει έλεγχο ταυτότητας MySQL, τοπικούς χρήστες, περιορισμό ταχυτήτων μεταφόρτωσης/λήψης για χρήστες, chrooting χρηστών σε συγκεκριμένους καταλόγους και διάφορες άλλες επιλογές.
Το vsFTPd είναι επίσης ένας πολύ ελαφρύς δαίμονας FTP. Πολλοί χρήστες μπορούν να υποστηριχθούν χωρίς προβλήματα απόδοσης σε ένα VPS αξιοπρεπούς μεγέθους, για παράδειγμα, το πρόγραμμα 768MB του Vultr.
Αυτός ο οδηγός εξηγεί πώς να εγκαταστήσετε το vsFTPd και να ρυθμίσετε τις παραμέτρους της MySQL για έλεγχο ταυτότητας.
Βήμα 1: Εγκατάσταση των απαιτούμενων πακέτων
Για να ξεκινήσουμε, θα χρειαστεί να εγκαταστήσουμε το αποθετήριο EPEL (Extra Packages for Enterprise Linux). Εκτελέστε τις ακόλουθες εντολές ως χρήστης root.
yum install epel-release
Τέλεια - τώρα έχετε εγκαταστήσει το αποθετήριο EPEL.
Τώρα, ας εγκαταστήσουμε το vsFTPd.
yum install vsftpd mysql mysql-server httpd php php-mysql php-mcrypt phpmyadmin -y
Εκκινήστε τον διακομιστή web.
service httpd start
Βήμα 2: Διαμόρφωση του διακομιστή FTP
Τώρα που έχετε εγκαταστήσει όλα τα απαιτούμενα πακέτα, μπορείτε να ρυθμίσετε τις παραμέτρους του λογισμικού. Εάν θέλετε να επιτρέψετε τους τοπικούς χρήστες, ανοίξτε τον αγαπημένο σας επεξεργαστή κειμένου:
nano /etc/vsftpd/vsftpd.conf
Αλλαγή local_enable = noσε local_enable = yes.
Εφόσον χρησιμοποιούμε MySQL για τον έλεγχο ταυτότητας των χρηστών, πρέπει να ρυθμίσουμε τις παραμέτρους της MySQL.
mysql_secure_installation
Ακολουθήστε όλα τα βήματα και βεβαιωθείτε ότι έχετε αλλάξει τον κωδικό πρόσβασης root της MySQL.
Στη συνέχεια, τροποποιήστε το αρχείο διαμόρφωσης phpMyAdmin:
nano /etc/httpd/conf.d/phpMyAdmin.conf
Αφαιρέστε τη γραμμή όπου καθορίζει και require local, στη συνέχεια, αποθηκεύστε και βγείτε.
Κάντε επανεκκίνηση του Apache.
service httpd restart
Δημιουργήστε μια βάση δεδομένων και πίνακα MySQL για την αποθήκευση δεδομένων χρήστη.
mysql -uroot -pthepasswordyousetforthemysqlrootpassword
CREATE DATABASE vsftpd;
CREATE TABLE `accounts` (
`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`username` VARCHAR( 30 ) NOT NULL ,
`pass` VARCHAR( 50 ) NOT NULL ,
UNIQUE (
`username`
)
) ENGINE = MYISAM ;
quit
Διαμορφώστε το vsFTPd για χρήση της βάσης δεδομένων MySQL.
echo /dev/null > /etc/pam.d/vsftpd
nano /etc/pam.d/vsftpd
Τώρα που έχετε ανοιχτό το πρόγραμμα επεξεργασίας κειμένου, επικολλήστε το ακόλουθο κείμενο στο vsftpdαρχείο. Βεβαιωθείτε ότι έχετε αντικαταστήσει yourmysqlrootpasswordμε τον κωδικό πρόσβασης root MySQL.
auth required pam_mysql.so user=root passwd=yourmysqlrootpassword host=localhost db=vsftpd table=accounts usercolumn=username passwdcolumn=pass crypt=2
account required pam_mysql.so user=root passwd=yourmysqlrootpassword host=localhost db=vsftpd table=accounts usercolumn=username passwdcolumn=pass crypt=2
Κάντε επανεκκίνηση του vsFTPd εκτελώντας την ακόλουθη εντολή.
service vsftpd restart
Προσθήκη χρηστών
Για να προσθέσετε έναν χρήστη στο vsFTPd, ακολουθήστε αυτά τα βήματα.
Προσθέστε έναν χρήστη στο σύστημά σας.
useradd bob
Προσθέστε τον χρήστη στον διακομιστή MySQL.
mysql -uroot -pyourmysqlrootpassword
use vsftpd;
INSERT INTO accounts (username, pass) VALUES('bob', PASSWORD('yourpasswordforbob'));
quit;
Αυτός ο χρήστης θα μπορεί τώρα να συνδεθεί με FTP και να αποκτήσει πρόσβαση στον οικείο κατάλογο.