FTP/FTPS Support

File Transfer Protocol (FTP) เป็นโปรโตคอลเครือข่ายมาตรฐานที่ใช้สำหรับการถ่ายโอนไฟล์จากโฮสต์หนึ่งไปยังอีกโฮสต์หนึ่งผ่านเครือข่ายที่ใช้ TCP

FTP สร้างบนสถาปัตยกรรม client-server และใช้การควบคุมและการเชื่อมต่อข้อมูลแยกกันระหว่างไคลเอนต์และเซิร์ฟเวอร์

ความปลอดภัยสำหรับการส่งข้อมูลที่ซ่อน (encrypts) ชื่อผู้ใช้ รหัสผ่าน และการเข้ารหัสลับ จะใช้ FTP ที่ปลอดภัยด้วย SSL (FTPS)

แพลตฟอร์มรองรับทั้ง FTP และ FTPS

HTTP ต่างจากโปรโตคอล FTP เนื่องจากเป็น stateful สร้างการเชื่อมต่อการควบคุมสำหรับช่วงเวลาของ FTP session โดยทั่วไปจะครอบคลุมการถ่ายโอนข้อมูลหลายรายการ

การใช้งาน FTP:

  • อัปโหลด/ดาวน์โหลดทรัพยากร
  • ดาวน์โหลดและอ่าน logs สำหรับการวิเคราะห์
  • การแก้ไขการกำหนดค่า
  • การซิงค์ไฟล์
  • การ deloy แอปพลิเคชัน (ไม่แนะนำ)

ฟีเจอร์นี้สามารถใช้ได้กับ application servers และ databases

หมายเหตุ: ปัจจุบัน FTP add-on ยังไม่รองรับสำหรับคอนเทนเนอร์ Docker

การใช้ FTP คุณจะต้องมีสามรายการนี้:

  • ติดตั้ง FTP client (เช่น FileZilla)
  • เพิ่ม compute node เข้ากับ environment
  • แนบ Public IP สำหรับโหนดใน environment ของคุณ

มาดูขั้นตอนการเพิ่ม FTP ไปยัง environment ของคุณทีละขั้นตอน:

การสร้าง Environment

1. เข้าสู่ระบบ Ruk-Com Cloud dashboard

2. คลิก New Environment เพื่อตั้งค่า environment ใหม่

3. ในหน้า wizard ที่เปิดขึ้นเลือก application server (เช่น Nginx) หรือ database (เช่น MySQL) และเพิ่ม Public IP

คลิก Create เพื่อสร้าง environment แล้วรอซักครู่

การติดตั้ง FTP

1. คลิกปุ่ม Add-Ons ที่แอปพลิเคชันเซิร์ฟเวอร์ของคุณ

2. ในแท็บที่เปิดขึ้นคุณจะเห็นรายการแอปพลิเคชันทั้งหมดที่สามารถเพิ่มใน environment ของคุณโดยคุณสามารถคลิก Install เพื่อติดตั้ง

3. ยืนยันการติดตั้งโดยคลิกปุ่ม Install

4. หลังจากเพิ่ม environment ไปที่ environment ของคุณแล้ว คุณจะได้รับอีเมลพร้อมกับข้อมูลส่วนตัวสำหรับการเข้าถึง (FTP links, login, Password, IPs, etc.)

การใช้ FTP

ผ่าน FTP Client

1. ติดตั้ง FTP Client (ผ่าน FileZilla)

2. ใส่ Host, Username และ Password โดยใช้ข้อมูลรับรองที่ได้รับทางอีเมลหลังจากสร้าง environment เสร็จ เพื่อดำเนินการเชื่อมต่อ

3. ตอนนี้คุณสามารถดูรายการโฟลเดอร์ config ใน FTP Client ของคุณได้

4. คุณสามารถทำการเปลี่ยนแปลงที่คุณต้องการ (เช่น ดาวน์โหลด คัดลอก ลบไฟล์ ฯลฯ)

5. หากคุณรีเฟรชข้อมูลในแท็บ config ที่เซิร์ฟเวอร์ของคุณใน Ruk-Com Cloud แดชบอร์ดคุณจะเห็นารเปลี่ยนแปลงทั้งหมดดที่ทำผ่าน FTP Client

การถ่ายโอนไฟล์

1. ติดตั้ง FTP Client (ผ่าน FileZilla)

2. ใส่ Host, Username และ Password โดยใช้ข้อมูลรับรองที่ได้รับทางอีเมลหลังจากสร้าง environment เสร็จและดำเนินการเชื่อมต่อโดยการคลิกปุ่ม Quickconnect

