Cara mengkonfigurasi server ftp di debian 9 stretch linux

Cara mengkonfigurasi server ftp di debian 9 stretch linux

Objektif

Tujuannya adalah untuk menginstal dan mengonfigurasi server FTP di debian 9 stretch linux yang memungkinkan akses pengguna anonim atau lokal.

Sistem Operasi dan Versi Perangkat Lunak

  • Sistem operasi: - Debian 9 Stretch
  • Perangkat lunak: - VSFTPD Versi 3.0.3

Persyaratan

Akses istimewa ke

Kesulitan

SEDANG

Konvensi

  • # - mensyaratkan perintah linux yang diberikan untuk dieksekusi dengan hak istimewa root baik secara langsung sebagai pengguna root atau dengan menggunakan sudo memerintah
  • $ - mensyaratkan perintah Linux yang diberikan untuk dieksekusi sebagai pengguna biasa

Instruksi

Tutorial berikut akan menjelaskan cara menginstal dan mengkonfigurasi server FTP menggunakan vsftpd Daemon. Ini juga akan membahas berbagai konfigurasi untuk memungkinkan akses menulis atau hanya membaca ke pengguna anonim serta pengguna lokal.

Instalasi VSFTPD

Mari kita mulai dengan VSFPTD Server dan Instalasi Klien FTP:

# App Instal VSFTPD FTP 

Secara default server VSFTPD dikonfigurasi untuk memungkinkan pengguna sistem mengakses direktori rumah mereka dengan akses hanya baca. Berikut ini adalah file konfigurasi vsftpd default /etc/vsftpd.conf:



Listen = Tidak Listen_IPV6 = Ya Anonymous_Enable = Tidak Local_enable = Ya Dirmessage_enable = ya use_localtime = ya xferlog_enable = ya connect_from_port_20 = ya saman_chroot_dir =/var/run/vsftpd/pam_service_name = vsfl = vsftpd/vsfond pam_service_name = vsfl = vsfl = vsftpd/vsftpd/vsOMKL minyak ular.PEM rsa_private_key_file =/etc/ssl/private/ssl-cert-snakeoil.kunci ssl_enable = tidak 

Seperti yang telah disebutkan, file konfigurasi di atas hanya akan memberikan akses hanya baca ke pengguna sistem apa pun yang terdaftar di dalam /etc/passwd mengajukan. Menggunakan ftp Perintah dan coba hubungkan menggunakan nama pengguna dan kata sandi dari salah satu pengguna sistem lokal:

# ftp localhost terhubung ke localhost. 220 (vsftpd 3.0.3) Nama (LocalHost: Root): LinuxConfig 331 Harap tentukan kata sandi. Kata Sandi: 230 Login Sukses. Jenis sistem jarak jauh adalah unix. Menggunakan mode biner untuk mentransfer file. ftp> letakkan file.Txt lokal: file.Txt Remote: File.Txt 200 perintah eprt berhasil. Pertimbangkan untuk menggunakan EPSV. 550 izin ditolak. 

Jika Anda hanya perlu akses hanya baca oleh pengguna lokal Anda, Anda sudah selesai.



Izinkan Akses Menulis Pengguna

Untuk menambahkan akses menulis untuk semua sistem unkomment pengguna pengguna lokal atau menambahkan bait berikut write_enable = ya. File konfigurasi baru terdiri dari:

Listen = Tidak Listen_IPV6 = Ya Anonymous_Enable = Tidak Local_enable = Ya Dirmessage_enable = ya use_localtime = ya xferlog_enable = ya connect_from_port_20 = ya saman_chroot_dir =/var/run/vsftpd/pam_service_name = vsfl = vsftpd/vsfond pam_service_name = vsfl = vsfl = vsftpd/vsftpd/vsOMKL minyak ular.PEM rsa_private_key_file =/etc/ssl/private/ssl-cert-snakeoil.kunci ssl_enable = tidak write_enable = ya 

Selanjutnya, restart VSFTPD Anda:

# Systemctl Restart vsftpd 

Lakukan tes baru dengan ftp Perintah untuk mengonfirmasi akses menulis:

# ftp localhost terhubung ke localhost. 220 (vsftpd 3.0.3) Nama (LocalHost: Root): LinuxConfig 331 Harap tentukan kata sandi. Kata Sandi: 230 Login Sukses. Jenis sistem jarak jauh adalah unix. Menggunakan mode biner untuk mentransfer file. ftp> letakkan file.Txt lokal: file.Txt Remote: File.Txt 200 perintah eprt berhasil. Pertimbangkan untuk menggunakan EPSV. 150 ok untuk mengirim data. 226 Transfer Lengkap. FTP> LS 200 EPRT Command Sukses. Pertimbangkan untuk menggunakan EPSV. 150 Here Comes the Directory Listing. -RW ------- 1 1000 1000 0 Juni 07 12:45 File.Txt 226 direktori kirim ok. 


