- Gokapi ช่วยให้คุณจัดการไฟล์ชั่วคราวพร้อมจำกัดจำนวนการดาวน์โหลด และปกป้องไฟล์เหล่านั้นด้วยรหัสผ่านและการเข้ารหัสแบบ End-to-End (E2EE)
- การติดตั้งสามารถทำได้โดยใช้ Docker หรือ Bare Metal ซึ่งให้ความยืดหยุ่นในการเลือกใช้ฐานข้อมูล (SQLite หรือ Redis)
- นอกจากนี้ยังมีวิธีการรักษาความปลอดภัยเสริมอื่นๆ เช่น การเข้ารหัสโฟลเดอร์ใน Windows/Mac และการใช้ไฟล์ .htaccess บนเว็บเซิร์ฟเวอร์
การส่งไฟล์ขนาดใหญ่ทางอีเมลอาจไม่ใช่เรื่องที่ทำได้เสมอไป ในขณะที่การปล่อยไฟล์ไว้ในโฟลเดอร์สาธารณะอย่างถาวรอาจทำให้ไฟล์นั้นเสี่ยงต่อการถูกโจมตีเป็นเวลานานเกินความจำเป็น ทางเลือกหนึ่งคือ... สร้างลิงก์ที่หมดอายุหลังจากไม่กี่วัน หรือเมื่อถึงจำนวนดาวน์โหลดที่กำหนดไว้.
Gokapi คือเซิร์ฟเวอร์แชร์ไฟล์ชั่วคราว ซึ่งคุณสามารถโฮสต์บน VPS, NAS หรือคอมพิวเตอร์ของคุณเองได้ มันช่วยให้คุณจำกัดการดาวน์โหลด กำหนดวันหมดอายุ ป้องกันลิงก์ด้วยรหัสผ่าน และเลือกใช้พื้นที่จัดเก็บข้อมูลภายในเครื่องหรือบริการที่เข้ากันได้กับ S3 ได้ เนื่องจากเป็นแอปพลิเคชันที่โฮสต์ด้วยตนเอง ความปลอดภัยจึงไม่ได้ขึ้นอยู่กับ Gokapi เพียงอย่างเดียว คุณต้องอัปเดตเซิร์ฟเวอร์อยู่เสมอ ใช้ HTTPS ปกป้องบัญชี และทำการสำรองข้อมูล ความปลอดภัย ของการกำหนดค่า
Gokapi คืออะไร และใครบ้างที่สามารถใช้งานได้?

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

