วิธีการตั้งค่าเซิร์ฟเวอร์ FTP บน Ubuntu

ตั้งค่าเซิร์ฟเวอร์ FTP บน Linux

File Transfer Protocol (FTP) เป็นโปรโตคอลเครือข่ายที่ใช้กันทั่วไป ใช้ในการถ่ายโอนไฟล์ระหว่างคอมพิวเตอร์สองเครื่อง โปรโตคอลขึ้นอยู่กับสถาปัตยกรรมไคลเอนต์ - เซิร์ฟเวอร์ คอมพิวเตอร์เครื่องหนึ่งเรียกใช้โปรแกรมเซิร์ฟเวอร์ FTP ในขณะที่คอมพิวเตอร์อีกเครื่องเรียกใช้โปรแกรมไคลเอ็นต์ FTP ซึ่งสามารถดาวน์โหลดหรืออัปโหลดไฟล์ไปยังคอมพิวเตอร์เซิร์ฟเวอร์ตามการอนุญาต

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

ระบบปฏิบัติการยอดนิยมเกือบทั้งหมด เช่น Windows, GNU/Linux, Mac OS มีเซิร์ฟเวอร์ FTP และโปรแกรมไคลเอนต์ที่พร้อมใช้งาน ในบทความนี้ เราจะมาดูวิธีตั้งค่าเซิร์ฟเวอร์ FTP บนระบบ Ubuntu

การติดตั้ง

ใน Ubuntu โปรแกรม vsftpdซึ่งย่อมาจาก FTP Daemon ที่ปลอดภัยมาก เป็นโปรแกรมเซิร์ฟเวอร์ FTP ยอดนิยม ซึ่งสามารถเรียกใช้เป็น daemon เช่น เป็นกระบวนการพื้นหลัง เช่นเดียวกับเซิร์ฟเวอร์ส่วนใหญ่

โปรแกรมนี้มีอยู่ในที่เก็บมาตรฐานของ Ubuntu ในการติดตั้ง ให้เรียกใช้:

sudo apt ติดตั้ง vsftpd

บันทึก: สำหรับเวอร์ชัน Ubuntu < 14.04 ให้ใช้ apt-getแทน ฉลาด.

หลังการติดตั้ง vsftpd daemon ควรเริ่มทำงานโดยอัตโนมัติ หากต้องการตรวจสอบว่าเริ่มทำงานอย่างถูกต้องหรือไม่ ให้เรียกใช้:

สถานะบริการ vsftpd

ถ้าสถานะไม่ คล่องแคล่วกล่าวคือ ยังไม่เริ่มทำงานอย่างถูกต้อง ให้เรียกใช้คำสั่งต่อไปนี้เพื่อเริ่มต้น และตรวจสอบสถานะอีกครั้งหลังจากเรียกใช้เพื่อดูว่าเป็นอยู่หรือไม่ คล่องแคล่ว.

sudo service vsftpd start

การกำหนดค่า

ไฟล์การกำหนดค่าสำหรับ vsftpd เป็น /etc/vsftpd.conf. มีตัวเลือกการกำหนดค่ามากมายที่นี่ เราจะเปลี่ยนสองตัวเลือกที่จำเป็นโดยทั่วไป

เปิดไฟล์โดยใช้ vim หรือโปรแกรมแก้ไขที่คุณเลือก

sudo vim /etc/vsftpd.conf

โดยค่าเริ่มต้น ไม่อนุญาตให้เข้าถึงเซิร์ฟเวอร์ FTP โดยไม่ระบุชื่อ ในการอนุญาตการเข้าถึงแบบไม่ระบุชื่อ เราเปลี่ยนตัวแปร ไม่ระบุชื่อ_enable จาก ไม่ ถึง ใช่ ในไฟล์.

สำหรับการเข้าถึงแบบไม่ระบุชื่อ ผู้ใช้ที่มีชื่อ ftp ถูกสร้างขึ้นระหว่างการติดตั้ง ไดเร็กทอรีเริ่มต้นสำหรับการเข้าถึงผู้ใช้ที่ไม่ระบุชื่อคือ /srv/ftpซึ่งจริง ๆ แล้วเป็นโฮมไดเร็กทอรีของผู้ใช้ ftp. ไฟล์ใดๆ ที่จะแชร์กับผู้ใช้ที่ไม่ระบุตัวตนจะต้องคัดลอกที่นี่

ถ้าไดเร็กทอรีสำหรับการเข้าถึงแบบไม่ระบุชื่อจะถูกเปลี่ยน เราจำเป็นต้องเปลี่ยนโฮมไดเร็กทอรีของผู้ใช้ ftp. เมื่อต้องการทำสิ่งนี้ ให้เรียกใช้:

sudo usermod -d ftp

ในทำนองเดียวกัน โดยค่าเริ่มต้น การเข้าถึงเพื่อเขียน เช่น การเข้าถึงการอัปโหลด ไปยังเซิร์ฟเวอร์ FTP ไม่อนุญาต เพื่อเปิดใช้งาน เรา uncomment บรรทัดด้วย variable write_enable=ใช่.

