FTP (File Transfer Protocol) คือโปรโตคอลสำหรับรับส่งไฟล์ระหว่างเครื่องคอมพิวเตอร์ผ่านเครือข่าย TCP/IP โดยนิยมใช้ในการอัปโหลดและดาวน์โหลดไฟล์ระหว่าง Client และ Server
หน้าที่ของ FTP
* อัปโหลดไฟล์ไปยังเซิร์ฟเวอร์
* ดาวน์โหลดไฟล์จากเซิร์ฟเวอร์
* จัดการไฟล์และโฟลเดอร์ระยะไกล
* สำรองข้อมูล (Backup)
* เผยแพร่เว็บไซต์ (Web Hosting)
การทำงานของ FTP
FTP ใช้การเชื่อมต่อ 2 ช่องทาง:
1. Control Connection (Port 21)
* ใช้ส่งคำสั่ง เช่น Login, LIST, GET, PUT
2. Data Connection (Port 20 หรือ Dynamic Port)
* ใช้ส่งข้อมูลไฟล์จริง
Client
│
├── Port 21 → Control Connection
│
└── Port 20/Dynamic → Data Transfer
│
FTP Server
โหมดการทำงานของ FTP
1. Active Mode
* Server เป็นผู้เริ่มสร้าง Data Connection กลับมายัง Client
* อาจติดปัญหา Firewall/NAT
2. Passive Mode (PASV)
* Client เป็นผู้สร้างทั้งสองการเชื่อมต่อ
* นิยมใช้มากกว่าในปัจจุบัน
คำสั่ง FTP พื้นฐาน
Command หน้าที่
USER ระบุชื่อผู้ใช้
PASS ระบุรหัสผ่าน
LIST แสดงรายการไฟล์
GET ดาวน์โหลดไฟล์
PUT อัปโหลดไฟล์
DELETE ลบไฟล์
QUIT ออกจากระบบ
พอร์ตมาตรฐาน
Protocol Port
FTP Control 21/TCP
FTP Data (Active) 20/TCP
FTPS 990/TCP
SFTP 22/TCP
FTP vs FTPS vs SFTP
คุณสมบัติ FTP FTPS SFTP
การเข้ารหัส ❌ ✅ SSL/TLS ✅ SSH
ความปลอดภัย ต่ำ สูง สูงมาก
พอร์ต 20/21 990 22
โปรโตคอลพื้นฐาน FTP FTP + SSL/TLS SSH
หมายเหตุ: SFTP (SSH File Transfer Protocol) ทำงานบน SSH และไม่ใช่ FTP ที่เพิ่มการเข้ารหัส
ตัวอย่างการใช้งาน
* อัปโหลดเว็บไซต์ไปยัง Web Hosting
* โอนย้ายไฟล์ระหว่าง Server
* สำรองข้อมูลอัตโนมัติ
* จัดการไฟล์บน Linux Server
สรุป
* FTP = โปรโตคอลรับส่งไฟล์
* ใช้ Port 20/21
* FTP ปกติไม่เข้ารหัส
* แนะนำใช้ SFTP หรือ FTPS เพื่อความปลอดภัย
ความคิดเห็น
แสดงความคิดเห็น