วิธีการที่แนะนำสำหรับผู้ใช้ส่วนใหญ่คือการใช้เวอร์ชันเสถียรผ่าน Docker ควรจัดเก็บข้อมูลและไดเร็กทอรีการกำหนดค่าไว้ในวอลุ่มถาวร มิเช่นนั้น คุณอาจสูญเสียข้อมูลเหล่านั้นเมื่อลบหรืออัปเดตคอนเทนเนอร์
คุณสามารถเริ่มการติดตั้งขั้นพื้นฐานได้ด้วยคำสั่งนี้:
docker run -d \
--name gokapi \
--restart unless-stopped \
-v gokapi-data:/app/data \
-v gokapi-config:/app/config \
-p 127.0.0.1:53842:53842 \
-e TZ=Europe/Madrid \
f0rc3/gokapi:latest
หลังจากเริ่มใช้งานครั้งแรก ระบบจะเปิดออก http://127.0.0.1:53842/setupวิซาร์ดนี้ช่วยให้คุณสามารถกำหนดค่าฐานข้อมูล วิธีการตรวจสอบสิทธิ์ ที่อยู่สาธารณะ พื้นที่จัดเก็บ และระดับการเข้ารหัสได้
พอร์ตถูกผูกไว้กับ localhost เท่านั้น เนื่องจากในการติดตั้งที่เปิดเผยสู่ภายนอกอินเทอร์เน็ต การวาง Gokapi ไว้หลัง localhost นั้นเหมาะสมกว่า รีเวิร์สพร็อกซีที่ใช้ HTTPSเช่น Caddy, Nginx หรือ Traefik การเผยแพร่พอร์ตโดยตรงโดยไม่ใช้ TLS จะทำให้ข้อมูลประจำตัวและไฟล์ต่างๆ เสี่ยงต่อการถูกเปิดเผยระหว่างการส่งข้อมูล
หากคุณต้องการใช้ Docker Compose ไฟล์ต่างๆ ก็มีอยู่ในที่เก็บไฟล์อย่างเป็นทางการ docker-compose.yaml y .env.distเปลี่ยนชื่อรายการหลังเป็น .envพิจารณาตัวเลือกของคุณแล้วลงมือเลย docker compose up -d.
ตั้งค่าผู้ใช้, HTTPS และพื้นที่จัดเก็บข้อมูล
Gokapi ใช้ SQLite เป็นค่าเริ่มต้น ซึ่งเพียงพอสำหรับการติดตั้งส่วนบุคคลส่วนใหญ่ Redis อาจมีประโยชน์ในกรณีที่มีปริมาณการใช้งานสูงหรือเมื่อฐานข้อมูลอยู่บนสื่อบันทึกข้อมูลที่ช้า แต่คุณต้องเปิดใช้งานการคงอยู่ของข้อมูลเพื่อหลีกเลี่ยงการสูญเสียข้อมูลหลังจากการรีบูตเครื่อง
ในการเข้าสู่ระบบ คุณสามารถใช้ชื่อผู้ใช้และรหัสผ่านในเครื่อง, OpenID Connect หรือการตรวจสอบสิทธิ์แบบมอบหมายผ่านทางส่วนหัวได้ OpenID Connect ช่วยให้สามารถผสานรวมกับผู้ให้บริการต่างๆ เช่น Google, Authelia, Keycloak และ Microsoft Entra ได้ อย่าปิดใช้งานการตรวจสอบสิทธิ์ภายใน เว้นแต่ว่าพร็อกซีแบบย้อนกลับจะได้รับการกำหนดค่าอย่างถูกต้องเพื่อปกป้องเส้นทางการดูแลระบบทั้งหมด
ไฟล์สามารถบันทึกได้ทั้งในเครื่องหรือในพื้นที่จัดเก็บข้อมูลที่รองรับ S3 เช่น Amazon S3 หรือ Backblaze B2 ในกรณีหลังนี้ จะใช้พื้นที่จัดเก็บข้อมูลส่วนตัวและข้อมูลรับรองเฉพาะที่มีสิทธิ์การเข้าถึงขั้นต่ำที่จำเป็น Gokapi สร้างลิงก์ดาวน์โหลดที่มีอายุสั้นและลงชื่อล่วงหน้าแล้ว แต่ยังสามารถทำหน้าที่เป็นพร็อกซีได้หากคุณไม่ต้องการเปิดเผยที่อยู่ของผู้ให้บริการ
โปรดทราบว่าหากคุณไม่ได้เปิดใช้งานการเข้ารหัส ไฟล์ที่จัดเก็บไว้ใน S3 จะยังคงสามารถอ่านได้โดยทุกคนที่เข้าถึงบัคเก็ตนั้นได้
วิธีป้องกันไฟล์ดาวน์โหลดด้วยรหัสผ่านและกำหนดวันหมดอายุ
จากแผงการอัปโหลด คุณสามารถเลือกไฟล์และตั้งค่าข้อจำกัดสองอย่างแยกกันได้ คือ จำนวนการดาวน์โหลดสูงสุด และจำนวนวันที่ไฟล์จะคงอยู่ เมื่อถึงข้อจำกัดใดข้อจำกัดหนึ่ง ไฟล์จะหมดอายุและ Gokapi จะลบไฟล์นั้นในระหว่างกระบวนการล้างข้อมูลตามปกติ
คุณสามารถกำหนดได้ รหัสผ่านเฉพาะสำหรับการดาวน์โหลดใช้รหัสผ่านที่แตกต่างจากรหัสผ่านบัญชีผู้ดูแลระบบ และส่งรหัสผ่านนี้ให้ผู้รับผ่านช่องทางอื่น ตัวอย่างเช่น คุณสามารถแชร์ลิงก์ทางอีเมล และส่งรหัสผ่านผ่านแอปพลิเคชันส่งข้อความ
รหัสผ่านไม่สามารถชดเชยลิงก์ที่เปิดเผยมากเกินไปได้ และไม่สามารถทดแทน HTTPS ได้ ควรหลีกเลี่ยงการโพสต์ที่อยู่ดาวน์โหลดบนหน้าเว็บสาธารณะ และลบไฟล์ที่ไม่จำเป็นออกด้วยตนเอง แม้ว่าไฟล์นั้นจะยังไม่หมดอายุก็ตาม
คุณควรเลือกใช้ระดับการเข้ารหัสแบบใด?