FileZilla FTP connected

3. คุณสามารถอัปโหลดหรือดาวน์โหลดไฟล์ได้ง่ายๆ โดยดับเบิ้ลคลิกที่ไฟล์เหล่านั้น การถ่ายโอนไดเร็กทอรีและ/หรือไฟล์หลายไฟล์ ให้ เลือกไดเร็กทอรีแล้วคลิกขวา จากนั้นคลิกที่ Upload/Download ในเมนูป๊อปอัป

FTP upload file

4. คุณสามารถลากไฟล์จากไดเร็กทอรีหนึ่งแล้ววางบนไดเร็กทอรีอื่นได้เพื่อถ่ายโอน

5. หากคุณต้องการโอนไฟล์ในภายหลัง คุณสามารถเพิ่มไฟล์ของคุณลงในคิวโดยคลิกที่ Add files to queue

FTP add file to queue

6. ฟีเจอร์ที่มีประโยชน์อีกหนึ่งอย่างคือการเปรียบเทียบไดเร็กทอรี หากคุณต้องการดูความแตกต่างระหว่างไฟล์ในเครื่องและเซิร์ฟเวอร์อย่างรวดเร็วสามารถคลิกที่ View > Directory Comparison เลือกเปรียบเทียบขนาดไฟล์หรือเปรียบเทียบเวลาในการแก้ไขแล้วคลิก Enable

FTP directory comparison

การดาวน์โหลดไฟล์ Log

1. ติดตั้ง FTP Client (ผ่าน FileZilla)

2. ใส่ Host, Username และ Password โดยใช้ข้อมูลรับรองที่ได้รับทางอีเมลหลังจากสร้าง environment เสร็จและดำเนินการเชื่อมต่อโดยการคลิกปุ่ม Quickconnect

3. ตอนนี้คุณสามารถ export ไฟล์ logs ของคุณโดยไปที่โฟลเดอร์ logs เลือกไฟล์ที่คุณต้องการแล้วคลิก Download ตามที่แสดงในภาพหน้าจอด้านล่าง

FTP download logs

การซิงค์ไฟล์

1. ติดตั้งและเริ่มใช้ GoodSync. คลิกปุ่ม Browse ทางด้านซ้าย

2. ในหน้าต่างที่เปิดขึ้นเลือกแท็บ FTP กรอกข้อมูลในช่อง (Host, Username, Password) แล้วคลิกปุ่ม Go

GoodSync FTP connect

3. จากนั้นเลือกโฟลเดอร์ที่จำเป็นบนเซิร์ฟเวอร์ของคุณแล้วคลิก OK

GoodSync choose FTP folder

4. หลังจากนั้นคลิก Browse ทางด้านขวาและเลือกโฟลเดอร์ในเครื่องของคุณที่ต้องการ back up หรือ sync data

GoodSync choose local folder

5. ในหน้าต่างหลักคลิกปุ่ม Analyze คุณจะเห็นความแตกต่างทั้งหมดในโฟลเดอร์ที่เลือก

GoodSynch analyze differences

6. คลิกปุ่ม Sync เพื่อทำการ synchronization

goodsynch FTP synchronization

การแก้ไขไฟล์ Configuration

1. เปิดโปรแกรม config editor ของคุณ (ยกตัวอย่างเช่น Sublime Text 2)

2. เชื่อมต่อเวิร์ฟเวอร์ของคุณผ่าน FTP (หากคุณใช้ Sublime คลิก File -> FTP/SFTP -> Browse server) เพื่อแก้ไขไฟล์ของคุณ

Sublime file configuration

Deploy Application ผ่าน FTP

หมายเหตุ: ไม่แนะนำให้ deploy แอปของคุณในลักษณะนี้เนื่องจากแอปพลิเคชันที่คุณปรับใช้จะไม่แสดงในแดชบอร์ด

มาดูตัวอย่างสั้นๆเกี่ยวกับวิธีการปรับใช้ Railo กับ environment ของคุณผ่าน FileZilla

1. ติดตั้งและเปิด FTP Client (เช่น FileZilla)

2. เชื่อมต่อ environment ของคุณผ่าน FTP ใส่ Host, Username และ Password และคลิกปุ่ม Quickconnect

3. คัดลอกไฟล์แอปพลิเคชันของคุณลงในโฟลเดอร์ ROOT (หรือสร้างบริบทอื่นสำหรับแอปของคุณและคัดลอกไฟล์ในนั้น)

deploy application via FTP

