SFTP กับ SCP
SCP (Secure Copy) ขึ้นอยู่กับโปรโตคอล Secure Shell (SSH) และให้ความสามารถในการถ่ายโอนไฟล์อย่างปลอดภัยระหว่างโฮสต์ SFTP (Secure File Transfer Protocol) เป็นโปรโตคอลที่ใช้สำหรับถ่ายโอนไฟล์ผ่านช่องทางที่ปลอดภัย ได้รับการพัฒนาเป็นส่วนขยายของโปรโตคอล Secure Shell (SSH) โดย Internet Engineering Task Force (IETF) SFTP ถือว่าช่องสัญญาณที่ใช้สำหรับการสื่อสารนั้นปลอดภัยและเซิร์ฟเวอร์รับรองความถูกต้องของไคลเอนต์และข้อมูลเกี่ยวกับไคลเอนต์นั้นพร้อมใช้งานสำหรับการใช้โปรโตคอล
SFTP คืออะไร
SFTP เป็นโปรโตคอลที่ใช้สำหรับถ่ายโอนไฟล์ผ่านช่องทางที่ปลอดภัยSFTP อิงตามสถาปัตยกรรมไคลเอนต์-เซิร์ฟเวอร์ เซิร์ฟเวอร์ SFTP ที่เป็นที่รู้จักอย่างแพร่หลายคือ OpenSSH และไคลเอ็นต์ SFTP ถูกนำไปใช้เป็นโปรแกรมบรรทัดคำสั่ง (ตามที่มาพร้อมกับ OpenSSH) หรือแอปพลิเคชัน GUI SFTP ให้การเข้ารหัสสำหรับทั้งข้อมูลและคำสั่งที่ถ่ายโอนเพื่อความปลอดภัยสำหรับข้อมูลที่ละเอียดอ่อน เช่น รหัสผ่าน SFTP ไม่ได้เป็นเพียงโปรโตคอลสำหรับการเข้าถึงและถ่ายโอนไฟล์เท่านั้น แต่ยังเป็นโปรโตคอลระบบไฟล์อีกด้วย
SCP คืออะไร
โปรโตคอล SCP ให้วิธีการที่ปลอดภัยในการถ่ายโอนไฟล์ระหว่างโฮสต์ พูดง่ายๆ ก็คือ SCP ถือเป็นการรวม RCP (คำสั่ง 'remote copy' บน UNIX) และ SSH การเข้ารหัสและการตรวจสอบสิทธิ์ใน SCP นั้นใช้โปรโตคอล SSH ในขณะที่ RCP ของ BSD (Berkeley Software Distribution หรือบางครั้งเรียกว่า Berkeley Unix) RCP จะเป็นพื้นฐานสำหรับการถ่ายโอนไฟล์จริง SCP ทำงานบนพอร์ต 22 SCP ป้องกันไม่ให้บุคคลที่สามสกัดกั้นการส่งไฟล์และดูเนื้อหาของแพ็กเก็ตข้อมูล เมื่อไคลเอนต์อัปโหลดไฟล์ไปยังเซิร์ฟเวอร์ จะมีตัวเลือกให้รวมคุณสมบัติต่างๆ เช่น การประทับเวลา สิทธิ์ ฯลฯความสามารถนี้ไม่มีอยู่ในโปรโตคอล FTP (File Transfer Protocol) ที่ใช้กันทั่วไป เมื่อไคลเอ็นต์ต้องการดาวน์โหลดไฟล์/ ไดเร็กทอรี อันดับแรกจะส่งคำขอไปยังเซิร์ฟเวอร์ การดาวน์โหลดเป็นกระบวนการที่ขับเคลื่อนด้วยเซิร์ฟเวอร์ โดยที่เซิร์ฟเวอร์จะป้อนไฟล์ไปยังไคลเอนต์ กลไกที่ขับเคลื่อนด้วยเซิร์ฟเวอร์นี้อาจทำให้เกิดความเสี่ยงด้านความปลอดภัยโดยเฉพาะอย่างยิ่งหากเซิร์ฟเวอร์เป็นอันตราย
SFTP กับ SCP ต่างกันอย่างไร
แม้ว่าทั้ง SFTP และ SCP จะมีกลไกที่ปลอดภัยสำหรับการถ่ายโอนไฟล์ แต่ก็มีความแตกต่างบางประการ SCP เป็นโปรโตคอลง่ายๆ ที่อนุญาตให้ถ่ายโอนไฟล์เท่านั้น ในขณะที่ SFTP มีชุดการดำเนินการที่หลากหลายสำหรับการจัดการไฟล์ระยะไกล นอกจากนี้ เมื่อเปรียบเทียบไคลเอ็นต์ SFTP กับไคลเอ็นต์ SCP ไคลเอ็นต์ SFTP ยังมีความสามารถเพิ่มเติม เช่น การลบไฟล์จากระยะไกล ดำเนินการถ่ายโอนต่อที่ถูกขัดจังหวะ เป็นต้น นอกจากนี้ SFTP ยังเป็นอิสระจากแพลตฟอร์มมากกว่าเมื่อเปรียบเทียบกับ SCP เซิร์ฟเวอร์ SFTP มีให้บริการในหลายแพลตฟอร์ม ในขณะที่ SCP ส่วนใหญ่ใช้แพลตฟอร์ม Unixเมื่อเปรียบเทียบความเร็ว SFTP จะช้ากว่า SCP เนื่องจากต้องรอการเข้ารหัสและสร้างแพ็กเก็ต SFTP ให้การสนับสนุนไฟล์ที่มีขนาดเกิน 4GB ในขณะที่ SCP ไม่รองรับ SFTP ให้ความสามารถในการยกเลิกการถ่ายโอนไฟล์โดยไม่ยุติเซสชั่น ในขณะที่ SCP นั้นจะต้องยกเลิกเซสชั่นเพื่อยกเลิกการโอน นอกจากนี้ SFTP ยังรองรับการดำเนินการถ่ายโอนต่อ ในขณะที่ SCP ไม่รองรับสิ่งนั้น