Gokapi มีระบบเข้ารหัสสามระดับ นอกเหนือจากตัวเลือกที่จะไม่เข้ารหัสไฟล์:
- ระดับ 1: ฟังก์ชันนี้จะเข้ารหัสเฉพาะไฟล์ที่จัดเก็บไว้ในหน่วยความจำภายในเครื่องเท่านั้น ไฟล์ที่ส่งไปยัง S3 จะไม่ได้รับการเข้ารหัส
- ระดับ 2: มันเข้ารหัสทั้งพื้นที่จัดเก็บข้อมูลในเครื่องและบนเซิร์ฟเวอร์ เมื่อใช้ S3 ส่วนหนึ่งของกระบวนการถอดรหัสจะดำเนินการบนอุปกรณ์ของผู้รับ
- ระดับ 3: ระบบจะใช้การเข้ารหัสแบบ end-to-end ในเบราว์เซอร์ก่อนการอัปโหลด ดังนั้นเซิร์ฟเวอร์จะไม่ได้รับไฟล์ต้นฉบับที่ไม่ได้เข้ารหัสในระหว่างการทำงานตามปกติ
ระดับ 3 ให้ความเป็นส่วนตัวมากขึ้น แต่จะปิดใช้งานการเชื่อมต่อโดยตรงหรือ ลิงก์ด่วน และอาจทำให้ความเร็วในการดาวน์โหลดลดลง โดยเฉพาะบนอุปกรณ์เคลื่อนที่ เอกสารยังเตือนถึงความไม่เข้ากันกับ Firefox ซึ่งอาจทำให้ไฟล์ถูกตัดทอน ดังนั้นจึงควรทดสอบกับเบราว์เซอร์ของผู้รับก่อน
นอกจากนี้ การนำการเข้ารหัสลับของ Gokapi มาใช้ก็เช่นกัน ยังไม่ได้ผ่านการตรวจสอบโดยผู้ตรวจสอบอิสระไม่ควรนำเสนอสิ่งนี้เป็นหลักประกันที่สมบูรณ์แบบสำหรับข้อมูลที่มีความละเอียดอ่อนสูงมาก
การขอไฟล์ไม่ได้ใช้การเข้ารหัสแบบ end-to-end ระดับ 3 การอัปโหลดที่ได้รับผ่านลิงก์เหล่านี้อาจใช้การเข้ารหัสระดับ 1 หรือ 2 แต่ไม่ได้เข้ารหัสล่วงหน้าในเบราว์เซอร์ของผู้ส่ง
ก่อนเปลี่ยนแปลงการตั้งค่าการเข้ารหัส โปรดสำรองข้อมูลก่อน Gokapi เตือนว่าการแก้ไขการตั้งค่าเหล่านี้อาจลบไฟล์ที่เข้ารหัสไว้แล้วได้
สั่งการอัปโหลดและดาวน์โหลดโดยอัตโนมัติด้วย CLI
เครื่องมือ gokapi-cli โปรแกรมนี้ช่วยให้คุณสามารถอัปโหลดไฟล์ กำหนดวันหมดอายุ จำกัดจำนวนการดาวน์โหลด และเพิ่มรหัสผ่านได้จากเทอร์มินัล ขั้นแรก คุณต้องยืนยันตัวตนโดยใช้คีย์ API โดยต้องได้รับอนุญาตที่จำเป็น:
gokapi-cli login
จากนั้นคุณสามารถทำการอัปโหลดโดยระบุพารามิเตอร์ต่างๆ ได้ เช่น --expiry-days, --expiry-downloads y --passwordโปรดระมัดระวังเมื่อพิมพ์รหัสผ่านลงในช่องคำสั่งโดยตรง เนื่องจากรหัสผ่านเหล่านั้นอาจถูกบันทึกไว้ในประวัติการใช้งานเทอร์มินัล
คำสั่ง upload-dir บีบอัดโฟลเดอร์เป็นรูปแบบ ZIP ก่อนอัปโหลด หากต้องการดาวน์โหลดไฟล์ ให้ใช้ตัวระบุไฟล์:
gokapi-cli download -i IDENTIFICADOR
ตัวเลือก --remove ลบไฟล์ออกจากเซิร์ฟเวอร์หลังจากดาวน์โหลดเสร็จสมบูรณ์ ข้อมูลรับรอง CLI จะถูกจัดเก็บไว้ในไฟล์การกำหนดค่าโดยไม่มีการเข้ารหัส ดังนั้นคุณควรจำกัดสิทธิ์การเข้าถึงและหลีกเลี่ยงการบันทึกไว้ในโฟลเดอร์ที่แชร์
นอกจากนี้ Gokapi ยังมี REST API ให้บริการอีกด้วย เพื่อผสานการอัปโหลดเข้ากับสคริปต์และแอปพลิเคชัน คีย์ API ควรมีสิทธิ์ที่จำเป็นเท่านั้น และไม่ควรรวมไว้ในที่เก็บโค้ดโดยตรง
Gokapi มีประโยชน์อย่างยิ่งเมื่อคุณต้องการควบคุมระยะเวลาที่ไฟล์จะคงอยู่และจำนวนครั้งที่สามารถดาวน์โหลดได้ การติดตั้งอย่างปลอดภัยนั้นต้องใช้การผสมผสานระหว่างลิงก์ชั่วคราว รหัสผ่าน HTTPS สิทธิ์การเข้าถึงที่เหมาะสม และระดับการเข้ารหัสที่เหมาะสมกับความละเอียดอ่อนของข้อมูล
ฉันเป็นผู้ชื่นชอบเทคโนโลยีที่เปลี่ยนความสนใจ "เกินบรรยาย" ของเขาให้กลายเป็นอาชีพ ฉันใช้เวลามากกว่า 10 ปีในชีวิตไปกับเทคโนโลยีล้ำสมัยและปรับแต่งโปรแกรมทุกประเภทด้วยความอยากรู้อยากเห็น ตอนนี้ฉันมีความเชี่ยวชาญในด้านเทคโนโลยีคอมพิวเตอร์และวิดีโอเกม เนื่องจากเป็นเวลากว่า 5 ปีแล้วที่ฉันเขียนให้กับเว็บไซต์ต่างๆ เกี่ยวกับเทคโนโลยีและวิดีโอเกม โดยสร้างบทความที่พยายามให้ข้อมูลที่คุณต้องการในภาษาที่ทุกคนเข้าใจได้
หากคุณมีคำถามใดๆ ความรู้ของฉันมีตั้งแต่ทุกอย่างที่เกี่ยวข้องกับระบบปฏิบัติการ Windows รวมถึง Android สำหรับโทรศัพท์มือถือ และความมุ่งมั่นของฉันคือคุณ ฉันยินดีสละเวลาสักครู่เสมอและช่วยคุณแก้ไขคำถามใดๆ ที่คุณอาจมีในโลกอินเทอร์เน็ตนี้