Cara Mengkonfigurasi Pelayan FTP di Debian 9 Stretch Linux

Cara Mengkonfigurasi Pelayan FTP di Debian 9 Stretch Linux

Objektif

Objektifnya adalah untuk memasang dan mengkonfigurasi pelayan FTP di Debian 9 Stretch Linux yang membolehkan akses pengguna tanpa nama atau tempatan.

Sistem operasi dan versi perisian

  • Sistem operasi: - Debian 9 Stretch
  • Perisian: - VSFTPD Versi 3.0.3

Keperluan

Akses istimewa ke

Kesukaran

Medium

Konvensyen

  • # - Memerlukan arahan Linux yang diberikan untuk dilaksanakan dengan keistimewaan akar sama ada secara langsung sebagai pengguna root atau dengan menggunakan sudo perintah
  • $ - Memerlukan arahan Linux yang diberikan sebagai pengguna yang tidak layak

Arahan

Tutorial berikut akan menerangkan cara memasang dan mengkonfigurasi pelayan FTP menggunakan vsftpd Daemon. Ia juga akan membincangkan pelbagai konfigurasi untuk membolehkan akses tulis atau baca sahaja kepada pengguna tanpa nama serta pengguna tempatan.

Pemasangan VSFTPD

Mari kita mulakan oleh pelayan VSFPTD dan pemasangan klien FTP:

# Apt Pasang VSFTPD FTP 

Secara lalai pelayan VSFTPD dikonfigurasi untuk membolehkan pengguna sistem mengakses direktori rumah mereka dengan akses baca sahaja. Berikut adalah fail konfigurasi vsftpd lalai /etc/vsftpd.Conf:



dengar = tidak mendengar_ipv6 = ya anonim minyak ular.PEM RSA_PRIVATE_KEY_FILE =/etc/ssl/swasta/ssl-cert-snakeoil.kunci ssl_enable = tidak 

Seperti yang telah disebutkan fail konfigurasi di atas hanya akan memberikan akses baca sahaja kepada mana-mana pengguna sistem yang disenaraikan dalam /etc/passwd fail. Gunakan ftp Perintah dan cuba menyambung menggunakan nama pengguna dan kata laluan mana -mana pengguna sistem tempatan:

# ftp localhost disambungkan ke localhost. 220 (vsftpd 3.0.3) Nama (localhost: root): linuxconfig 331 Sila nyatakan kata laluan. Kata Laluan: 230 Log masuk berjaya. Jenis Sistem Jauh adalah UNIX. Menggunakan mod binari untuk memindahkan fail. ftp> letakkan fail.TXT Tempatan: Fail.TXT Jauh: Fail.TXT 200 EPRT Perintah Berjaya. Pertimbangkan menggunakan EPSV. 550 kebenaran ditolak. 

Sekiranya anda hanya memerlukan akses baca sahaja oleh pengguna tempatan anda, anda sudah selesai.



Benarkan pengguna menulis akses

Untuk menambah akses tulis untuk semua sistem pengguna tempatan yang tidak dapat dipisahkan atau tambahkan stanza berikut write_enable = ya. Fail konfigurasi baru terdiri daripada:

dengar = tidak mendengar_ipv6 = ya anonim minyak ular.PEM RSA_PRIVATE_KEY_FILE =/etc/ssl/swasta/ssl-cert-snakeoil.kunci ssl_enable = tidak write_enable = ya 

Seterusnya, mulakan semula VSFTPD anda:

# Systemctl mulakan semula vsftpd 

Lakukan ujian baru dengan ftp Perintah untuk mengesahkan akses tulis:

# ftp localhost disambungkan ke localhost. 220 (vsftpd 3.0.3) Nama (localhost: root): linuxconfig 331 Sila nyatakan kata laluan. Kata Laluan: 230 Log masuk berjaya. Jenis Sistem Jauh adalah UNIX. Menggunakan mod binari untuk memindahkan fail. ftp> letakkan fail.TXT Tempatan: Fail.TXT Jauh: Fail.TXT 200 EPRT Perintah Berjaya. Pertimbangkan menggunakan EPSV. 150 ok untuk menghantar data. 226 pemindahan lengkap. FTP> LS 200 EPRT Perintah Berjaya. Pertimbangkan menggunakan EPSV. 150 di sini datang penyenaraian direktori. -RW ------- 1 1000 1000 0 Jun 07 12:45 Fail.Direktori txt 226 hantar ok. 


