Post Pic

Membuat FTP Server di Ubuntu Hardy Dengan ProFTPD

Ada banyak pilihan untuk ftp server, tapi proftpd adalah salah satu ftp server yang fleksibel dan mudah dikonfigurasi. Dan di tulisan ini akan menjelaskan secara singkat bagaimana menginstal proftpd di Ubuntu 8.04.


FTP adalah protokol yang sudah sangat tua, tapi walaupun begitu masih banyak digunakan untuk keperluan transfer berkas. Mungkin karena kestabilannya dan banyaknya client atau aplikasi yang mendukung proses transfer berkas melalui ftp, yang menyebabkan ftp masih sangat populer.

Instalasi

Menginstal proftpd di Ubuntu, semudah menginstal aplikasi lain dari repositori. Caranya,

sudo apt-get install proftpd

Saat ada pilihan apakah akan menjalankan proftpd via inetd atau standalone, pilih standalone saja. Setelah instalasi selesai, seharusnya proftpd otomatis dijalankan. Jika tidak, coba Anda jalankan perintah berikut.

sudo /etc/init.d/proftpd start

Letak berkas konfigurasi ada di /etc/proftpd/proftpd.conf. Contoh yang diberikan oleh paket proftpd di Ubuntu sudah sangat baik. Tapi tentu saja, Anda tetap bisa mengkonfigurasinya lagi agar lebih sesuai dengan keperluan Anda.

Test Instalasi

Sebelum membahas konfigurasi untuk proftpd, mari kita sedikit meluangkan waktu untuk melakukan sedikit test. Setelah proftpd berhasil dijalankan, Anda bisa melakukan proses cek, apakah proftpd sudah listen atau belum.

sudo lsof -i -n -P |grep "21" |grep LISTEN

Jika proftpd sudah listen di port 21 tersebut, selanjutnya mari kita cek. Seperti pada contoh di bawah ini.

ftp localhost
Connected to localhost.
220 ProFTPD 1.3.1 Server (Debian) [::ffff:127.0.0.1]
Name (localhost:cecep): cecep
331 Password required for cecep
Password:
230 User cecep logged in
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> dir
200 PORT command successful
150 Opening ASCII mode data connection for file list
-rw-r--r--   1 root     root      3169166 May 17 09:23 redmine-0.8.4.tar.gz
drwxr-xr-x   7 cecep    cecep        4096 Jul 21 23:47 rubygems-1.3.5
-rw-r--r--   1 cecep    cecep      278469 Jul 22 00:16 rubygems-1.3.5.tgz
226 Transfer complete
ftp>

Membatasi User FTP di homedir

Lihat konfigurasi proftpd.conf, cari baris DefaultRoot, Anda tinggal membuang tanda pagar didepannya, seperti contoh di bawah ini.

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

Seperti biasa, jika konfigurasi baru sudah Anda simpan, Anda harus merestart service proftpd.

sudo /etc/init.d/proftpd restart

Membatasi Berkas yang Boleh di Upload

Misal, Anda membuat ftp server untuk keperluan kantor. Dan Anda tidak ingin user Anda mengupload berkas-berkas mp3 dan video yang mungkin tidak berkaitan dengan keperluan kantor.

Anda bisa menerapkan konfigurasi berikut.

# Reject files with this extension
PathDenyFilter "\\.(3gp|avi|mp3|mpg|wmv)$"

Contoh lainnya, Anda ingin membatasi besar berkas yang boleh di upload.

# Restrict upload to only 10 megabytes
MaxStoreFileSize 10 Mb

Tuning Untuk Server yang Super Sibuk

Jika FTP server Anda sangat sibuk, mungkin Anda harus mengubah beberapa konfigurasi Timeout untuk kondisi client yang tidak mentransfer, stalled atau yang sedang idle. Tujuannya agar client-client tersebut tidak membebani server, dan memberikan kesempatan ke client lain yang ingin mengakses server Anda.

Nilai default di instalasi Ubuntu, ingat satuannya dalam detik. Jadi 600 artinya 10 menit.

TimeoutNoTransfer               600
TimeoutStalled                  600
TimeoutIdle                     1200

Anda bisa ubah misalnya menjadi seperti di bawah ini.

TimeoutNoTransfer               60
TimeoutStalled                  60
TimeoutIdle                     120

Anda juga mungkin bisa menerapkan konfigurasi tambahan seperti di bawah ini.

# Disable Ident Lookups
IdentLookups off
 
# Disable Reverse DNS Lookups
UseReverseDNS off
 
# Disable ls -R
ListOptions +R strict
 
# Disable checking for .ftpaccess
AllowOverride off
 
# Disable logging to wtmp file
WtmpLog off

Rangkuman

Tulisan ini hanya menjelaskan bagaimana menginstal proftpd, dan konfigurasi dasar saja. Banyak aspek lain yang bisa dikonfigurasi, misalnya autentikasi melalui database mysql atau postgresql, membuat virtualhost dan lainnya. Silakan Anda baca kembali dokumentasi proftpd dari website resminya.


3 Komentar

22 January 2010

mas.. mohon utk sharingnya, saya telah setting ftp server dengan proftpd, ftp server tersebut itu juga sebagai router jadi terdapat 2 interface (LAN) di server, utk ftp nya untuk acces dr luar (WAN) server tersebut itu normal, akan tetapi utk acces dr jaringan dalam kok terdapat delay ya, sekitar 20-30 detik. itu kira2x apanya ya mas… sudah googling kok gak ketemu ya.. ??, mohon share nya.
Terimakasih

10 March 2010

softwarenya mana?

29 March 2010

mas Doni, koneksi nya jd lambet itu karena server nya digabung, klo mau buat server ftp harus tersendiri mas,
apa lg mas doni server nya dijadiin router,,,behhhh..pasti berat banget kerja server nya,,,karna harus melakukan routing dan melayani up dan down file, saran saya buat aja server tersendiri :D
untuk server FTP usahakan spesifikasi nya tinggi :D dan space hdd nya besar.
thanx.