1 Ανάλυση ιστορικού Η εγκατάσταση του Ubuntu VSFTPD χρησιμοποιείται γενικά:
Η έκδοση της υπηρεσίας centOS μου είναι η εξής:
[ρίζα@itsvse~]# vsftpd -έκδοση
vsftpd: version 3.0.2
Αφού ανατρέξετε στη διαμόρφωση άλλων διαδικτυακών σεμιναρίων, εάν ο λογαριασμός, ο κωδικός πρόσβασης και ο αρχικός κατάλογος είναι σωστά, ενδέχεται να αντιμετωπίσετε το πρόβλημα της προτροπής σύνδεσης λογαριασμού 530 Η σύνδεση είναι λανθασμένη. Υπάρχουν πολλές λύσεις στο Διαδίκτυο, όπως η τροποποίηση του αρχείου /etc/vsftpd.conf για αλλαγή του pam_service_name=vsftpd σε pam_service_name=ftp, κάτι που μπορεί να λύσει αυτό το πρόβλημα, αλλά αυτή η μέθοδος είναι στην πραγματικότητα λάθος.Αυτό συμβαίνει επειδή το αρχείο /etc/pam.d/ftp δεν υπάρχει, ίσο μεπαρακάμπτεται το PAM。
2 vsftpd ανάλυση αρχείων PAM
/etc/pam.d/vsftpd 默认如下
#%ΠΑΜ-1.0 προαιρετική συνεδρία pam_keyinit.οπότε αναγκαστική ανάκληση Απαιτείται έλεγχος ταυτότητας pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed Απαιτείται έλεγχος ταυτότητας pam_shells.so Ο έλεγχος ταυτότητας περιλαμβάνει κωδικό πρόσβασης-έλεγχος ταυτότητας Ο λογαριασμός περιλαμβάνει κωδικό πρόσβασης-έλεγχο ταυτότητας απαιτείται συνεδρία pam_loginuid.so Η συνεδρία περιλαμβάνει κωδικό πρόσβασης-auth Υπάρχουν πράγματα που μπορούν να προκαλέσουν σφάλματα 530
Απαιτείται έλεγχος ταυτότητας pam_listfile.so item=user sense=deny file=/etc/ftpusers onerr=succeed
και
Απαιτείται έλεγχος ταυτότητας pam_shells.so
2.1 /κλπ/ftpusers
Απαιτείται έλεγχος ταυτότητας pam_listfile.so item=user sense=deny file=/etc/ftpusers onerr=succeed Το νόημα αυτού του στοιχείου ρύθμισης είναι ότι οι χρήστες στο /etc/ftpusers απαγορεύεται να συνδεθούν εάν το αρχείο δεν υπάρχει στην προεπιλογή όλοι οι χρήστες επιτρέπεται να συνδεθούν. Επομένως, βεβαιωθείτε ότι ο χρήστης δεν βρίσκεται σε αυτό το αρχείο.
2.2 pam_shells.έτσι
Απαιτείται έλεγχος ταυτότητας pam_shells.so στοιχείο διαμόρφωσης με εντολές φλοιού στο αρχείο
γάτα /etc/κοχύλια # /etc/shells: έγκυρα κελύφη σύνδεσης
/bin/sh
/bin/dash
/bin/bash
/bin/rbash Κατά τη δημιουργία ενός χρήστη FTP,Για να απενεργοποιήσετε τη σύνδεση SSH, γενικά /bin/false, /usr/sbin/nologinκ.λπ., προφανώς δεν είναι έγκυρο bash, οπότε δεν μπορείτε να συνδεθείτε.
3 Λύση
1. Ελέγξτε το /etc/ftpusers για να βεβαιωθείτε ότι ο λογαριασμός δεν βρίσκεται σε αυτό το αρχείο. 2. Τροποποιήστε το /etc/pam.d/vsftpd Τροποποίηση του απαιτούμενου ελέγχου ταυτότητας pam_shells.so σε ->απαιτείται έλεγχος ταυτότητας pam_nologin.so (Ή σχολιάστε αυτή τη γραμμή) 3. Επανεκκινήστε το vsftpd
(Τέλος)
|