2025-04-14 · อ่าน 9 นาที

วิธีตั้งค่าการอัปโหลด SFTP สำหรับภาพหน้าจอของคุณ (คู่มือฉบับสมบูรณ์)

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

การอัปโหลด SFTP พลิกโฉมโมเดลนี้ ภาพหน้าจอของคุณจะไปที่เซิร์ฟเวอร์ของคุณเอง บนโดเมนของคุณเอง ภายใต้การควบคุมของคุณเอง คุณเป็นผู้ตัดสินใจว่าใครสามารถเข้าถึงได้ คุณเป็นผู้ตัดสินใจว่าจะเก็บไว้ได้นานแค่ไหน คุณควบคุมทั้งกระบวนการตั้งแต่การจับภาพไปจนถึงลิงก์

คู่มือนี้จะแนะนำการตั้งค่าการอัปโหลดภาพหน้าจอด้วย SFTP โดยใช้ Maxisnap, ตั้งแต่การเตรียมเซิร์ฟเวอร์ไปจนถึงการกำหนดค่าและการอัปโหลดอัตโนมัติครั้งแรกของคุณ หากคุณมีเว็บเซิร์ฟเวอร์หรือ VPS คุณสามารถเริ่มใช้งานได้ภายใน 15 นาที

ทำไมต้อง SFTP เหนือวิธีการอัปโหลดอื่นๆ

SFTP (SSH File Transfer Protocol) ถ่ายโอนไฟล์ผ่านการเชื่อมต่อ SSH ที่เข้ารหัส เมื่อเทียบกับวิธีการอัปโหลดอื่นๆ มีข้อดีหลายประการ:

  • เข้ารหัสระหว่างการส่ง — ข้อมูลทั้งหมดถูกเข้ารหัสผ่าน SSH แตกต่างจาก FTP ทั่วไป ภาพหน้าจอของคุณไม่สามารถถูกดักจับระหว่างการส่งได้
  • ไม่ต้องมีซอฟต์แวร์เพิ่มเติมบนเซิร์ฟเวอร์ — หากเซิร์ฟเวอร์ของคุณรัน SSH (เซิร์ฟเวอร์ Linux เกือบทั้งหมดทำได้) SFTP ก็สามารถใช้งานได้ทันที ไม่ต้องมี FTP daemon, ไม่มี API endpoint ของเว็บเซิร์ฟเวอร์, ไม่ต้องมีการกำหนดค่าเพิ่มเติม
  • การยืนยันตัวตนด้วยคีย์ — คุณสามารถใช้คู่คีย์ SSH แทนรหัสผ่าน ซึ่งปลอดภัยและสะดวกสบายยิ่งขึ้น
  • โปรโตคอลมาตรฐาน — SFTP รองรับโดยผู้ให้บริการโฮสติ้งหลักทุกราย, VPS, และแพลตฟอร์มคลาวด์ ไม่มีการผูกขาดผู้ให้บริการ
  • ควบคุมได้อย่างเต็มที่ — เซิร์ฟเวอร์ของคุณ, โดเมนของคุณ, กฎของคุณ ภาพหน้าจอเป็นไฟล์ปกติบนระบบไฟล์ของคุณ

Maxisnap ยังรองรับ FTP, ที่เก็บข้อมูลที่เข้ากันได้กับ S3, และการอัปโหลด HTTP POST แต่สำหรับผู้ใช้ส่วนใหญ่ที่มีเซิร์ฟเวอร์ของตนเอง SFTP เป็นตัวเลือกที่ง่ายที่สุดและปลอดภัยที่สุด ดูตัวเลือกการอัปโหลดทั้งหมด.

สิ่งที่คุณต้องมี

  • เซิร์ฟเวอร์ที่มีการเข้าถึง SSH — Linux VPS ใดก็ได้ใช้งานได้ DigitalOcean, Linode, Hetzner, AWS EC2, หรือฮาร์ดแวร์ของคุณเอง คุณต้องมีการเข้าถึง SSH และเว็บเซิร์ฟเวอร์ (Nginx หรือ Apache) เพื่อให้บริการรูปภาพที่อัปโหลด
  • ชื่อโดเมน — ไม่บังคับแต่แนะนำ ภาพหน้าจอที่อัปโหลดไปยัง screenshots.yourdomain.com ดูเป็นมืออาชีพมากกว่าที่อยู่ IP
  • Maxisnap Pro — การอัปโหลด SFTP ต้องใช้ ใบอนุญาต Maxisnap Pro. เวอร์ชันฟรีมีการจับภาพและคำอธิบายประกอบเต็มรูปแบบ

