proftpd virtual user

cara simple dengan kasus sebagai berikut menggunakan proftpd dan distro linux ubuntu 12.04 lts.
kasus :

ada 3 user, 1 sebagai admin, dan 2 lainnya sebagai user biasa.
direktori user1 dan user2 terpisah, dan keduanya tidak bisa melihat isi direktori masing-masing kecuali user admin.

misal :

base direktori ada di /srv/ftp, untuk ketiga user, user admin dengan username pengelola, dan kedua user masing-masing user1 dan user2 untuk username nya.
untuk pengelola base direktorinya /srv/ftp
untuk user1 base direktorinya /srv/ftp/user1
untuk user2 base direktorinya /srv/ftp/user2

eksekusi :
install proftpd

apt-get install proftpd

konfigurasi dasar proftpd untuk kasus diatas, edit file /etc/proftpd/proftpd.conf

# Use this to jail all users in their homes
# DefaultRoot ~

ubah menjadi

# Use this to jail all users in their homes
DefaultRoot ~

dan tambahkan value baris berikut di urutan paling bawah file konfigurasi

#tambahan
RequireValidShell off
AuthOrder mod_auth_file.c
AuthUserFile /etc/proftpd/ftpd.passwd

kemudian save, dan restart ulang proftpdnya.

/etc/init.d/proftpd restart

selanjutnya, buat direktori sesuai kasus diatas.
mkdir /srv/ftp/{user1,user2}

ubah permission direktori masing-masing user.
chmod 777 /srv/ftp/user1
chmod 777 /srv/ftp/user2

setelah semuanya ok, saatnya sekarang membuat username.
user1
root@lts:~# ftpasswd –passwd –name=user1 –file /etc/proftpd/ftpd.passwd –uid=2001 –gid=2001 –home /srv/data/user1 –shell /bin/false

user2
root@lts:~# ftpasswd –passwd –name=user2 –file /etc/proftpd/ftpd.passwd –uid=2002 –gid=2002 –home /srv/data/user2 –shell /bin/false

pengelola
root@lts:~# ftpasswd –passwd –name=pengelola –file /etc/proftpd/ftpd.passwd –uid=2000 –gid=2000 –home /srv/data –shell /bin/false

done.

catatan, tips diatas adalah cara simple menggunakan proftpd dengan fitur virtual user. untuk tingkat keamanan lebih tinggi, disarankan membaca dasar manual permission user, file, directory linux dan manual proftpd.