บันทึกและออกจากไฟล์. หากคุณกำลังใช้ vim ให้กด หนี เพื่อไปที่โหมดคำสั่ง vim จากนั้นพิมพ์ :wq แล้วกด เข้า เพื่อบันทึกและออกจากไฟล์

เราจำเป็นต้องรีสตาร์ท daemon เซิร์ฟเวอร์ FTP เพื่อให้การเปลี่ยนแปลงเหล่านี้มีผล หากต้องการเริ่มต้นใหม่ ให้เรียกใช้:

sudo service vsftpd รีสตาร์ท

การทดสอบเซิร์ฟเวอร์

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

ดาวน์โหลด แบบทดสอบ

เข้า ftp:// ในแถบที่อยู่ของเบราว์เซอร์เพื่อเข้าถึงเซิร์ฟเวอร์ FTP โดยที่ คือที่อยู่ IP หรือชื่อโดเมนของเซิร์ฟเวอร์ FTP หากต้องการทดสอบเซิร์ฟเวอร์ FTP ในเครื่องของคุณ ให้ป้อน ftp:://127.0.0.1

โปรดทราบว่าเนื่องจากเปิดใช้งานการเข้าถึงแบบไม่ระบุชื่อ เซิร์ฟเวอร์กำลังแสดงรายการไดเรกทอรีของโฟลเดอร์ที่เราเปิดใช้งานสำหรับการเข้าถึงแบบไม่ระบุชื่อ กล่าวคือ /srv/files/ftp.

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

sudo vim /etc/vsftpd.conf

เปลี่ยนตัวแปร ไม่ระบุชื่อ_enable ถึง ไม่.

บันทึกและออกจากไฟล์. รีสตาร์ทเซิร์ฟเวอร์ FTP เพื่อให้การเปลี่ยนแปลงเหล่านี้เกิดขึ้น

sudo service vsftpd รีสตาร์ท

เปิด URL เดิมอีกครั้งในเบราว์เซอร์ (ftp://127.0.0.1).

อย่างที่เราเห็น เซิร์ฟเวอร์กำลังขอให้เราป้อนชื่อผู้ใช้และรหัสผ่าน ป้อนข้อมูลประจำตัวและกด ตกลง.

ตอนนี้รายการไดเร็กทอรีเป็นของโฮมไดเร็กทอรีของผู้ใช้ที่ล็อกอิน ในกรณีนี้คือ /home/อภิวัฒน์.

อัปโหลดการทดสอบ

เว็บเบราว์เซอร์อนุญาตให้ดาวน์โหลดไฟล์จากเซิร์ฟเวอร์ FTP เท่านั้น ในการอัปโหลดไฟล์ไปยังเซิร์ฟเวอร์ FTP เราเข้าถึงเซิร์ฟเวอร์จากตัวสำรวจไฟล์

ใน Ubuntu เราจะใช้โปรแกรมสำรวจไฟล์เริ่มต้น Nautilus เปิด Nautilus โดยคลิกที่ไอคอนจาก Dock หรือค้นหาจาก Dash แล้วเปิดขึ้น

คลิกที่ สถานที่อื่นๆ ที่ด้านล่างสุด

ที่ด้านล่างสุด ให้ป้อน URL เซิร์ฟเวอร์ FTP ของเรา (ftp:://127.0.0.1) ในช่องป้อนข้อมูลเชื่อมต่อกับเซิร์ฟเวอร์ แล้วกดปุ่ม 'เชื่อมต่อ'

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

ตอนนี้ เราสามารถคัดลอกหรือสร้างไฟล์บนเซิร์ฟเวอร์ FTP ได้ง่ายๆ ตามปกติในโปรแกรมสำรวจไฟล์ เซิร์ฟเวอร์ FTP จะปรากฏทางด้านซ้ายมือดังที่แสดงด้านล่าง

นู๋โอ๊ต: แม้ว่า vsftpd สามารถกำหนดค่าสำหรับการเข้าถึงการเขียนสำหรับผู้ใช้ที่ไม่ระบุชื่อ ซึ่งเป็นความเสี่ยงด้านความปลอดภัยอย่างใหญ่หลวงสำหรับระบบและต้องไม่ใช้! ต้องเปิดใช้งานการอัปโหลดไปยังเซิร์ฟเวอร์ FTP สำหรับผู้ใช้ระบบเท่านั้น

บทสรุป

ด้วยวิธีนี้ เราสามารถตั้งค่าเซิร์ฟเวอร์ FTP บน Ubuntu ตรวจสอบให้แน่ใจว่าคุณลองเข้าถึงสิ่งนี้จากระบบอื่นในเครือข่ายของคุณ ซึ่งในกรณีนี้ คุณจะต้องป้อน ftp://Your_IP_address แทน ftp://127.0.0.1 ในเบราว์เซอร์ของระบบอื่น

โปรดทราบว่าโปรแกรมเซิร์ฟเวอร์ FTP ส่วนใหญ่ปลอดภัยในการเข้ารหัสเนื้อหาที่ถ่ายโอนโดยใช้ SSL/TLS (เรียกว่า FTPS) หรือใช้ SSH FTP vsftpd ใช้ FTPS ในการใช้งาน