Benarkan pengguna tertentu sahaja

Pada masa ini pelayan FTP kami membolehkan akses kepada mana -mana pengguna sistem yang ditakrifkan dalam /etc/passwd fail. Untuk membolehkan hanya pengguna tertentu untuk dapat log masuk, kita boleh memasukkan baris berikut ke dalam fail konfigurasi kami:

userList_file =/etc/vsftpd.userList userList_enable = ya 

Di atas akan membolehkan senarai pengguna yang telah ditetapkan di mana pengguna yang disenaraikan dalam /etc/vsftpd.UserList (Satu nama pengguna setiap baris) akan mendapat akses ke FTP ditolak sementara semua pengguna sistem lain dapat log masuk. Mari buat yang baru /etc/vsftpd.UserList Senarai Pengguna yang terdiri daripada pengguna tunggal Linuxconfig:

# echo linuxconfig> /etc /vsftpd.UserList 

Mulakan semula pelayan VSFTPD:

# Systemctl mulakan semula vsftpd 

Lakukan ujian baru dengan ftp perintah untuk mengesahkan akses yang ditolak ke pelayan FTP untuk Linuxconfig Pengguna:

# ftp localhost disambungkan ke localhost. 220 (vsftpd 3.0.3) Nama (localhost: root): Linuxconfig 530 kebenaran ditolak. Daftar masuk gagal. ftp> 

Walau bagaimanapun, jika anda perlu log masuk hanya dengan pengguna yang ditakrifkan dalam /etc/vsftpd.UserList, Tambahkan pilihan konfigurasi berikut userList_deny = no ke dalam fail konfigurasi VSFTPD anda /etc/vsftpd.Conf. Di bawah adalah semasa kami /etc/vsftpd.Conf Fail Konfigurasi:

dengar = tidak mendengar_ipv6 = ya anonim minyak ular.PEM RSA_PRIVATE_KEY_FILE =/etc/ssl/swasta/ssl-cert-snakeoil.kunci ssl_enable = tidak menulis_enable = ya userList_file =/etc/vsftpd.userList userList_enable = ya userList_deny = no 


Benarkan Tanpa Nama

Pada peringkat ini, kami juga akan membenarkan akses baca sahaja oleh pengguna tanpa nama. Mari mulakan membuat direktori baru yang akan digunakan sebagai direktori akar untuk pengguna tanpa nama misalnya. /var/ftp. Untuk tujuan ujian, kami juga boleh meletakkan beberapa fail ujian sewenang -wenang /var/ftp:

# mkdir/var/ftp/ # chmod 555/var/ftp/ # chown ftp.ftp/var/ftp/ # sentuh/var/ftp/anonim.Txt 

Tambahan pula, termasuk baris berikut ke dalam /etc/vsftpd.Conf fail konfigurasi untuk menentukan direktori rumah tanpa nama dan akses tanpa nama:

anon_root =/var/ftp anonymous_enable = ya 

Secara pilihan, tambah no_anon_password = ya Talian untuk mengarahkan vsftpd untuk membolehkan pengguna tanpa nama log masuk secara automatik tanpa kata laluan. Oleh kerana kami kini telah menentukan senarai pengguna, kami juga mesti menambah tanpa nama pengguna ke senarai:

# echo Anonymous >> /etc /vsftpd.UserList # CAT /ETC /VSFTPD.UserList Linuxconfig Anonymous 

Seperti biasanya memulakan semula pelayan FTP anda dan lakukan kesahihan konfigurasi semasa anda:

# Systemctl mulakan semula vsftpd 

Uji Log masuk Tanpa Nama:

# ftp localhost disambungkan ke localhost. 220 (vsftpd 3.0.3) Nama (localhost: root): Log masuk 230 tanpa nama berjaya. Jenis Sistem Jauh adalah UNIX. Menggunakan mod binari untuk memindahkan fail. FTP> LS 200 EPRT Perintah Berjaya. Pertimbangkan menggunakan EPSV. 150 di sini datang penyenaraian direktori. -RW-R-R-- 1 0 0 0 Jun 07 13:29 Tanpa Nama.Direktori txt 226 hantar ok. ftp> 

Di bawah ini anda boleh menemui fail konfigurasi VSFTPD semasa kami:

