
<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>BitTrack &#187; apache</title>
	<atom:link href="http://www.bittrack.it/archives/tag/apache/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.bittrack.it</link>
	<description>BitTrack.it tratta di Informatica, Programmazione, Reti, Hack, Trucchi, Tutorial, Webdesign e simili.</description>
	<lastBuildDate>Wed, 01 Sep 2010 06:07:06 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Come impostare utenti virtuali in &#8220;vsftpd&#8221; su Debian</title>
		<link>http://www.bittrack.it/archives/come-impostare-utenti-virtuali-in-vsftpd-su-debian/</link>
		<comments>http://www.bittrack.it/archives/come-impostare-utenti-virtuali-in-vsftpd-su-debian/#comments</comments>
		<pubDate>Wed, 07 Oct 2009 18:46:00 +0000</pubDate>
		<dc:creator>Don Limo</dc:creator>
				<category><![CDATA[Debian]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[ftp]]></category>
		<category><![CDATA[utenti virtuali]]></category>
		<category><![CDATA[vsftpd]]></category>

		<guid isPermaLink="false">http://www.bittrack.it/?p=353</guid>
		<description><![CDATA[<div><img src="http://www.bittrack.it/wp-content/uploads/2009/09/ftp.png" class="attachment-post-thumbnail wp-post-image" alt="ftp" title="ftp" /></div>Il motivo per il quale vengono impostati utenti virtuali in un server FTP, è generalmente per consentire l&#8217;accesso ftp al web server e di conseguenza ai diversi siti web che mantiene online. Ogni utente può avere uno o più login di accesso all&#8217;ftp, e nome utente e password possono essere condivisi con il web server. [...]]]></description>
			<content:encoded><![CDATA[<div><img src="http://www.bittrack.it/wp-content/uploads/2009/09/ftp.png" class="attachment-post-thumbnail wp-post-image" alt="ftp" title="ftp" /></div><p>Il motivo per il quale vengono impostati utenti virtuali in un server FTP, è generalmente per consentire l&#8217;accesso ftp al web server e di conseguenza ai diversi siti web che mantiene online. Ogni utente può avere uno o più login di accesso all&#8217;ftp, e nome utente e password possono essere condivisi con il web server.<span id="more-353"></span></p>
<h2>Installazione</h2>
<p>Come si può ben capire dal titolo, prenderemo in esame vsftpd come server FTP e <a href="http://www.apache.org/" target="_blank">apache</a> come web server. Entrambi li ho scelti per il loro rinomato livello di sicurezza, leggerezza e stabilità e per quanto concerne la loro installazione vi rimando alle rispettive guide: <a href="http://www.bittrack.it/archives/ftp-server-sicuro-con-vsftpd" target="_blank">vstfpd</a> e apache (appena ho due minuti per scriverla). Adesso, andremo ad installare il modulo <em>pam_pwdfile</em> che permette una semplice e rapida condivisione delle credenziali di autenticazione fra l&#8217;ftp ed il web server.</p>
<p><code># apt-get install libpam-pwdfile</code></p>
<h2>Configurazione</h2>
<p>Lo scopo principale di impostare utenti virtuali, è il fatto di fornire accesso ftp ai vari siti web hostati da apache che di standard si trovano in <em>/var/www/</em>, prevenendo accessi anonimi o accessi ad altri siti da parte di utenti non autorizzati. A questo punto, tutto quello che dobbiamo fare è creare un file dove andremo a salvare tutte le password degli utenti. Utilizzeremo lo strumento <em>htpasswd</em> fornito da apache. C&#8217;è da dire però, che quest&#8217;ultimo supporta unicamente password fino ad 8 caratteri. Di conseguenza, se volete usare password più lunghe, potete usare tranquillamente un altro <a href="http://www.kernel.org/pub/linux/libs/pam/modules.html" target="_blank">modulo PAM</a> o fare ricorso a <em>md5-crypt</em>.</p>
<p><code># htpasswd -c /etc/vsftpd/passwd user</code><br />
Per gli utenti successivi è sufficiente eseguire lo stesso comando senza l&#8217;opzione &#8220;-c&#8221;.</p>
<p><code># htpasswd /etc/vsftpd/passwd user2</code><br />
Affinché gli utenti riescano a loggarsi ed uppare/modificare/cancellare file correttamente è necessario creare la loro home directory e dargli i permessi di scrittura.</p>
<p><code># mkdir /var/www/user<br />
# chown user1 /var/www/user<br />
# chmod +w /var/www/user</code></p>
<p>Ovviamente l&#8217;operazione va ripetuta per tutti gli utenti creati:</p>
<p><code># mkdir /var/www/user2<br />
# chown user1 /var/www/user2<br />
# chmod +w /var/www/user2</code></p>
<p>Adesso, <u>se non sono già presenti</u>, è necessario aggiungere delle opzioni al file di configurazione di vsftpd che si trova in <em>/etc/vsftpd.conf</em>:</p>
<p><code>anonymous_enable=NO<br />
local_enable=YES<br />
virtual_use_local_privs=YES<br />
secure_chroot_dir=/var/run/vsftpd<br />
pam_service_name=vsftpd<br />
guest_enable=YES<br />
user_sub_token=$USER<br />
local_root=/var/www/$USER<br />
chroot_local_user=YES<br />
hide_ids=YES</code><br />
Ora è il momento di passare a configurare il PAM per usare il file delle password che abbiamo creato.</p>
<p><code># nano /etc/pam.d/vsftpd</code><br />
Aggiungiamo le seguenti righe.</p>
<p><code>auth required pam_pwdfile.so pwdfile /var/www/conf/users<br />
account required pam_permit.so</code></p>
<p>Riavviamo il serizio di vsftpd.</p>
<p><code># /etc/init.d/vsftpd restart</code></p>
<h2>Testiamone il funzionamento</h2>
<p>La configurazione è finita, possiamo passare a testare il funzionamento effettivo degli utenti virtuali.</p>
<pre><code>$ ftp 192.168.1.200
Connected to 192.168.1.200.
220-Welcome to Pandora's Chest.
220-All activities are logged.
220-Good work.
Name (192.168.1.200:donlimo): user
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls
200 PORT command successful. Consider using PASV.
150 Here comes the directory listing.
drwxr-xr-x    3 ftp    ftp    4096 Jul 11 19:46    images
-rw-r--r--    1 ftp    ftp    5952 Jul 07 20:26    index.php
226 Directory send OK.
</code></pre>


<p>Articoli correlati:<ol><li><a href='http://www.bittrack.it/archives/ftp-server-sicuro-con-vsftpd/' rel='bookmark' title='Permanent Link: FTP Server sicuro con &#8220;vsftpd&#8221;'>FTP Server sicuro con &#8220;vsftpd&#8221;</a></li>
<li><a href='http://www.bittrack.it/archives/configurare-vsftpd-per-le-connessioni-sicure/' rel='bookmark' title='Permanent Link: Configurare vsftpd per le connessioni sicure'>Configurare vsftpd per le connessioni sicure</a></li>
<li><a href='http://www.bittrack.it/archives/assegnare-un-indirizzo-ip-statico-alla-scheda-di-rete-su-debian/' rel='bookmark' title='Permanent Link: Assegnare un indirizzo IP statico alla scheda di rete su Debian'>Assegnare un indirizzo IP statico alla scheda di rete su Debian</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.bittrack.it/archives/come-impostare-utenti-virtuali-in-vsftpd-su-debian/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