ขั้นตอนที่ 1: เตรียมเซิร์ฟเวอร์ของคุณ

หากคุณมีเว็บเซิร์ฟเวอร์ที่มีการเข้าถึง SSH อยู่แล้ว ให้ข้ามไปขั้นตอนที่ 2 มิฉะนั้น นี่คือการตั้งค่าขั้นต่ำ:

บนเซิร์ฟเวอร์ของคุณ ให้สร้างไดเรกทอรีสำหรับภาพหน้าจอและกำหนดค่าเว็บเซิร์ฟเวอร์ของคุณเพื่อให้บริการไฟล์จากไดเรกทอรีนั้น

# Create the screenshot directory
sudo mkdir -p /var/www/screenshots
sudo chown $USER:$USER /var/www/screenshots
sudo chmod 755 /var/www/screenshots

หากคุณใช้ Nginx ให้เพิ่มบล็อกเซิร์ฟเวอร์ (หรือเพิ่มตำแหน่งไปยังไซต์ที่มีอยู่ของคุณ):

server {
    listen 80;
    server_name screenshots.yourdomain.com;

    root /var/www/screenshots;

    location / {
        try_files $uri =404;
        expires 30d;
        add_header Cache-Control "public, immutable";
    }
}

หากคุณใช้ Apache สิ่งที่เทียบเท่ากันนั้นง่ายกว่า — เพียงแค่ชี้ VirtualHost ไปยังไดเรกทอรี:

<VirtualHost *:80>
    ServerName screenshots.yourdomain.com
    DocumentRoot /var/www/screenshots
</VirtualHost>

เพิ่ม SSL ด้วย Let's Encrypt (แนะนำเป็นอย่างยิ่ง):

sudo certbot --nginx -d screenshots.yourdomain.com
# or for Apache:
sudo certbot --apache -d screenshots.yourdomain.com

ขั้นตอนที่ 2: ตั้งค่าการยืนยันตัวตนด้วยคีย์ SSH (แนะนำ)

คุณสามารถยืนยันตัวตนด้วยรหัสผ่านได้ แต่คีย์ SSH มีความปลอดภัยมากกว่าและช่วยลดความจำเป็นในการพิมพ์รหัสผ่าน หากคุณใช้คีย์ SSH อยู่แล้ว ให้ข้ามขั้นตอนนี้

บนเครื่อง Windows ของคุณ ให้เปิด PowerShell:

# Generate an SSH key pair (if you don't have one)
ssh-keygen -t ed25519 -C "maxisnap-upload"

# Copy the public key to your server
type $env:USERPROFILE\.ssh\id_ed25519.pub | ssh user@your-server "cat >> ~/.ssh/authorized_keys"

ทดสอบการเชื่อมต่อ:

ssh user@your-server "echo 'Connection successful'"

หากเชื่อมต่อได้โดยไม่ถามรหัสผ่าน แสดงว่าการยืนยันตัวตนด้วยคีย์ทำงานอยู่

ขั้นตอนที่ 3: กำหนดค่า Maxisnap

เปิด Maxisnap และไปที่ การตั้งค่า > อัปโหลด. เลือก SFTP เป็นโปรโตคอลการอัปโหลดและกรอกข้อมูลในช่องต่อไปนี้:

  • โฮสต์: ชื่อโฮสต์หรือที่อยู่ IP ของเซิร์ฟเวอร์ของคุณ (เช่น, screenshots.yourdomain.com)
  • พอร์ต: 22 (พอร์ต SSH เริ่มต้น หากเซิร์ฟเวอร์ของคุณใช้พอร์ตอื่น ให้เปลี่ยน)
  • ชื่อผู้ใช้: ชื่อผู้ใช้ SSH ของคุณ
  • การยืนยันตัวตน: ไฟล์คีย์ (เลือกคีย์ส่วนตัวของคุณ โดยปกติคือ C:\Users\YourName\.ssh\id_ed25519) หรือ รหัสผ่าน
  • พาธระยะไกล: /var/www/screenshots/ (ไดเรกทอรีที่คุณสร้างไว้ในขั้นตอนที่ 1)
  • คำนำหน้า URL: https://screenshots.yourdomain.com/ (URL สาธารณะที่สามารถเข้าถึงไฟล์ได้)

คลิก ทดสอบการเชื่อมต่อ เพื่อตรวจสอบ Maxisnap จะพยายามเชื่อมต่อและเขียนไฟล์ทดสอบ หากสำเร็จ คุณก็พร้อมที่จะอัปโหลดแล้ว

ขั้นตอนที่ 4: การอัปโหลดอัตโนมัติครั้งแรกของคุณ

