Selasa, 14 Desember 2010

Install FTP Server di Ubuntu

FTP Server

File Transfer Protocol (FTP) adalah protokol TCP untuk upload dan download file antara komputer. FTP bekerja pada klien / server model. Komponen server disebut daemon FTP. Terus-menerus mendengarkan permintaan FTP dari klien remote. Bila ada permintaan yang diterima, mengelola login dan membuat sambungan. Untuk durasi sesi dijalankan salah satu perintah yang dikirimkan oleh klien FTP.

Akses ke server FTP dapat dikelola dengan dua cara:

*Anonymous
*Authenticated

Dalam modus Anonymous, klien remote dapat mengakses server FTP dengan menggunakan account default user baru bernama "anonim" atau "ftp" dan mengirim alamat email sebagai password. Dalam modus dikonfirmasi pengguna harus memiliki account dan password. Pengguna akses ke direktori server FTP dan file tergantung pada hak akses yang ditetapkan untuk akun yang digunakan saat login. Sebagai aturan umum, daemon FTP akan menyembunyikan direktori root dari server FTP dan mengubahnya ke direktori Home FTP. Ini menyembunyikan seluruh sistem file dari sesi remote.
vsftpd - FTP Server Instalasi

vsftpd adalah FTP daemon yang tersedia di Ubuntu. Sangat mudah untuk menginstal, mengatur, dan memelihara. Untuk menginstal vsftpd Anda dapat menjalankan perintah berikut:

sudo apt-get install vsftpd

Konfigurasi Anonymous FTP

Secara default vsftpd dikonfigurasi untuk hanya memperbolehkan download anonim. Selama penginstalan pengguna ftp dibuat dengan direktori home dari / home / ftp. Ini adalah default direktori FTP.

Jika Anda ingin mengubah lokasi ini, untuk / srv / ftp misalnya, cukup membuat direktori di lokasi lain dan mengubah direktori home ftp user's:

sudo mkdir / srv / ftp
sudo usermod-d / srv / ftp ftp

Setelah membuat perubahan restart vsftpd:

sudo / etc / init.d / vsftpd restart

Akhirnya, menyalin setiap berkas dan direktori Anda ingin membuat tersedia melalui FTP anonim ke / srv / ftp.
Pengguna sah Konfigurasi FTP

Untuk mengkonfigurasi vsftpd untuk mengotentikasi pengguna sistem dan memungkinkan mereka untuk upload file mengedit / etc / vsftpd.conf:

local_enable = YES
write_enable = YES

Sekarang restart vsftpd:

sudo / etc / init.d / vsftpd restart

Sekarang ketika pengguna sistem login ke FTP mereka akan mulai dalam direktori rumah mereka di mana mereka dapat men-download, upload, membuat direktori, dll

Demikian pula, secara default, pengguna anonim tidak diperbolehkan untuk meng-upload file ke server FTP. Untuk mengubah pengaturan ini, Anda harus tanda komentar pada baris berikut, dan restart vsftpd:

anon_upload_enable = YES

[Peringatan]

Mengaktifkan FTP anonim upload bisa menjadi risiko keamanan yang ekstrim. Cara terbaik adalah untuk tidak memungkinkan anonim upload di server diakses langsung dari Internet.

File konfigurasi terdiri dari banyak parameter konfigurasi. Informasi tentang setiap parameter tersedia dalam file konfigurasi. Atau, Anda dapat merujuk ke halaman manusia, man 5 vsftpd.conf untuk rincian setiap parameter.
Mengamankan FTP

Ada pilihan di / vsftpd.conf etc / vsftpd untuk membantu membuat lebih aman. Misalnya pengguna dapat dibatasi pada direktori home mereka dengan uncommenting:

chroot_local_user = YES

Anda juga dapat membatasi daftar tertentu pengguna hanya direktori rumah mereka:

chroot_list_enable = YES
chroot_list_file = / etc / vsftpd.chroot_list

Setelah uncommenting pilihan di atas, membuat / etc / vsftpd.chroot_list berisi daftar pengguna satu per baris. Kemudian restart vsftpd:

sudo / etc / init.d / vsftpd restart

Juga, / etc / ftpusers File ini adalah daftar pengguna yang dilarang akses FTP. Daftar default termasuk root, daemon, nobody, dll Untuk akses FTP menonaktifkan bagi pengguna tambahan hanya menambahkan mereka ke daftar.

FTP juga dapat FTPS menggunakan dienkripsi. Berbeda dengan SFTP, FTPS adalah FTP melalui Secure Socket Layer (SSL). SFTP adalah FTP seperti sesi melalui koneksi SSH dienkripsi. Perbedaan utama adalah bahwa pengguna SFTP harus memiliki sebuah shell account pada sistem, bukan shell Nologin. Menyediakan semua pengguna dengan shell mungkin tidak ideal untuk beberapa lingkungan, seperti web host bersama.

Untuk mengkonfigurasi FTPS, edit / etc / vsftpd.conf dan di bagian bawah tambahkan:

ssl_enable = Ya

Juga, perhatikan sertifikat dan opsi yang berkaitan kunci:

rsa_cert_file = / etc / ssl / certs / ssl-cert-snakeoil.pem
rsa_private_key_file = / etc / ssl / private / ssl-cert-snakeoil.key

Secara default pilihan ini ditetapkan sertifikat dan kunci yang disediakan oleh paket ssl-cert. Dalam sebuah lingkungan produksi ini harus diganti dengan sebuah sertifikat dan kunci yang dihasilkan untuk host tertentu. Untuk informasi lebih lanjut tentang sertifikat lihat bagian yang disebut "Sertifikat".

Sekarang restart vsftpd, dan pengguna non-anonim akan dipaksa untuk menggunakan FTPS:

sudo / etc / init.d / vsftpd restart

Untuk memperbolehkan pengguna dengan shell / usr / sbin / akses Nologin ke FTP, namun tidak memiliki akses shell, edit / etc / shells menambahkan shell Nologin:

# /etc/shells: valid login shells
/bin/csh
/bin/sh
/usr/bin/es
/usr/bin/ksh
/bin/ksh
/usr/bin/rc
/usr/bin/tcsh
/bin/tcsh
/usr/bin/esh
/bin/dash
/bin/bash
/bin/rbash
/usr/bin/screen
/usr/sbin/nologin

Hal ini diperlukan karena, dengan vsftpd default menggunakan PAM untuk otentikasi, dan / etc / pam.d / vsftpd berisi file konfigurasi:

auth diperlukan pam_shells.so

Modul kerang PAM membatasi akses ke kerang terdaftar dalam file / etc / shells.

Paling populer FTP klien dapat dikonfigurasi FTPS menggunakan terhubung. Perintah baris lftp klien FTP memiliki kemampuan untuk menggunakan FTPS juga.

0 komentar:

Template by : Chandra x-template.blogspot.com