ติดตั้ง vsftpd บน ubuntu

จาก Wiki Opensource

บันทึกนี้ปรับปรุงล่าสุดเมื่อวันที่ 20-08-2553

ดูแลโดย WIPAT


  • ทดสอบกับ ubuntu  10.04


  1. ติดตั้งด้วยคำสั่ง sudo apt-get install vsftpd

  2. การให้แฟ้มข้อมูลสามารถเปิดอ่านได้ผู้ใช้แบบสาธารณะชื่อ anonymous
    หากเป็น ubuntu 10.04 เก็บข้อมูลไว้ภายใต้ directory ชื่อ /srv/ftp/pub
    ต้องสร้าง directory เพิ่มด้วยคำสั่ง  sudo mkdir -p /srv/ftp/pub

    หากเป็น ubuntu 8.04 ให้เก็บข้อมูลไว้ภายใต้ directory ชื่อ /var/ftp/pub
    ซึ่งต้องสร้าง directory เพิ่มด้วยคำสั่ง  sudo mkdir -p /var/ftp/pub

  3. การปรับแต่งระบบทำได้โดยการแก้ไขแฟ้ม /etc/vsftpd.conf

    ตั้งเวลาให้แสดงผลเวลาตรงกับของ server
    ด้วยการเพิ่ม/แก้ไขบรรทัดข้อความว่า use_localtime=yes

    หากต้องการให้ใช้งานได้เฉพาะภายใน home ของตนเอง ไม่ต้องการให้ออกไปเพ่นพ่านที่อื่น
    เพิ่ม/แก้ไขบรรทัดข้อความว่า chroot_local_user=YES

    หากต้องการห้าม anonymous เข้ามาใช้บริการ
    เพิ่ม/แก้ไขบรรทัดข้อความว่า anonymous_enable=NO

    หากต้องการให้ user สามารถ upload แฟ้มได้
    เพิ่ม/แก้ไขบรรทัดข้อความว่า local_enable=YES และ write_enable=YES

    ตัวอย่างหากต้องการจำกัดจำนวน client ที่เข้ามาใช้บริการ ftp ไม่ให้เกิน 100 คน
    เพิ่ม/แก้ไขบรรทัดข้อความว่า max_clients=100
    แต่ถ้าต้องการจำกัดจำนวน clinet ต่อ 1 เลข IP ที่เข้ามาใช้บริการ ftp ไม่ให้เกิน 50 คนด้วย
    เพิ่ม/แก้ไขบรรทัดข้อความว่า max_per_ip=50

    แก้ไขเสร็จแล้วสั่ง vsftpd ทำงานใหม่ด้วยคำสั่ง  sudo /etc/init.d/vsftpd restart

  4. เทคนิคในการสร้าง link ให้สามารถเปิดดูได้ทั้ง http และ ftp ตัวอย่างเช่น
    http://ftp.psu.ac.th/pub/temp/ และ ftp://ftp.psu.ac.th/pub/temp/
    สมมติว่า root directcory ของ http อยู่ที่ /var/www
    และ root directcory ของ http อยู่ที่  /srv/ftp/pub
    ให้ใช้คำสั่งว่า sudo ln -s /srv/ftp/pub /var/www
    แล้วทดสอบดูผลงานได้เลย

  5. ตัวอย่างหากต้องการเพิ่ม hard disk ลูกใหม่เข้าไป และต้องการให้ไปเป็นส่วนหนึ่งของพื้นที่ใน /home/ftp/pub
    ให้จัดการติดตั้ง hard disk และ mount ให้เรียบร้อยสามารถใช้งานได้ซะก่อน
    ตัวอย่างของผมคือเพิ่ม hard disk /dev/hdb1 ไปในพื้นที่ /mnt/data
    และต้องการให้ไปโผล่เป็นส่วนหนึ่งของ /home/ftp/pub/newdisk
    ทำคำสั่งขั้นตอนดังนี้คือ
    sudo mkdir  -p  /mnt/data
    sudo mount  /dev/hdb1  /mnt/data
    sudo mkdir  -p  /home/ftp/pub/newdisk
    sudo mount  --bind  /mnt/data  /home/ftp/pub/newdisk
    แค่นี้ก็เสร็จแล้ว ตรวจสอบดูผลงานได้เลย

    ต้องแก้ไขให้ระบบทำงานคำสั่งเหล่านี้โดยอัตโนมัติทุกครั้งที่บูทเครื่อง
    ต้องแก้ไขแฟ้ม /etc/rc.local โดยเพิ่มบรรทัดคำสั่งเหล่านั้นเข้าไปด้วย