กด Ctrl+Alt+7 (ปุ่มลัดอัปโหลดอัตโนมัติของ Maxisnap) เลือกพื้นที่บนหน้าจอของคุณ Maxisnap จะจับภาพพื้นที่นั้น อัปโหลดผ่าน SFTP และคัดลอกลิงก์ที่แชร์ได้ไปยังคลิปบอร์ดของคุณ

วางลิงก์นั้นลงในเบราว์เซอร์ ภาพหน้าจอของคุณควรจะโหลดจากโดเมนของคุณเอง URL จะมีลักษณะดังนี้:

https://screenshots.yourdomain.com/2025-04-14_143022.png

เสร็จสิ้นแล้ว ตั้งแต่การจับภาพไปจนถึงลิงก์ที่แชร์ได้ในเวลาไม่ถึงสามวินาที โดยโฮสต์อยู่บนเซิร์ฟเวอร์ของคุณเอง

การตั้งชื่อและการจัดระเบียบไฟล์

Maxisnap สร้างชื่อไฟล์ตามการประทับเวลาการจับภาพโดยค่าเริ่มต้น (เช่น, 2025-04-14_143022.png) คุณสามารถปรับแต่งรูปแบบการตั้งชื่อได้ที่ การตั้งค่า > อัปโหลด > รูปแบบชื่อไฟล์ ตัวเลือกได้แก่:

  • {datetime} — การประทับเวลาแบบเต็ม (ค่าเริ่มต้น)
  • {date}/{datetime} — จัดระเบียบเป็นไดเรกทอรีย่อยตามวันที่
  • {random} — สตริงสุ่ม 8 ตัวอักษรสำหรับ URL ที่ไม่สามารถเชื่อมโยงได้
  • {random}-{datetime} — คำนำหน้าแบบสุ่มเพื่อความไม่ซ้ำกันพร้อมการประทับเวลาเพื่อการค้นหา

สำหรับการตั้งค่าที่คำนึงถึงความปลอดภัย ให้ใช้ {random} การตั้งชื่อ วิธีนี้ทำให้ URL คาดเดาไม่ได้ — ไม่มีใครสามารถนับภาพหน้าจอของคุณได้โดยการเพิ่มการประทับเวลา

ขั้นสูง: การรักษาความปลอดภัยเซิร์ฟเวอร์ภาพหน้าจอของคุณ

สำหรับการใช้งานระดับมืออาชีพ โปรดพิจารณามาตรการรักษาความปลอดภัยเพิ่มเติมเหล่านี้:

การควบคุมการเข้าถึง

โดยค่าเริ่มต้น ภาพหน้าจอของคุณสามารถเข้าถึงได้แบบสาธารณะผ่าน URL หากต้องการจำกัดการเข้าถึง คุณมีหลายทางเลือก:

  • ชื่อไฟล์แบบสุ่ม — URL จะคาดเดาไม่ได้หากไม่มีลิงก์ที่ถูกต้อง เป็นวิธีที่ง่ายแต่ไม่ใช่การรักษาความปลอดภัยที่แท้จริง
  • Nginx basic auth — เพิ่มการป้องกันด้วยรหัสผ่านให้กับไดเรกทอรีภาพหน้าจอทั้งหมด มีประโยชน์สำหรับการแชร์ภายในทีม
  • การอนุญาต IP (IP whitelisting) — จำกัดการเข้าถึงเฉพาะช่วง IP ของสำนักงานหรือ VPN ของคุณ
  • Signed URLs — หากคุณใช้พื้นที่จัดเก็บที่เข้ากันได้กับ S3 แทน SFTP คุณสามารถสร้าง Signed URLs ที่มีเวลาจำกัดได้

การล้างข้อมูลอัตโนมัติ

ภาพหน้าจอจะสะสมเมื่อเวลาผ่านไป เพิ่ม cron job เพื่อลบไฟล์เก่า:

# Delete screenshots older than 90 days
0 3 * * * find /var/www/screenshots -type f -mtime +90 -delete

แบนด์วิดท์และพื้นที่จัดเก็บ

ขนาดภาพหน้าจอโดยเฉลี่ยคือ 200-500 KB ในรูปแบบ PNG หากถ่าย 50 ภาพหน้าจอต่อวัน จะใช้พื้นที่ประมาณ 10-25 MB ต่อวัน หรือ 300-750 MB ต่อเดือน แผน VPS ส่วนใหญ่มีพื้นที่จัดเก็บและแบนด์วิดท์มากกว่าที่จำเป็นมาก การโฮสต์ภาพหน้าจอไม่ใช้ทรัพยากรมาก

การแก้ไขปัญหา

