Technical Anshu หน้าแรก > บทช่วยสอน > ตั้งค่าเซิร์ฟเวอร์ SFTP Ubuntu
🔐 เซิร์ฟเวอร์ SFTP บน Ubuntu

ตั้งค่าเซิร์ฟเวอร์ SFTP Ubuntu - การถ่ายโอนไฟล์ SSH ที่ปลอดภัย

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

✍️ Technical Anshu🐧 Ubuntu / OpenSSH🎧 Multi-Language Audio
ตั้งค่าเซิร์ฟเวอร์ SFTP Ubuntu - การถ่ายโอนไฟล์ SSH ที่ปลอดภัย
🎧 เสียงหลายภาษา: ในโปรแกรมเล่นวิดีโอ คลิก [การตั้งค่า] (⚙️) ➔ [แทร็กเสียง] เพื่อเลือกภาษาที่คุณต้องการ

📑บทต่างๆ

  1. SFTP คืออะไร — การถ่ายโอนไฟล์ที่อยู่ภายใน SSH เข้ารหัสตั้งแต่ต้นจนจบ
  2. ติดตั้งแพ็คเกจเซิร์ฟเวอร์ OpenSSH บน Ubuntu
  3. เริ่มบริการ ssh และทำให้สามารถรีบูตได้
  4. ยืนยันบรรทัดระบบย่อย SFTP ใน sshd_config
  5. สร้างผู้ใช้ที่โอนโดยเฉพาะ — ไม่ต้องเข้าสู่ระบบผู้ดูแลระบบของคุณ
  6. เปิดไฟร์วอลล์สำหรับ SSH
  7. เชื่อมต่อจากเครื่องที่สองและถ่ายโอนไฟล์แรก
  8. การตรวจสอบความปลอดภัยก่อนใช้งานเซิร์ฟเวอร์จริง

📋 ภาพรวมและคำแนะนำทีละขั้นตอน

1

ติดตั้งแพ็คเกจเซิร์ฟเวอร์ OpenSSH

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

Terminal
sudo apt update
sudo apt install openssh-server

เรียกใช้ sudo apt update ก่อนเพื่อให้รายการแพ็กเกจใหม่ จากนั้นติดตั้งและยืนยันด้วย Y โปรแกรมติดตั้งจะสร้างการกำหนดค่าที่ /etc/ssh/sshd_config และสร้างคีย์โฮสต์ของเครื่องนี้โดยอัตโนมัติ นั่นคือซอฟต์แวร์ทั้งหมดที่มีอยู่จริงๆ SFTP เป็นระบบย่อยของบริการเดียวนี้ ไม่ใช่การดาวน์โหลดเพิ่มเติม และจะตอบกลับบนพอร์ต SSH มาตรฐาน 22

2

เริ่มบริการและทำให้มันรอดจากการรีบูต

แพ็คเกจมักจะเริ่มให้บริการด้วยตัวเอง พิสูจน์มัน และให้แน่ใจว่ามันกลับมาอีกครั้งหลังจากไฟฟ้าดับ:

Terminal
sudo systemctl status ssh
sudo systemctl enable ssh
sudo systemctl start ssh

sudo systemctl status ssh ควรแสดงบรรทัด active (กำลังทำงาน) สีเขียว ซึ่งหมายความว่าเซิร์ฟเวอร์ SFTP กำลังฟังอยู่ sudo systemctl Enable ssh ทำให้มันเริ่มทำงานทุกครั้งที่บู๊ต และหากมันหยุด sudo systemctl start ssh จะนำมันกลับมา หลังจากเปลี่ยนแปลงการกำหนดค่าในภายหลัง sudo systemctl restart ssh จะเป็นคำสั่งที่ใช้

📌 หมายเหตุ: บน Ubuntu บริการเรียกว่า ssh ไม่ใช่ sshd การใช้ชื่อที่ไม่ถูกต้องเป็นสาเหตุที่พบบ่อยที่สุดที่ทำให้คำแนะนำที่ถูกต้องดูเหมือนจะล้มเหลว
3

ยืนยันบรรทัดระบบย่อย SFTP

เปิดการกำหนดค่าหนึ่งครั้งแล้วดู:

Terminal
sudo nano /etc/ssh/sshd_config

ใกล้ด้านล่างคุณจะพบบรรทัดนี้ ซึ่ง Ubuntu รวมไว้เป็นค่าเริ่มต้น:

/etc/ssh/sshd_config
Subsystem sftp /usr/lib/openssh/sftp-server

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

4

สร้างผู้ใช้การโอนเฉพาะ

อย่ามอบข้อมูลเข้าสู่ระบบผู้ดูแลระบบของคุณเองสำหรับการถ่ายโอนไฟล์ สร้างบัญชีที่มีอยู่สำหรับการย้ายไฟล์เท่านั้น:

Terminal
sudo adduser sftpuser

ตั้งรหัสผ่านเมื่อระบบถาม และข้ามคำถามเกี่ยวกับชื่อและหมายเลขโทรศัพท์ด้วย Enter — เป็นทางเลือก ผู้ใช้รายนี้ได้รับโฮมโฟลเดอร์ที่ /home/sftpuser และไม่มีอะไรอื่นอีก

✅ เคล็ดลับ: หนึ่งบัญชีต่อคนคือพฤติกรรมที่ทำให้บันทึกของเซิร์ฟเวอร์มีความหมายในภายหลัง บัญชีที่ใช้ร่วมกันหมายถึงการตำหนิร่วมกัน ไม่มีใครสามารถบอกได้ว่าใครถ่ายโอนอะไร
5

เปิดไฟร์วอลล์

หาก UFW ทำงานบนเซิร์ฟเวอร์ พอร์ต 22 จำเป็นต้องมีการส่งผ่านที่ชัดเจนก่อนที่ไคลเอ็นต์จะสามารถเข้าถึงบริการได้:

Terminal
sudo ufw allow OpenSSH
sudo ufw status

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

6

เชื่อมต่อและถ่ายโอนไฟล์แรก

จากเครื่องที่สองบนเครือข่ายเดียวกัน ให้เชื่อมต่อกับผู้ใช้ที่ถ่ายโอน แทนที่ที่อยู่ด้วย IP จริงของเซิร์ฟเวอร์ของคุณ — เรียกใช้ ip a บนเซิร์ฟเวอร์เพื่อดู:

Terminal (client machine)
sftp [email protected]

ภายในเซสชัน put อัปโหลดไฟล์ get ดาวน์โหลดหนึ่งไฟล์ และ exit ออก บน Windows ทั้ง WinSCP และ FileZilla พูด SFTP และเชื่อมต่อด้วยเพียงที่อยู่ พอร์ต 22 ชื่อผู้ใช้ และรหัสผ่าน

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

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

🏷️ตัวแปรการค้นหาหัวข้อและคำหลัก

🔍 SFTP Server 🔍 Ubuntu 🔍 OpenSSH 🔍 Secure File Transfer 🔍 SSH Port 22 🔍 openssh-server 🔍 sshd_config 🔍 systemctl ssh 🔍 SFTP User 🔍 UFW Firewall 🔍 WinSCP 🔍 FileZilla 🔍 TechnicalAnshu
🎙️ บทถอดเสียงฉบับเต็ม — แตะเพื่อขยาย

__TOK_31__

__TOK_32__

__TOK_33__

❓ คำถามที่พบบ่อย (ภาษาอังกฤษ)

บทช่วยสอนนี้ติดตามฟรี 100% หรือไม่

__TOK_34__

ผู้เริ่มต้นสามารถปฏิบัติตามคำแนะนำนี้ได้หรือไม่?

__TOK_35__

ฉันจะถามคำถามได้ที่ไหนหากฉันติดขัด?

__TOK_36__

🚀 ดูการฝึกสอนแบบเต็มบน YouTube

__TOK_37__

__TOK_38__

▶️ ดูวิดีโอเต็ม
บทช่วยสอนนี้อิงจากวิดีโอการตั้งค่าเซิร์ฟเวอร์ SFTP Ubuntu ของ Technical Anshu • ติดขัดในขั้นตอนใดหรือไม่ ถามในความคิดเห็นของวิดีโอ — คุณจะได้รับความช่วยเหลือที่นั่น 🙏