Mengizinkan pengguna tertentu saja

Saat ini server FTP kami memungkinkan akses ke pengguna sistem apa pun yang ditentukan di dalam /etc/passwd mengajukan. Untuk mengizinkan hanya pengguna spesifik untuk dapat masuk, kami dapat memasukkan baris berikut ke dalam file konfigurasi kami:

userlist_file =/etc/vsftpd.userlist userlist_enable = ya 

Di atas akan mengaktifkan daftar pengguna yang telah ditentukan sebelumnya di mana pengguna mana pun yang terdaftar di dalam /etc/vsftpd.Daftar pengguna (Satu nama pengguna per baris) akan memiliki akses ke FTP yang ditolak sementara semua pengguna sistem lainnya akan dapat masuk. Mari Buat yang Baru /etc/vsftpd.Daftar pengguna Daftar Pengguna yang terdiri dari satu pengguna LinuxConfig:

# echo linuxconfig> /etc /vsftpd.Daftar pengguna 

Restart VSFTPD Server:

# Systemctl Restart vsftpd 

Lakukan tes baru dengan ftp Perintah untuk mengkonfirmasi akses yang ditolak ke server FTP untuk LinuxConfig pengguna:

# ftp localhost terhubung ke localhost. 220 (vsftpd 3.0.3) Nama (localhost: root): linuxconfig 530 izin ditolak. Gagal masuk. ftp> 

Namun, jika Anda perlu masuk hanya dengan pengguna yang ditentukan di dalam /etc/vsftpd.Daftar pengguna, Tambahkan opsi konfigurasi berikut UserList_DENY = tidak ke dalam file konfigurasi vsftpd Anda /etc/vsftpd.conf. Di bawah ini adalah saat ini /etc/vsftpd.conf File Konfigurasi:

Listen = Tidak Listen_IPV6 = Ya Anonymous_Enable = Tidak Local_enable = Ya Dirmessage_enable = ya use_localtime = ya xferlog_enable = ya connect_from_port_20 = ya saman_chroot_dir =/var/run/vsftpd/pam_service_name = vsfl = vsftpd/vsfond pam_service_name = vsfl = vsfl = vsftpd/vsftpd/vsOMKL minyak ular.PEM rsa_private_key_file =/etc/ssl/private/ssl-cert-snakeoil.kunci ssl_enable = no write_enable = ya userlist_file =/etc/vsftpd.userlist userlist_enable = ya userlist_deny = tidak 


Izinkan anonim

Pada tahap ini kami juga akan mengizinkan akses hanya baca oleh pengguna anonim. Mari kita mulai membuat direktori baru yang akan digunakan sebagai direktori root untuk pengguna anonim misalnya. /var/ftp. Untuk tujuan pengujian kami juga dapat menempatkan beberapa file pengujian sewenang -wenang di dalam /var/ftp:

# mkdir/var/ftp/ # chmod 555/var/ftp/ # chown ftp.ftp/var/ftp/ # touch/var/ftp/anonymous.txt 

Selanjutnya, sertakan baris berikut /etc/vsftpd.conf File Konfigurasi Untuk mendefinisikan direktori home anonim dan akses anonim:

anon_root =/var/ftp anonymous_enable = ya 

Secara opsional, tambahkan no_anon_password = ya baris untuk menginstruksikan vsftpd untuk memungkinkan pengguna anonim masuk secara otomatis tanpa kata sandi. Karena kami sekarang memiliki daftar pengguna, kami juga harus menambahkan anonim Pengguna ke daftar:

# Echo Anonymous >> /etc /vsftpd.UserList # Cat /etc /vsftpd.LinuxConfig Daftar Pengguna Anonim 

Seperti biasanya restart server FTP Anda dan lakukan validitas konfigurasi Anda saat ini:

# Systemctl Restart vsftpd 

Tes Login Anonim:

# ftp localhost terhubung ke localhost. 220 (vsftpd 3.0.3) Nama (LocalHost: Root): Anonim 230 Login Sukses. Jenis sistem jarak jauh adalah unix. Menggunakan mode biner untuk mentransfer file. FTP> LS 200 EPRT Command Sukses. Pertimbangkan untuk menggunakan EPSV. 150 Here Comes the Directory Listing. -RW-R-R-- 1 0 0 0 Jun 07 13:29 Anonim.Txt 226 direktori kirim ok. ftp> 

Di bawah ini Anda dapat menemukan file konfigurasi VSFTPD kami saat ini:

Listen = Tidak Listen_IPV6 = Ya Anonymous_Enable = Tidak Local_enable = Ya Dirmessage_enable = ya use_localtime = ya xferlog_enable = ya connect_from_port_20 = ya saman_chroot_dir =/var/run/vsftpd/pam_service_name = vsfl = vsftpd/vsfond pam_service_name = vsfl = vsfl = vsftpd/vsftpd/vsOMKL minyak ular.PEM rsa_private_key_file =/etc/ssl/private/ssl-cert-snakeoil.kunci ssl_enable = tidak write_enable = ya userlist_file =/etc/vsftpd.userlist userlist_enable = ya userlist_deny = tidak anon_root =/var/ftp anonymous_enable = ya no_anon_password = ya 


