Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> ระบบ >> Linux

วิธีติดตั้ง FTP Server บน Ubuntu ใน 5 ขั้นตอน

หากคุณตั้งค่า Linux Server คุณจะต้องการการเข้าถึง FTP หมายความว่าต้องติดตั้ง FTP Server บน Linux ก่อน นี่ควรเป็นหนึ่งในสิ่งแรกที่คุณทำหลังจากติดตั้ง Server Operating System ของคุณ

Linux Server หลายตัวรัน Ubuntu มาดูวิธีตั้งค่า FTP Server บน Ubuntu Server กัน

FTP Server คืออะไร?

FTP หรือ File Transfer Protocol คือระบบที่ใช้สำหรับอัปโหลด (put) ไปหรือ ดาวน์โหลด (get) ไฟล์จากเซิร์ฟเวอร์ คุณอาจเคยใช้มันโดยไม่รู้ตัวในอดีต เมื่อดึงไฟล์หรืออัปโหลดรูปภาพไปเว็บ หรือคุณอาจใช้ FTP Client เพื่อเชื่อมต่อโดยตรงกับ FTP File Server

เพื่อให้สิ่งนี้เกิดขึ้น FTP Server Software ต้องติดตั้งบน Remote Server ที่โฮสต์ไฟล์

ไม่ว่าคุณจะสร้าง Linux Home Server, Web Server, Game Server หรือเซิร์ฟเวอร์ประเภทไหนที่เหมาะกับโปรเจกต์ของคุณ FTP เป็นวิธีที่ง่ายที่สุดในการถ่ายโอนข้อมูลจากระบบหนึ่งไปอีกระบบ

ติดตั้ง Server บน Ubuntu

การติดตั้ง FTP Server บน Ubuntu ทำได้ตรงไปตรงมา Arguably โซลูชันที่ดีที่สุดคือ vsftpd ทำตามขั้นตอนด้านล่างเพื่อติดตั้งและกำหนดค่า FTP Server บน Ubuntu ด้วย vsftpd

1. ติดตั้ง vsftpd

คุณอาจมี vsftpd ติดตั้งอยู่แล้ว เพื่อตรวจสอบ ให้เปิดหน้าต่างเทอร์มินัลและป้อน:

sudo apt list --installed

คุณควรพบ vsftpd ใกล้ด้านล่างของรายการ หากไม่มี ให้ติดตั้งด้วย:

sudo apt install vsftpd

ติดตั้งเสร็จแล้ว ถึงเวลากำหนดค่า vsftpd เริ่มต้นด้วยการสร้างสำเนาของไฟล์ Config ต้นฉบับ นี่หมายความว่าหากมีอะไรผิดพลาด Config ค่าเริ่มต้นสามารถกู้คืนได้

sudo cp /etc/vsftpd.conf /etc/vsftpd.conf_default

ทำเสร็จแล้ว เริ่มบริการด้วย:

sudo systemctl start vsftpd

ยืนยันว่า Server ทำงานอยู่ด้วย:

sudo systemctl enable vsftpd

เมื่อติดตั้ง vsftpd แล้ว คุณสามารถเริ่มการกำหนดค่าได้

2. สร้าง FTP User

สิ่งแรกที่คุณต้องการคือบัญชีผู้ใช้ FTP ด้วยสิ่งนี้ คุณสามารถใช้ FTP Client ใดๆ เพื่อเข้าถึงไฟล์ที่โฮสต์บนเซิร์ฟเวอร์ผ่าน vsftpd ในเทอร์มินัล ให้ป้อน:

sudo useradd –m username

(แทนที่ "username" ด้วย Username ที่คุณต้องการ)

sudo password username

เมื่อตั้งค่า Username และ Password แล้ว ให้สร้างไฟล์ทดสอบในโฟลเดอร์ Home ของบัญชีเพื่อยืนยันว่าทำงานได้:

cd /home/username
sudo nano testfile.txt

เมื่อคุณเชื่อมต่อกับ Ubuntu FTP Server ของคุณครั้งแรก คุณควรเห็น testfile.txt

3. รักษาความปลอดภัย Ubuntu FTP Server ของคุณ

ก่อนตั้งค่าการเชื่อมต่อ อย่างไรก็ตาม คุณจะต้องแน่ใจว่า FTP Ports เปิดอยู่ใน Ubuntu โดยค่าเริ่มต้น พวกมันปิดเพื่อเหตุผลด้านความปลอดภัยใน ufw (Uncomplicated Firewall)

เพื่อเปิดใช้งานการเข้าถึงผ่านพอร์ต 20 ใช้:

sudo ufw allow 20/tcp

หากดิสโทรของคุณใช้ Firewall ตัวอื่น หรือคุณติดตั้งตัวเลือกอื่น ให้ตรวจสอบเอกสารประกอบเพื่อเปิดพอร์ต

คุณยังจะต้องการให้ผู้ใช้สามารถอัปโหลดไฟล์ได้ คุณสามารถตั้งค่านี้ในไฟล์ Config ได้ เปิดเพื่อแก้ไข:

sudo nano /etc/vsftpd.conf

หา write_enabled และยกเลิกคอมเมนต์ (Uncomment) รายการนั้น ให้แน่ใจว่าตั้งค่าเป็น "YES":

