SFTP/FISH Protocols

SFTP (SSH File Transfer Protocol) และ FISH (Files transferred over Shell protocol) คือโปรโตคอลที่ทำหน้าที่ช่วยคุณจัดการไฟล์ต่างๆ (เข้าถึง ถ่ายโอนไฟล์ ฯลฯ) ผ่านช่องทางที่ปลอดภัย

เรารองรับ SFTP (Secure File Transfer Protocol) โดยใช้ threaded daemon สำหรับการประมวลผลการเชื่อมต่อ SFTP ซึ่งจะช่วยให้คุณเข้าถึง จัดการ และถ่ายโอนไฟล์โดยตรงไปยังคอนเทนเนอร์ผ่าน SSH Gate และวิธีดังกล่าวจึงรับประกันความปลอดภัยของข้อมูล

FISH protocol (Files transferred over Shell protocol) ได้รับการสนับสนุนโดย FTP clients และ และโปรแกรมจัดการไฟล์ยอดนิยม (เช่น Midnight Commander, Konqueror, lftp, Krusader เป็นต้น) อนุญาตให้เข้าถึงเพื่อจัดการระบบไฟล์ของคอนเทนเนอร์อย่างปลอดภัย ดังนั้นมาดูตัวอย่างการใช้โปรโตคอลเหล่านี้กัน

SFTP

การเข้าถึงคอนเทนเนอร์ผ่าน SFTP protocol คุณจะต้องมี private key ในเครื่องของคุณที่สอดคล้องกับ public SSH key ในแดชบอร์ดที่เพิ่มก่อนหน้านี้ หากคุณใช้ Windows คุณควรบันทึก private key เพิ่มเติมให้สอดคล้องกับ public SSH key ของคุณ (เราใช้เครื่องมือ PuTTYgen เป็นตัวอย่าง):

ssh protocols c4d7958e2bfe5a5f906a0013b17aedb6save private key

ตอนนี้คุณสามารถดำเนินการสร้างการเชื่อมต่อ SFTP

1. รัน FTP-client กับ SFTP protocol ในตัวอย่างนี้เราใช้ FileZilla ดังนั้นไปที่เมนู Edit > Settings

ssh protocols c4d7958e2bfe5a5f906a0013b17aedb6edit settings

2. เมื่อหน้า Settings เปิดขึ้นให้ไปที่ส่วน SFTP เลือกปุ่ม Add keyfile และเลือก private key ที่คุณบันทึกไว้ก่อนหน้านี้จากนั้นคลิก OK

ssh protocols c4d7958e2bfe5a5f906a0013b17aedb6filezilla private key

3. หลังจากนั้นไปที่เมนู File > Site Manager

ssh protocols c4d7958e2bfe5a5f906a0013b17aedb6site manager

4. คลิกปุ่ม New site และระบุพารามิเตอร์ดังนี้

  • ในช่อง Host ระบุโฮสต์ SSH ของคุณ (gate.{hoster_domain})
  • ในช่อง Port ระบุพอร์ต 3022
  • Protocol เลือก SFTP ในเมนูดรอปดาวน์
  • Logon Type เลือก Normal
  • ในช่อง User ระบุ Node ID ของคอนเทนเนอร์ที่ต้องการ (สามารถดูได้ในรายการ environment’s containers เฉพาะในคอลัมน์ nodeid ที่แยกจาก web SSH) และ User ID ของคุณ (หมายเลขก่อนสัญลักษณ์ @ ในสตริงการเชื่อมต่อ SSH) คั่นด้วยเครื่องหมายยัติภังค์ (-) จากนั้นคลิกปุ่ม Connect

หลังจากสร้างการเชื่อมต่อแล้ว คุณจะเห็นรายการโฟลเดอร์ของคอนเทนเนอร์:

ssh protocols c4d7958e2bfe5a5f906a0013b17aedb6remote site

ตอนนี้คุณสามารถดำเนินการจัดการและถ่ายโอนไฟล์ไปยังแอปพลิเคชันของคุณได้อย่างปลอดภัย

FISH

มาดูตัวอย่างการใช้ FISH protocol ผ่านการสร้างการเชื่อมต่อที่ปลอดภัยระหว่างคอนเทนเนอร์ระยะไกลและเครื่องมือ Midnight Commander

1. ขั้นตอนแรกตรวจสอบให้แน่ใจว่าคุณมี private key บนเครื่องของคุณที่สอดคลองกับ public SSH key ที่เพิ่มลงในแดชบอร์ดก่อนหน้านี้ path โดยค่าเริ่มต้นคือ /home//.ssh/id_rsa หรือ /home//.ssh/id_dsa ขึ้นอยู่กับประเภทของ key pair ที่คุณสร้างขึ้น

2. ตรวจสอบความเป็นเจ้าของและคุณสมบัติของ private key โดยป้อนคำสั่งใดคำสั่งหนึ่งต่อไปนี้

  • สำหรับ RSA key ls -la /home//.ssh/id_rsa
  •  สำหรับ DSA key ls -la  /home/<username>/.ssh/id_dsa ความเป็นเจ้าของควรระบุเป็น username และ attributes ควรจะเป็น 400 หรือ 600 เช่น private key ของคุณไม่ควรมีสำหรับอ่านโดยผู้ใช้อื่น มิฉะนั้นจะไม่มีการสร้างการเชื่อมต่อ

3. ติดตั้งและรัน Midnight Commander

4. กด F9 เพื่อแสดงแถบเครื่องมือเมนู จากนั้นเปิดเมนูแผงด้านซ้ายหรือด้านขวาแล้วเลือกรายการ Shell link 

ssh protocols c4d7958e2bfe5a5f906a0013b17aedb6mc1

5. ในหน้า Shell link ให้ใส่ค่าต่อไปนี้โดยคั่นด้วยยัติภังค์ (-) :

Node ID ของคอนเทนเนอร์ที่ต้องการ

  • (สามารถดูได้ในรายการ environment’s containers เฉพาะในคอลัมน์ nodeid ที่แยกจาก web SSH) และ User ID ของคุณ (หมายเลขก่อนสัญลักษณ์ @ ในสตริงการเชื่อมต่อ SSH)
    • เชื่อมต่อ SSH ของคุณ ({user_id}@{ssh_host}:3022 ) คลิก OK.
    ssh protocols c4d7958e2bfe5a5f906a0013b17aedb6mc2

    6. เมื่อสร้างการเชื่อมต่อแล้ว คุณจะเห็นโครงสร้างไฟล์ของคอนเทนเนอร์ทางด้านขวา

    ssh protocols c4d7958e2bfe5a5f906a0013b17aedb6mc3

    ตอนนี้คุณสามารถจัดการระบบไฟล์ของคอนเทนเนอร์ของคุณได้อย่างปลอดภัยโดยการใช้คำสั่ง RSH