ฉันไม่สามารถทำให้ vsftpd ทำงานได้อย่างถูกต้อง - ขอบคุณสำหรับความช่วยเหลือใด ๆ
เป้าหมายสูงสุด:
ฉันต้องการมีผู้ใช้เสมือนหนึ่งรายที่สามารถอัปโหลดไฟล์ไปยังตำแหน่ง "/srv/ftp/scanner" เท่านั้น ผู้ใช้รายนี้ควรมีสิทธิ์น้อยที่สุด
ระบบ
เดเบียน 11 (เป้า)
รุ่น vsftpd: 3.0.3
การติดตั้งจนถึงปัจจุบัน
ฉันสร้างผู้ใช้ linux "ftp" บนระบบ:
$ sudo cat /etc/passwd | grep ftp
ftp:x:109:115:ftp daemon,,,:/srv/ftp:/bin/bash
ฉันสร้างไฟล์ปรับแต่ง:
$ sudo cat /etc/vsftpd.conf
ฟัง=ใช่
Listen_ipv6=ไม่
use_localtime=ใช่
xferlog_enable=ใช่
anonymous_enable=ไม่
local_enable=ใช่
guest_enable=ใช่
pam_service_name=vsftpd_virtual
guest_username=ftp
nopriv_user=ftp
#virtual_use_local_privs=ใช่
write_enable=ใช่
download_enable=ใช่
dirlist_enable=ใช่
chmod_enable=ใช่
Hide_ids=ใช่
chroot_local_user=ใช่
allow_writeable_chroot=ใช่
local_root=/srv/ftp/
secure_chroot_dir=/var/run/vsftpd/empty
local_umask=022
ssl_enable=ไม่
pasv_enable=ใช่
pasv_min_port=30000
pasv_max_port=30500
ฉันยังสร้าง pam_service ใน /etc/pam.d:
#%PAM-1.0
จำเป็นต้องมีการตรวจสอบสิทธิ์ pam_pwdfile.so pwdfile /etc/vsftpd/virtual_users.pwd
ต้องใช้บัญชี pam_permit.so
สิทธิ์ของผู้ใช้ในโฟลเดอร์ที่เกี่ยวข้องมีดังนี้:
$ ls -ลา
คำแนะนำ 12
drwxr-xr-x 3 ftp ftp 4096 15. เดซ 18:41 .
drwxr-xr-x 3 รูท 4096 13. Dez 22:57 ..
drwxrwx--- 2 ftp ftp 4096 16. เครื่องสแกน Dez 13:33
พฤติกรรมที่คาดหวัง:
ฉันต้องการเริ่มเซสชัน ftp จากระยะไกลและส่งไฟล์ไปยังเซิร์ฟเวอร์
พฤติกรรมเฉียบพลัน ณ ตอนนี้:
ฉันสามารถเข้าสู่ระบบได้ แต่ไม่สามารถส่งไฟล์ไปยังเซิร์ฟเวอร์ได้
ฉันสามารถเปลี่ยนโฟลเดอร์และแสดงโฟลเดอร์ปัจจุบันได้
ชื่อผู้ใช้ $ftp@address
เชื่อมต่อกับที่อยู่
220 (เทียบกับ FTPd 3.0.3)
331 โปรดระบุรหัสผ่าน
รหัสผ่าน:
230 เข้าสู่ระบบสำเร็จ
ประเภทของระบบรีโมตคือ UNIX
ใช้โหมดไบนารีเพื่อถ่ายโอนไฟล์
ftp> pwd
ไดเรกทอรีระยะไกล: /
ftp> ls -la
229 การเข้าสู่โหมดพาสซีฟแบบขยาย (|||30396|)
150 นี่คือรายชื่อไดเร็กทอรี
drwxr-xr-x 3 ftp ftp 4096 15 ธ.ค. 18:41 น.
drwxr-xr-x 3 ftp ftp 4096 15 ธ.ค. 18 18:41 ..
drwxrwx--- 2 ftp ftp 4096 16 ธันวาคม 13:33 สแกนเนอร์
226 ไดเร็กทอรีส่งตกลง
ftp> ส่ง _file_ftp
ท้องถิ่น: _file_ftp ระยะไกล: _file_ftp
229 การเข้าสู่โหมดพาสซีฟแบบขยาย (|||30091|)
550 ปฏิเสธการอนุญาต
ftp>
ฉันสงสัยว่าฉัน
- ไม่ได้ตั้งค่าผู้ใช้ linux เป็น ftp อย่างถูกต้อง (ควรจัดการโดย "guest_username=ftp")
- ตั้งค่าสิทธิ์ในระบบโฟลเดอร์ไม่ถูกต้อง
ความช่วยเหลือเกี่ยวกับเรื่องนี้?
ราสปีโวทัน