6 999
contributi
S3v (discussione | contributi) (+ rimosso tag "tt") |
|||
Riga 29: | Riga 29: | ||
== Creazione di un database per VSFTPD == | == Creazione di un database per VSFTPD == | ||
Il nostro demone FTP è già in funzione, ma non è ancora collegato ad alcun database MySQL. Quindi apriamo la shell di MySQL e creiamo il nostro database < | Il nostro demone FTP è già in funzione, ma non è ancora collegato ad alcun database MySQL. Quindi apriamo la shell di MySQL e creiamo il nostro database <code>vsftpd</code>, con proprietario un utente <code>vsftpd</code> e password <code>ftpdpass</code>: | ||
<pre> | <pre> | ||
# mysql -u root -p | # mysql -u root -p | ||
Riga 39: | Riga 39: | ||
FLUSH PRIVILEGES; | FLUSH PRIVILEGES; | ||
</pre> | </pre> | ||
sostituendo ovviamente la stringa < | sostituendo ovviamente la stringa <code>ftpdpass</code> con la password che vogliamo utilizzare. | ||
<br/> | <br/> | ||
Ora che abbiamo il database dobbiamo creare la tabella per memorizzare gli utenti virtuali del nostro server FTP. Restando sempre nella shell di MySQL diamo quindi i seguenti comandi: | Ora che abbiamo il database dobbiamo creare la tabella per memorizzare gli utenti virtuali del nostro server FTP. Restando sempre nella shell di MySQL diamo quindi i seguenti comandi: | ||
Riga 151: | Riga 151: | ||
L'elenco delle direttive di VSFTPD con una spiegazione dettagliata del significato è presente sul sito ufficiale: [https://security.appspot.com/vsftpd/vsftpd_conf.html vsftpd.conf] | L'elenco delle direttive di VSFTPD con una spiegazione dettagliata del significato è presente sul sito ufficiale: [https://security.appspot.com/vsftpd/vsftpd_conf.html vsftpd.conf] | ||
<br/> | <br/> | ||
Una delle direttive specificate in < | Una delle direttive specificate in <code>vsftpd.conf</code> è <code>user_config_dir</code>, che abbiamo impostato a <code>/etc/vsftpd/user_conf</code>. Questo parametro dice a VSFTPD dove cercare le impostazioni specifiche per ogni utente ed è il modo più semplice per avere una home diversa per ognuno di loro, ma anche per poter avere più users con la stessa home. | ||
<br/> | <br/> | ||
Assicuriamoci quindi di creare la directory che conterrà le configurazioni specifiche: | Assicuriamoci quindi di creare la directory che conterrà le configurazioni specifiche: | ||
Riga 165: | Riga 165: | ||
== Connessione al database MySQL == | == Connessione al database MySQL == | ||
Come ultima cosa dobbiamo istruire il nostro VSFTPD affinchè non cerchi gli utenti in </etc/passwd</ | Come ultima cosa dobbiamo istruire il nostro VSFTPD affinchè non cerchi gli utenti in </etc/passwd</code>, ma nel database che abbiamo creato. Innanzitutto creiamo una copia di backup del file di configurazione, quindi ne impostiamo uno personalizzato: | ||
<pre> | <pre> | ||
# cp /etc/pam.d/vsftpd /etc/pam.d/vsftpd_orig | # cp /etc/pam.d/vsftpd /etc/pam.d/vsftpd_orig | ||
Riga 182: | Riga 182: | ||
# apt-get install libgcc1 lib32gcc1 libx32gcc1 libpam-ldap | # apt-get install libgcc1 lib32gcc1 libx32gcc1 libpam-ldap | ||
</pre> | </pre> | ||
Non preoccupatevi della configurazione di < | Non preoccupatevi della configurazione di <code>libpam-ldap</code> e lasciate tutte le impostazioni di default, a meno che non abbiate un server OpenLDAP attivo sulla macchina. | ||
<br/> | <br/> | ||
Alla fine di tutto riavviamo il nostro server: | Alla fine di tutto riavviamo il nostro server: | ||
Riga 197: | Riga 197: | ||
USE vsftpd; | USE vsftpd; | ||
</pre> | </pre> | ||
Creeremo un utente chiamato < | Creeremo un utente chiamato <code>testuser</code> con password <code>secret</code>: | ||
<pre> | <pre> | ||
INSERT INTO accounts (username, pass, homedir) VALUES('testuser', PASSWORD('secret'), '/var/www/testuser'); | INSERT INTO accounts (username, pass, homedir) VALUES('testuser', PASSWORD('secret'), '/var/www/testuser'); |
contributi