4. ตอนนี้คุณสามารถกลับไปที่หน้าแดชบอร์ดเพื่อตรวจสอบความถูกต้องโดยคลิกปุ่ม Open in Browser ที่ environment ของคุณ

open in browser
Railo application

การใช้ FTPS

1. โปรแกรม FileZilla ไปที่ FTP client > File > Site manager

2. สร้างไซต์ใหม่และกรอกข้อมูลที่จำเป็น:

  • Host (ใช้ FTP credentials ของคุณ)
  • Protocol (FTP – File Transfer Protocol)
  • Encryption (Require explicit FTP over TLS)
  • Logon Type (Interactive)
  • User (ใช้ FTP credentials ของคุณ)

3. คลิก Connect

FileZilla FTPS connection

4. ใส่รหัสผ่าน

password for FTPS connection

5. ตอนนี้คุณสามารถเชื่อมต่อผ่าน FTPS ได้แล้ว

การเปลี่ยนรหัสผ่าน FTP ใหม่

1. คลิกปุ่ม Add-Ons ที่แอปพลิเคชันเซิร์ฟเวอร์ของคุณ

2. ค้นหาแอปพลิเคชัน FTP คลิกปุ่ม Reset Password

FTP add-on reset password

3. จากนั้นรหัสผ่านใหม่จะถูกส่งไปที่อีเมลของคุณ

การระบุรหัสผ่าน FTP ด้วยตนเอง

คุณสามารถเปลี่ยนรหัสผ่าน FTP-addon ที่ติดตั้งใน environment ของคุณได้ การกำหนดรหัสผ่านด้วยตนเองแทนการใช้รหัสผ่านที่ระบบส่งให้อัตโนมัติทางอีเมลจะช่วยเพิ่มความปลอดภัยให้กับแอปพลิเคชันของคุณเป็นอย่างมาก

คุณสามารถเปลี่ยนรหัสผ่าน FTP ของคุณผ่าน SSH โดยทำตามขั้นตอนต่อไปนี้:

1. สร้าง SSH key และเพิ่มไปยังแดชบอร์ดของคุณ

2. เข้าคอนเทนเนอร์ที่จำเป็นด้วย FTP-addon ที่ติดตั้งผ่าน SSH

SSH access to container

3. รันคำสั่งต่อไปนี้ภายในคอนเทนเนอร์:

sudo /usr/bin/passwd jelastic-ftp

4. ป้อนรหัสผ่านใหม่ของคุณและยืนยันอีกครั้ง

เพิ่มเติม: หลังจากป้อนรหัสผ่านใหม่คุณจะเห็นข้อความแจ้งเตือน เช่น BAD PASSWORD: it is based on a dictionary word or BAD PASSWORD: is too simple.
ซึ่งเป็นเพียงคำแนะนำในการเพิ่มความน่าเชื่อถือของรหัสผ่าน คุณสามารถเพิกเฉยได้หากคุณพิจารณาแล้วว่ารหัสผ่านที่กำหนดเองของคุณมีความปลอดภัยเพียงพอ อย่างไรก็ตามรหัสผ่านจะถูกเปลี่ยนตามที่คุณระบุไว้

change FTP password

ตอนนี้คุณสามารถใช้รหัสผ่านใหม่สำหรับการเข้าถึง environment ของคุณผ่าน FTP protocol

การถอนการติดตั้ง FTP

1. คลิกปุ่ม Add-Ons ที่แอปพลิเคชันเซิร์ฟเวอร์ของคุณ

2. ค้นหาแอปพลิเคชัน FTP คลิกปุ่ม Uninstall

uninstall FTP add-on

หมายเหตุ: หากคุณติดตั้ง FTP ใน environment ที่มีแอปพลิเคชันเซิร์ฟเวอร์เดียว การปรับขนาดแนวนอนของ environment นี้จะโคลนเซิร์ฟเวอร์นี้ร่วมกับ FTP (horizontal scaling) ในลักษณะดังกล่าว FTP จะถูกติดตั้งทั้งสองอินสแตนซ์โดยมีข้อมูลรับรองเดียวกัน

ในกรณีที่ใช้เซิร์ฟเวอร์ Glassfish หากติดตั้ง FTP จะไม่ถูกโคลนไปยังเซิร์ฟเวอร์ GlassFish ที่เพิ่มใหม่ ดังนั้นหากต้องการติดตั้ง FTP ทั้งสองอินสแตนซ์ คุณต้องปิดการใช้งาน FTP แล้วติดตั้งใหม่อีกครั้งเพื่อเปิดใช้งานบนเซิร์ฟเวอร์ทั้งสอง