หมวดหมู่

การใช้ FTP ด้วย vsftpd บน debian

วันที่ 1 ส.ค. 53 + 01:34.19 , กลุ่ม Server Admin , ป้าย debian, ftp, vsftpd

บันทึกไว้กันลืม วิธีการใช้งาน vsftpd บน debian หลังจากงมไปงมมา อยู่นาน

1. การติดตั้ง vsftpd

ไม่มีอะไรมากมายบน debian ติดตั้งแสนง่าย แค่ใช้คำสั่ง

apt-get vsftpd


แค่นั้น มันก็รีบกุลีกุจอ ย้ายสำมะโนครัวมาอยู่ในเครื่องเราแล้ว


2. การ config ค่าของ vsftpd

เราสามารถไปแก้ไขค่า config ต่างๆ ของโปรแกรมนี่ได้ที่ /etc/vsftpd.conf จะแก้ด้วยวิธีไหนก็เรื่องของเท่า แต่ผมเอา WinSCP ไปเปิด editplus แก้เอา ง่ายดี (โชว์โง่มั้ยล่ะ)

ค่าที่ config ต่างๆ ไม่รู้สากกะเบืออะไรนักหนา แต่สรุปได้ว่า ผม config แบบนี้ ส่วนที่เหลือ ไป comment (ด้วย # ข้างหน้า) ออกให้หมด ก็ใช้งานได้แล้ว

listen=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
file_open_mode=0777
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES
ftpd_banner=Welcome to unbbz FTP Service.
secure_chroot_dir=/var/run/vsftpd
pam_service_name=vsftpd
chroot_local_user=YES


อธิบายทีละบรรทัดดังนี้

listen=YES - ฟังคือ เปิดให้โปรแกรมฟัง port ftp ไว้นั่นล่ะ
anonymous_enable=NO - ไม่ให้พวกที่เราไม่รู้จักหัวนอนปลายเท้ามาใช้งาน
local_enable=YES - ไปใช้ user ของ os
write_enable=YES - อัพโหลดไฟล์ได้
file_open_mode=0777 - อันนี้เพิ่มเข้าไป ใช้คู่กับอันข้างล่าง ให้เมื่ออัพไฟล์เข้าไปแล้วกลายเป็น 755 เลย
local_umask=022 - อย่างที่บอกข้างบน
dirmessage_enable=YES - ไม่รู้ว่ะ
xferlog_enable=YES - เก็บ log ให้ด้วยเด้อนาง
xferlog_file=/var/log/vsftpd.log - เก็บ log ไว้แถวนี้
xferlog_std_format=YES - ใช้ format log มาตราฐาน
ftpd_banner=Welcome to FTP Service. - ข้อความตอนรับ เมื่อมีคน FTP เข้ามา ซึ่งผมว่า ไม่มีใครอ่านหรอก
secure_chroot_dir=/var/run/vsftpd - ที่ตั้งโปรแกรมนี้
pam_service_name=vsftpd - ชื่อ service
chroot_local_user=YES - กักบริเวณให้ user ที่ ftp เข้ามา อยู่แต่ในพื้นที่ตัวเอง

** ใครเป็น admin เทพอยู่แล้ว เข้ามาอ่าน แล้วเห็นว่าผม config อะไรผิด วานแจ้งด้วยนะครับ ผมมั่วดำน้ำเอา **

เมื่อแก้ไข config เสร็จ ก็จัด restart service มันซักดอก ด้วยคำสั่งนี้

/etc/init.d/vsftpd restart



3. การสร้าง user เพื่อใช้งาน ftp

เนื่องจาก vsftpd ใช้ user ตรงๆ จาก os เลย ดังนั้นการสร้าง user ก็เป็นการสร้าง user ของ os ด้วยคำสั่ง useradd ซื้อมีออฟชั่นให้ใช้ล้านเจ็ดสิบเอ็ดแสน (ไม่อธิบายมาก กลัวผิด)

useradd [options] LOGIN


LOGIN - ชื่อ login ที่เราจะสร้าง
[options] - ไปใช้คำสั่ง useradd -h ดูเอาเอง

เมื่อสร้าง user แล้ว อย่าลืมตั้งรหัสผ่านให้ user ที่สร้างด้วยคำสั่ง passwd LOGIN ด้วยนะครับ

ใน option เราต้องระบุ shell สำหรับ user นั้นด้วย แนะนำให้ระบุ shell ไปที่ /usr/sbin/nologin เพื่อที่จะให้ user ท่านนี้สามารถ เข้าใช้ ftp ได้ แต่ไม่สามารถใช้งาน shell ได้

แต่จะใช้ /usr/sbin/nologin ได้นั้น ต้องไปแก้ไขไฟล์ /etc/shells ก่อน ให้ดูว่า มีบรรทัด /usr/sbin/nologin อยู่รึยัง ถ้ายังไม่มี ให้เพิ่มเข้าไป


4. จบแหล่ว

มีเพียงเท่านี้ล่ะ จากนั้นก็ลองใช้โปรแกรม ftp ต่อเข้าไปดูว่าได้อย่างที่เราต้องการรึป่าว

งวดหน้า จะทำเรื่อง user quota ถ้าทำสำเร็จ คงมาโน๊ตไว้เหมือนเดิม

** หลังจากงมมานาน เลยโน๊ตเอาไว้กันลืมซะเลย **
avatar
Synchronize ใครกันล่ะหว่า ?

ไม่สามารถแสดงความคิดเห็นได้ จำเป็นต้อง เข้าระบบสมาชิก ก่อน หรือ สมัครสมาชิกใหม่

ขับเคลื่อนโดย un-no Engine 2.2.0 © ลิขสิทธ์โดย บริษัท อันโน คอร์ปอเรชั่น จำกัด [ แผนที่เว็บไซต์ ]

แก้ไขล่าสุด: 2011-10-12 18:22:02, หมายเลขเซสชั่น: srpp0lghuptceqq8c43jp2q412, ใช้เวลาสร้าง: 0.041949034 วินาที (force)