write_enable=YES

กด Ctrl+X เพื่อออก และ Y เพื่อบันทึก

สำหรับ FTP Server ที่เข้าถึงได้สาธารณะ คุณจะต้องการจำกัดสิทธิ์การเข้าถึงของแต่ละผู้ใช้ ด้วย chroot เราสามารถจำกัดแต่ละผู้ใช้ให้อยู่ใน Home Directory ของตนเองได้ ใน vsftpd.conf ให้หาและยกเลิกคอมเมนต์บรรทัดนี้ (ลบ #):

chroot_local_user=YES

อีกครั้ง Ctrl+X เพื่อออก และ Y เพื่อบันทึก

สำหรับหลายผู้ใช้ การดูแลรายการเป็นตัวเลือกที่ฉลาดกว่า

ก่อนอื่น เปิด vsftpd.chroot_list ใน Text Editor ของคุณ

sudo nano /etc/ vsftpd.chroot_list

ที่นี่ ให้ระบุ Username ที่คุณต้องการจำกัดให้อยู่ในโฟลเดอร์ของตนเอง บันทึกและออก แล้วกลับไปที่ vsftpd.conf และให้แน่ใจว่า chroot_local_user=YES ถูกยกเลิกคอมเมนต์:

#chroot_local_user=YES

แทนที่จะเป็นนั้น ให้ยกเลิกคอมเมนต์:

chroot_list_enable=YES

และ:

chroot_list_file=/etc/vsftpd.chroot_list

มันควรจะมีลักษณะแบบนี้:

บันทึกและออกอีกครั้ง สุดท้าย ให้ Restart FTP Service:

sudo systemctl restart vsftpd.service

สุดท้าย ใช้คำสั่ง hostname เพื่อตรวจสอบชื่อของ Ubuntu Server ของคุณ คุณสามารถใช้สิ่งนี้เพื่อเชื่อมต่อกับ FTP Server หากคุณชอบใช้ IP Address ให้ป้อนคำสั่ง ip address และจดไว้

4. การเชื่อมต่อเข้ารหัส: FTP+SSL=FTPS

คุณยังสามารถบังคับการเข้ารหัสトラフィกไปและมาจาก Ubuntu FTP Server ของคุณโดยใช้ SSL/TLS

ในไฟล์ vsftpd.conf ให้หาการอ้างอิง "SSL encrypted connections" และเพิ่มสิ่งต่อไปนี้:

ssl_enable=YES
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key

บันทึกและออกจากไฟล์ ตอนนี้คุณสามารถระบุ FTPS เป็นโปรโตคอลการเชื่อมต่อใน FTP Client ของคุณได้

5. ติดตั้ง FTP Client บน Ubuntu

จากระบบอื่น คุณสามารถเชื่อมต่อกับ Ubuntu FTP Server ของคุณโดยใช้เครื่องมือบรรทัดคำสั่งหรือแอปเดสก์ทอป

บน Linux คุณสามารถเข้าถึงเซิร์ฟเวอร์ในเทอร์มินัลด้วย:

sudo ftp hostname

อย่าลืมแทนที่ "hostname" ด้วย Hostname ของเซิร์ฟเวอร์ของคุณ คุณยังสามารถใช้ IP Address ได้:

sudo ftp ipaddress

เมื่อได้รับพรอมป์ ให้ป้อน Username และ Password ที่คุณตั้งไว้ก่อนหน้านี้ คุณสามารถใช้คำสั่ง Get และ Put เพื่อถ่ายโอนข้อมูล

ต้องการอะไรที่เข้าใจง่ายกว่า หรือเข้าถึง FTP Server จากระบบปฏิบัติการอื่น? คุณจะต้องการ FTP Client และ Arguably ตัวที่ดีที่สุดคือ FileZilla โซลูชันโอเพนซอร์ส มีให้สำหรับ Windows (รวมถึง Server), macOS และมีรุ่น 32-bit และ 64-bit สำหรับ Linux น่าเสียดายที่ไม่มี FileZilla FTP Server สำหรับ Ubuntu หรือดิสโทร Linux อื่นๆ

ดาวน์โหลด: FileZilla (ฟรี)

เพื่อใช้ FileZilla Client เชื่อมต่อกับ Ubuntu FTP Server ของคุณ ให้ติดตั้งและเปิดแอป แล้ว:

  1. คลิก File > Site Manager
  2. ที่นี่ คลิก New site
  3. ในแผงด้านขวา เลือก FTP
  4. หากคุณใช้ FTPS ให้เลือก TLS สำหรับ Encryption
  5. ต่อไป ป้อน Hostname หรือ IP Address ใน Host และเพิ่ม Port
  6. สำหรับ Logon type ป้อนข้อมูลบัญชีใน User และ Password
  7. คลิก Connect

คุณจึงสามารถอัปโหลดและดาวน์โหลด (Put และ Get) ข้อมูลจาก Ubuntu FTP Server ของคุณได้ เพียงลากและวางไฟล์ที่คุณต้องการย้าย

ใช้ FTP Client อื่น? ขั้นตอนควรจะคล้ายกันมาก แต่ตรวจสอบเอกสารของแอปเพื่อข้อมูลเพิ่มเติม

คุณสร้าง FTP Server บน Ubuntu แล้ว

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