Aktifkan akses menulis anonim

Selanjutnya mari kita izinkan pengguna anonim untuk mengunggah file dan membuat direktori baru dan banyak lagi. Untuk melakukannya, buat direktori baru mengunggah dalam /var/ftp direktori:

# mkdir/var/ftp/unggah # chown ftp.ftp/var/ftp/unggah/ 

Selanjutnya, tambahkan baris berikut ke dalam file konfigurasi VSFTPD Anda:

anon_upload_enable = ya anon_other_write_enable = ya anon_mkdir_write_enable = ya 

Restart server Anda:

# Systemctl Restart vsftpd 

Setelah restart, pengguna anonim akan dapat mengunggah file, membuat direktori mengganti nama file:

# ftp localhost terhubung ke localhost. 220 (vsftpd 3.0.3) Nama (LocalHost: Root): Anonim 230 Login Sukses. Jenis sistem jarak jauh adalah unix. Menggunakan mode biner untuk mentransfer file. FTP> LS 200 EPRT Command Sukses. Pertimbangkan untuk menggunakan EPSV. 150 Here Comes the Directory Listing. -RW-R-R-- 1 0 0 0 Jun 07 13:29 Anonim.Txt drwxr-xr-x 2 108 112 4096 Jun 07 13:57 Unggah 226 Direktori Kirim OK. FTP> Direktori Unggah 250 CD berhasil diubah. ftp> letakkan file.Txt lokal: file.Txt Remote: File.Txt 200 perintah eprt berhasil. Pertimbangkan untuk menggunakan EPSV. 150 ok untuk mengirim data. 226 Transfer Lengkap. FTP> LS 200 EPRT Command Sukses. Pertimbangkan untuk menggunakan EPSV. 150 Here Comes the Directory Listing. -RW ------- 1 108 112 0 Juni 07 13:57 File.Txt 226 direktori kirim ok. FTP> Ganti nama file.Txt baru.Txt 350 siap untuk rnto. 250 ganti nama berhasil. FTP> LS 200 EPRT Command Sukses. Pertimbangkan untuk menggunakan EPSV. 150 Here Comes the Directory Listing. -RW ------- 1 108 112 0 Jun 07 13:57 Baru.Txt 226 direktori kirim ok. ftp> 

Di bawah ini Anda dapat menemukan file konfigurasi VSFTPD terakhir kami:

Listen = Tidak Listen_IPV6 = Ya Anonymous_Enable = Tidak Local_enable = Ya Dirmessage_enable = ya use_localtime = ya xferlog_enable = ya connect_from_port_20 = ya saman_chroot_dir =/var/run/vsftpd/pam_service_name = vsfl = vsftpd/vsfond pam_service_name = vsfl = vsfl = vsftpd/vsftpd/vsOMKL minyak ular.PEM rsa_private_key_file =/etc/ssl/private/ssl-cert-snakeoil.kunci ssl_enable = tidak write_enable = ya userlist_file =/etc/vsftpd.userlist userlist_enable = ya userlist_deny = tidak anon_root =/var/ftp anonymous_enable = ya no_anon_password = ya anon_upload_enable = ya anon_other_write_enable = ya anon_mkdir_write_enable = ya 

Lampiran

Pesan eror:

# ftp localhost terhubung ke localhost. 220 (vsftpd 3.0.3) Nama (LocalHost: ROOT): Anonim 500 OOPS: VSFTPD: Menolak berjalan dengan root yang dapat ditulis di dalam chroot () Login Gagal. ftp> 

Di atas menunjukkan bahwa Anda anon_root Direktori dapat ditulis. Solusi adalah membuatnya hanya baca. Contoh:

# chmod 555 /var /ftp 

Atau cobalah untuk menambahkan baris berikut ke dalam file konfigurasi VSFTPD Anda:

izin_writable_chroot = ya 

Tutorial Linux Terkait:

  • Mengatur server FTP di Linux
  • Hal -hal yang harus diinstal pada ubuntu 20.04
  • Cara mengatur vsftpd di debian
  • Cara mengatur server ftp/sftp dan klien di almalinux
  • Hal -hal yang harus dilakukan setelah menginstal ubuntu 20.04 FOSSA FOSSA Linux
  • Pengantar Otomatisasi Linux, Alat dan Teknik
  • File Konfigurasi Linux: 30 Teratas Paling Penting
  • Hal -hal yang harus diinstal pada Ubuntu 22.04
  • Unduh Linux
  • Daftar dan Instalasi Klien FTP di Ubuntu 22.04 Linux…