หน้าเว็บ

วันพุธที่ 26 พฤศจิกายน พ.ศ. 2551

หลักการพื้นฐานการเปิด port ของ FTP

การใช้งาน FTP ประกอบด้วย FTP Server และ FTP Client ซึ่งต้องมีวิธีการจัดการเกี่ยวกับ Port

FTP จะใช้ port หลักๆอยู่ 2 port ด้วยกันคือ port 20 และ 21
Port 21: ใช้ในการส่ง Control Message
Port 20: ใช้ในการส่ง Data Message หรือข้อมูลจริงที่ทำการรับส่งไฟล์
และนอกจากนั้นยังต้องใช้ random port อื่นๆเพื่อรองรับกรณีที่มีหลาย connection เชื่อมต่อเข้ามาพร้อมกัน

โดยจะเปิด port ไหนนั้นขึ้นอยู่กับการใช้งาน FTP ว่าเป็นลักษณะใด โดยแบ่งได้ 2 ลักษณะ

1. Active FTP แบบนี้ใช้ทั้ง port 20,21
command : client >1023 -> server 21
data : client >1023 <- server 20

ดังนั้น ฝั่ง client ต้องเปิด port มากกว่า 1023 เอาไว้ ฝั่ง server ต้องเปิด port 21 ขาเข้า และเปิด port 20 ขาออก

2. Passive FTP แบบนี้ไม่ต้องใช้ port 20
command : client >1023 -> server 21
data : client >1023 -> server >1023

ดังนั้น
ฝั่ง client ต้องเปิด port มากกว่า 1023 ขาออก
ฝั่ง server ต้องเปิด port 21 ขาเข้า และเปิด port มากกว่า 1023 ขาเข้า

ซึ่งปัจจุบัน FTP Server ส่วนใหญ่ก็มักใช้แบบ Passive เพราะเราไม่ต้องไปสนใจว่า client จะเปิด port ให้เรา(server)เชื่อมต่อไปได้หรือไม่

โดย port ที่มากกว่า 1023 ที่กล่าวในนี้นั้นแล้วแต่เราจะเลือกเปิด ซึ่งที่ผมใช้ Filezilla Server ในตัวอย่าง FAQ ของเค้ายกตัวอย่างว่า 5000-5100 สำหรับการเปิด port แบบเป็น range บน Windows Firewall นั้นดูได้ที่ http://ping2p.blogspot.com/2008/11/port-range-windows-firewall.html

อ้างอิง
http://www.slacksite.com/other/ftp.html

ไม่มีความคิดเห็น: