What are SSH, SFTP and SCP?

Secure Shell (SSH) เป็นโพรโตคอลในการสร้างการติดต่อเพื่อเข้าใช้งานระบบอย่างปลอดภัยมากกว่าการติดต่อแบบเดิมๆ ที่มีการส่งข้อมูลเป็นเพียงตัวอักษรเปล่าๆ (Plain text) โดยที่โพรโตคอลดังกล่าวจะทำการเข้ารหัสข้อมูลทุกอย่างไม่ว่าจะเป็น ชื่อผู้ใช้ รหัสผ่าน หรือข้อมูลอื่นๆ ก่อนที่จะทำการส่งไปยังเครื่องเซิร์ฟเวอร์ โดยปกตินิยมนำ SSH มาใช้งานแทน telnet เพราะมีความปลอดภัยมากกว่า

Secure File Transfer Protocol (SFTP) เป็นโพรโตคอลที่นำมาใช้แทน FTP โดยจะเป็นส่วนหนึ่งของ SSH ซึ่งจะมี sftpserv เป็นโปรแกรมที่รันอยู่ที่ฝั่งเซิร์ฟเวอร์ รอรับการติดต่อจากไคลเอ็นต์ผ่านทางคำสั่ง sftp บนระบบปฏิบัติการ linux และในระบบปฏิบัติการ Windows ก็มีโปรแกรมที่จะใช้สำหรับติดต่อและโอนถ่ายข้อมูลกับเซิร์ฟเวอร์ผ่าน SSH ด้วย เช่น SecureFX และ SSH Secure Shell Client เป็นต้น

Secure Copy (SCP) เป็นวิธีการหนึ่งในรับส่งข้อมูลข้ามระบบเครือข่าย โดยมีลักษณะเป็นการคัดลอกข้อมูลระหว่างเครื่อง 2 เครื่อง และอาศัยโพรโตคอล Secure Shell เช่นเดียวกับ SFTP ซึ่งจะแตกต่างกันที่ SFTP จะต้อง Login เข้าไปที่ระบบก่อนแล้วจึงสามารถที่จะรับส่งไฟล์ได้ แต่ SCP นั้นจะป้อนรหัสผ่านทุกครั้งที่ทำการรับส่งไฟล์

Why Use SSH?

วิธีการส่วนมากที่ผู้โจมตีใช้กันคือการดักขโมยข้อมูลระหว่างไคลเอ็นต์และเซิร์ฟเวอร์ผ่านทางโพรโตคอล telnet ซึ่งข้อมูลที่ดักได้อาจจะเป็นชื่อที่ใช้ Login และรหัสผ่าน ที่ไม่ได้ถูกเข้ารหัสไว้ โดยใช้โปรแกรมประเภท Sniffer ทั่วๆไป ดังรูปที่ 1 และถ้าเกิดกรณีที่ผู้โจมตีดักขโมยชื่อผู้ใช้คือ root และรหัสผ่าน ความเสียหายที่ตามมาอาจจะมากจนเกินที่จะแก้ไขได้

ดังนั้นวิธีแก้ไขคือ ยกเลิกการใช้โพรโตคอล telnet โดยใช้โพรโตคอล SSH แทน และใช้ SFTP แทนโพรโตคอลของ FTP ทั้งนี้เพื่อความปลอดภัยจากการถูกดักข้อมูลขณะทำการส่ง

referance: http://www.thaicert.nectec.or.th/paper/bas...ecure_Shell.php