1 Analisi di contesto L'installazione di Ubuntu VSFTPD è generalmente utilizzata:
La versione del mio servizio centOS è la seguente:
[radice@itsvse~]# vsftpd -versione
vsftpd: version 3.0.2
Dopo aver consultato la configurazione di altri tutorial online, se account, password e home directory sono corretti, potresti incontrare il problema del prompt di login account 530 Login errato. Ci sono molte soluzioni su Internet, come modificare il file /etc/vsftpd.conf per cambiare pam_service_name=vsftpd in pam_service_name=ftp, che può risolvere questo problema, ma questo metodo è in realtà sbagliato.Questo perché il file /etc/pam.d/ftp non esiste, uguale abypassato il PAM。
2 Analisi dei file PAM VSFTPD
/etc/pam.d/vsftpd 默认如下
#%PAM-1.0 sessione opzionale pam_keyinit.so forzare revoca Autenticazione richiesta pam_listfile.so item=User sense=Nega file=/etc/vsftpd/ftpusers onerr=succeed L'autenticazione richiede pam_shells.so Autenticazione include password-autenticazione account include password-auth Sessione richiesta pam_loginuid.so sessione include password-auth Ci sono cose che possono causare errori 530
Autenticazione richiesta pam_listfile.so item=User sense=nega file=/etc/ftpusers onerr=succeed
e
L'autenticazione richiede pam_shells.so
2.1 /ecc/ftpusers
Autenticazione richiesta pam_listfile.so item=User sense=nega file=/etc/ftpusers onerr=succeed Il significato di questo elemento di configurazione è che agli utenti in /etc/ftpusers è vietato accedere se il file non esiste nel modo predefinito che tutti gli utenti possono effettuare l'accesso. Quindi assicurati che l'utente non sia in questo file.
2.2 pam_shells.so
L'autenticazione richiedeva pam_shells.so con comandi shell nel file
gatto /ecc/gusci # /etc/shell: shell di login valide
/bin/sh
/bin/dash
/bin/bash
/bin/rbash Quando si crea un utente FTP,Per disabilitare il login SSH, generalmente /bin/false, /usr/sbin/nologinEcc., ovviamente non è una bash valida, quindi non puoi accedere.
3 Soluzione
1. Controlla /etc/ftpusers per assicurarti che l'account non sia in questo file. 2. Modifica /etc/pam.d/vsftpd Modifica dell'autenticazione richiesta pam_shells.so a ->auth richiesto pam_nologin.so (O commenta questa frase) 3. Riavvio vsftpd
(Fine)
|