"Connection refused" หรือหมดเวลา: ตรวจสอบว่าพอร์ต SSH ของเซิร์ฟเวอร์ของคุณเปิดอยู่ (ตรวจสอบกฎไฟร์วอลล์ด้วย sudo ufw status) ตรวจสอบให้แน่ใจว่าบริการ SSH กำลังทำงาน (sudo systemctl status sshd).

"Permission denied": ผู้ใช้ SSH ของคุณต้องมีสิทธิ์เขียนไปยังพาธระยะไกล ตรวจสอบความเป็นเจ้าของด้วย ls -la /var/www/screenshots/ไดเรกทอรีควรเป็นของผู้ใช้ SSH ของคุณ หรือกลุ่มที่ผู้ใช้ของคุณเป็นสมาชิกอยู่

อัปโหลดสำเร็จแต่ลิงก์ใช้งานไม่ได้: ตรวจสอบว่าคำนำหน้า URL ของคุณตรงกับ URL สาธารณะจริง ตรวจสอบว่าเว็บเซิร์ฟเวอร์ของคุณกำลังให้บริการไดเรกทอรีภาพหน้าจอ ลองเข้าถึงไฟล์โดยตรงผ่านเบราว์เซอร์ด้วยพาธแบบเต็ม

การอัปโหลดช้า: SFTP มีการเข้ารหัส ซึ่งเพิ่มโอเวอร์เฮดเล็กน้อยเมื่อเทียบกับ FTP ทั่วไป สำหรับภาพหน้าจอทั่วไป (200-500 KB) การอัปโหลดควรเสร็จสิ้นภายในหนึ่งวินาทีบนการเชื่อมต่อที่เหมาะสม หากการอัปโหลดช้าอย่างต่อเนื่อง ให้ตรวจสอบการเชื่อมต่อเครือข่ายของคุณกับเซิร์ฟเวอร์

ทางเลือกอื่นสำหรับ SFTP

SFTP เป็นตัวเลือกที่ดีที่สุดสำหรับผู้ใช้ส่วนใหญ่ที่มีเซิร์ฟเวอร์ของตนเอง แต่ Maxisnap ก็รองรับโปรโตคอลอื่น ๆ ด้วยเช่นกัน:

  • พื้นที่จัดเก็บที่เข้ากันได้กับ S3 — AWS S3, DigitalOcean Spaces, Cloudflare R2, MinIO เหมาะที่สุดสำหรับทีมที่ต้องการพื้นที่จัดเก็บแบบจัดการโดยไม่ต้องดูแลเซิร์ฟเวอร์เอง
  • HTTP POST — อัปโหลดไปยัง API endpoint ใดก็ได้ที่รองรับการอัปโหลดไฟล์ เหมาะที่สุดสำหรับการผสานรวมกับแบ็กเอนด์ที่กำหนดเอง
  • FTP — โปรโตคอลแบบเก่า ไม่มีการเข้ารหัส ใช้เฉพาะในกรณีที่ SFTP ไม่พร้อมใช้งาน ไม่แนะนำสำหรับภาพหน้าจอที่มีความละเอียดอ่อน

ทำไมภาพหน้าจอที่โฮสต์เองจึงสำคัญ

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

ภาพหน้าจอที่โฮสต์เองช่วยขจัดข้อจำกัดเหล่านี้ รูปภาพของคุณจะอยู่บนเซิร์ฟเวอร์ของคุณ เข้าถึงได้จากโดเมนของคุณ ตราบเท่าที่คุณต้องการ สำหรับ ภาพหน้าจอที่คำนึงถึงความเป็นส่วนตัว, สำหรับเอกสารประกอบระดับมืออาชีพ และสำหรับลิงก์ที่ต้องทำงานได้อย่างน่าเชื่อถือ — การโฮสต์เองคือทางเลือกที่เหมาะสม นี่เป็นหนึ่งในเหตุผลหลักที่นักพัฒนา เลือก Maxisnap แทน Monosnap.

ดาวน์โหลด Maxisnap และตั้งค่าการอัปโหลด SFTP วันนี้ อีกสิบห้านาทีนับจากนี้ คุณจะมีเวิร์กโฟลว์การจับภาพหน้าจอที่เร็วขึ้น เป็นส่วนตัวมากขึ้น และอยู่ภายใต้การควบคุมของคุณอย่างสมบูรณ์

พร้อมที่จะลองใช้เครื่องมือจับภาพหน้าจอที่ดีกว่าแล้วหรือยัง?

ดาวน์โหลด Maxisnap ฟรีและสัมผัสความแตกต่าง

ดาวน์โหลด Maxisnap ฟรี