dengar = tidak mendengar_ipv6 = ya anonim minyak ular.PEM RSA_PRIVATE_KEY_FILE =/etc/ssl/swasta/ssl-cert-snakeoil.kunci ssl_enable = tidak menulis_enable = ya userList_file =/etc/vsftpd.userList userList_enable = ya userList_deny = no anon_root =/var/ftp anonymous_enable = ya no_anon_password = ya 


Dayakan akses tulis tanpa nama

Seterusnya mari kita biarkan pengguna tanpa nama memuat naik fail dan membuat direktori baru dan banyak lagi. Untuk berbuat demikian, buat direktori baru muat naik Di antara /var/ftp Direktori:

# mkdir/var/ftp/muat naik # chown ftp.ftp/var/ftp/muat naik/ 

Seterusnya, tambahkan baris berikut ke dalam fail konfigurasi VSFTPD anda:

anon_upload_enable = ya anon_other_write_enable = ya anon_mkdir_write_enable = ya 

Mulakan semula pelayan anda:

# Systemctl mulakan semula vsftpd 

Selepas memulakan semula pengguna tanpa nama akan dapat memuat naik fail, buat direktori menamakan semula fail:

# ftp localhost disambungkan ke localhost. 220 (vsftpd 3.0.3) Nama (localhost: root): Log masuk 230 tanpa nama berjaya. Jenis Sistem Jauh adalah UNIX. Menggunakan mod binari untuk memindahkan fail. FTP> LS 200 EPRT Perintah Berjaya. Pertimbangkan menggunakan EPSV. 150 di sini datang penyenaraian direktori. -RW-R-R-- 1 0 0 0 Jun 07 13:29 Tanpa Nama.TXT DRWXR-XR-X 2 108 112 4096 Jun 07 13:57 Muat naik 226 Direktori Hantar OK. FTP> CD memuat naik 250 direktori berjaya diubah. ftp> letakkan fail.TXT Tempatan: Fail.TXT Jauh: Fail.TXT 200 EPRT Perintah Berjaya. Pertimbangkan menggunakan EPSV. 150 ok untuk menghantar data. 226 pemindahan lengkap. FTP> LS 200 EPRT Perintah Berjaya. Pertimbangkan menggunakan EPSV. 150 di sini datang penyenaraian direktori. -RW ------- 1 108 112 0 Jun 07 13:57 Fail.Direktori txt 226 hantar ok. ftp> menamakan semula fail.Txt baru.TXT 350 Sedia untuk RNTO. 250 Namakan semula berjaya. FTP> LS 200 EPRT Perintah Berjaya. Pertimbangkan menggunakan EPSV. 150 di sini datang penyenaraian direktori. -RW ------- 1 108 112 0 Jun 07 13:57 Baru.Direktori txt 226 hantar ok. ftp> 

Di bawah ini anda boleh mencari fail konfigurasi VSFTPD terakhir kami:

dengar = tidak mendengar_ipv6 = ya anonim minyak ular.PEM RSA_PRIVATE_KEY_FILE =/etc/ssl/swasta/ssl-cert-snakeoil.kunci ssl_enable = tidak menulis_enable = ya userList_file =/etc/vsftpd.userList userList_enable = ya userList_deny = no 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

Mesej ralat:

# ftp localhost disambungkan ke localhost. 220 (vsftpd 3.0.3) Nama (localhost: root): Anonymous 500 oops: vsftpd: enggan berlari dengan akar yang boleh ditulis di dalam chroot () login gagal. ftp> 

Di atas menunjukkan bahawa anda anon_root Direktori boleh ditulis. Penyelesaiannya adalah untuk menjadikannya hanya membaca. Contoh:

# chmod 555 /var /ftp 

Sebagai alternatif cuba tambahkan baris berikut ke dalam fail konfigurasi VSFTPD anda:

membenarkan_writeable_chroot = ya 

Tutorial Linux Berkaitan:

  • Setup Server FTP di Linux
  • Perkara yang hendak dipasang di Ubuntu 20.04
  • Cara Menyiapkan VSFTPD di Debian
  • Cara Menyiapkan Pelayan dan Pelayan FTP/SFTP di Almalinux
  • Perkara yang perlu dilakukan setelah memasang ubuntu 20.04 Focal Fossa Linux
  • Pengenalan kepada Automasi, Alat dan Teknik Linux
  • Fail Konfigurasi Linux: 30 teratas yang paling penting
  • Perkara yang perlu dipasang di Ubuntu 22.04
  • Muat turun linux
  • Senarai dan Pemasangan Pelanggan FTP di Ubuntu 22.04 Linux ..