FTP Server โดยใช้ vsFTPD บน Fedora Core 6 Linux
ในส่วนของการติดตั้ง FTP Server โดยใช้ Fedora Core Linux นี้ จะใช้ซอฟต์แวร์ที่มีชื่อว่า Very Secure FTP Daemon (vsFTPD) ซึ่งเป็นซอฟต์แวร์ที่มีอยู่ในแผ่นติดตั้งลินุกซ์ Fedora Core อยู่แล้ว สำหรับขั้นตอนของการติดตั้งลินุกซ์ Fedora Core 6 จะอ้างอิงตามเอกสารในหน้า ขั้นตอนการติดตั้งลินุกซ์ Fedora Core 6 แบบเซิร์ฟเวอร์ ถ้าติดตั้งลินุกซ์เสร็จเรียบร้อยแล้ว ก็สามารถดูขั้นตอนกาิรติดตั้ง vsFTPD บนลินุกซ์ Fedora Core 6 ได้เลยครับ
ขั้นตอนการติดตั้ง vsFTPD บน Fedora Core Linux
ขั้นตอนที่ 1
ในขั้นตอนแรกของการติดตั้งนั้น ให้ทำการตรวจสอบก่อนว่า มีซอฟต์แวร์อยู่ในระบบอยู่แล้วหรือไม่ โดยใช้คำสั่ง ดังนี้
# rpm -qa | grep -i vsftpd
vsftpd-2.0.5-8
ในที่นี้ เราได้ทำการติดตั้งซอฟต์แวร์ไปเรียบร้อย ตั้งแต่ในขั้นตอนของการติดตั้งระบบปฏิบัติการแล้ว ดังที่แสดงขึ้นมา เป็นเวอร์ชัน vsftpd-2.0.5-8 ที่อยู่ในแผ่น Fedora Core 6 Linux
ขั้นตอนที่ 2
ทำการตรวจสอบว่า vsFTPD สามารถทำงานได้ โดยทดลองสั่งให้ FTP เซิร์ฟเวอร์นี้ start , stop , restart ดังนี้
|
# /etc/init.d/vsftpd start # /etc/init.d/vsftpd stop # /etc/init.d/vsftpd restart |
ขั้นตอนที่ 3
เมื่อทำการตรวจสอบเสร็จเรียบร้อยแล้ว ก็กำหนดให้เซอร์วิส vsftpd ทำงานทุกครั้งที่เปิดเครื่องขึ้นมาใหม่ ดังนี้
| # chkconfig vsftpd on |
ขั้นตอนที่ 4
ตรวจสอบว่า vsftpd มีการทำงานอยู่จริง ด้วยคำสั่ง
|
# netstat -a |grep ftp tcp 0 0 *:ftp *:* LISTEN |
ถ้า vsftpd ทำงาน ก็จะมีผลลัพธ์ดังตารางข้างบน แต่ถ้าไม่ทำงาน จะไม่มีผลลัพธ์ใดๆ แสดงขึ้นมา
ขั้นตอนการปรับแต่ง vsFTPD บน Fedora Core 6
ในขั้นตอนนี้จะเป็นการปรับแต่งคุณสมบัติต่างๆ ของ vsFTPD เพื่อให้สามารถทำงานได้ตรงกับความต้องการของผู้ดูแลระบบ สำหรับไดเรคเทอรีของไฟล์คอนฟิกต่างๆ จะอยู่ที่ /etc/vsftpd ไฟล์หลักๆ จะมีด้วยกัน 3 ไฟล์ดังนี้
-
ftpusers เป็นไฟล์ที่มีไว้สำหรับเก็บรายชื่อของผู้ใช้ ที่ไม่ต้องการให้ลอกอินเข้าสู่ระบบแบบ FTP
- user_list ถ้ามีการปรับแต่งค่าคอนฟิก userlist_deny ให้มีค่าเป็น NO ระบบจะอนุญาตเฉพาะผู้ใช้ในไฟล์นี้ แต่ถ้าค่าของ userlist_deny มีค่าเป็น YES ซึ่งเป็นค่าดีฟอลต์ ระบบจะไม่อนญาตผู้ใช้ในไฟล์นี้ลอกอิน และจะไม่มีการถามรหัสผ่านด้วย
- vsftpd.conf เป็นไฟล์คอนฟิกหลักสำหรับการปรับแต่ง vsFTPD
ตัวอย่างของการปรับแต่งไฟล์ /etc/vsftpd/vsftpd.conf มีดังนี้
-
ถ้ามีการอนุญาตให้ผู้ใช้ anonymous สามารถเข้าใช้งานระบบได้ ให้ทำการปรับแต่งตัวเลือก anonymous_enable ให้มีค่าเป็น YES
- # Allow anonymous FTP? (Beware – allowed by default if you comment this out).
anonymous_enable=YES
ทดลองลอกอินโดยเข้าสู่ระบบด้วยผู้ใช้ anonymous ดังนี้
# ftp 192.168.9.1
Connected to 192.168.9.1
220 Restricted Area
530 Please login with USER and PASS.
530 Please login with USER and PASS.
KERBEROS_V4 rejected as an authentication type
Name (192.168.9.1:root):anonymous
331 Please specify the password.
Password: ใส่อีเมลล์ลงไป ตัวอย่าง cp@linuxlane.com
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp>
- ถ้าต้องการให้ผู้ใช้งาน สามารถลอกอินเข้าสู่ระบบได้ ให้ทำการปรับแต่งตัวเลือก local_enable ให้มีค่าเป็น YES
# Uncomment this to allow local users to log in.
local_enable=YES
ทดสอบการลอกอินเข้าสู่ระบบด้วยผู้ใช้ทั่วไป ดังนี้
# ftp 192.168.9.1
Connected to 192.168.9.1.
220 Restricted Area
530 Please login with USER and PASS.
530 Please login with USER and PASS.
KERBEROS_V4 rejected as an authentication type
Name (192.168.9.1:root): cp
331 Please specify the password.
Password: ใส่รหัสผ่านของผู้ใช้
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp>
- ถ้าต้องการให้ผู้ใช้งาน สามารถอัพโหลดไฟล์ เข้าสู่ระบบได้ ให้ทำการปรับแต่งตัวเลือก write_enable ให้มีค่าเป็น YES
|
# Uncomment this to enable any form of FTP write command. write_enable=YES |
เมื่อแก้ไขไฟล์คอนฟิกต่างๆ เสร็จแล้ว ถ้าต้องการให้มีผล ให้ทำการรีตาร์ทเซอร์วิส vsftpd โดยใช้คำสั่ง
# /etc/init.d/vsftpd restart
number of view: 3799











