Android

วิธีการใช้ sshfs เพื่อติดตั้งไดเรกทอรีระยะไกลผ่าน ssh

sshfs: Монтирование удаленных файловых систем по ssh

sshfs: Монтирование удаленных файловых систем по ssh

สารบัญ:

Anonim

SSHFS (ระบบไฟล์ SSH) เป็นไคลเอนต์ระบบไฟล์ที่ขึ้นอยู่กับ FUSE สำหรับการติดตั้งไดเรกทอรีระยะไกลผ่านการเชื่อมต่อ SSH SSHFS ใช้โปรโตคอล SFTP ซึ่งเป็นระบบย่อยของ SSH และเปิดใช้งานโดยค่าเริ่มต้นบนเซิร์ฟเวอร์ SSH ส่วนใหญ่

เมื่อเปรียบเทียบกับโปรโตคอลระบบไฟล์เครือข่ายอื่น ๆ เช่น NFS และ Samba ข้อดีของ SSHFS ก็คือมันไม่ต้องการการกำหนดค่าเพิ่มเติมใด ๆ ในฝั่งเซิร์ฟเวอร์ หากต้องการใช้ SSHFS คุณจะต้องเข้าถึง SSH ไปยังเซิร์ฟเวอร์ระยะไกลเท่านั้น

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

บทช่วยสอนนี้จะแสดงวิธีการติดตั้งไคลเอนต์ SSHFS บน Linux, macOS และ Windows และวิธีการติดตั้งไดเรกทอรีระยะไกล

การติดตั้ง SSHFS

แพคเกจ SSHFS พร้อมใช้งานสำหรับระบบปฏิบัติการที่สำคัญทั้งหมดและการติดตั้งค่อนข้างเรียบง่าย

การติดตั้ง SSHFS บน Ubuntu และ Debian

SSHFS พร้อมใช้งานจากที่เก็บเริ่มต้นของ Ubuntu และ Debian อัพเดตดัชนีแพ็กเกจและติดตั้งไคลเอ็นต์ sshfs โดยพิมพ์:

sudo apt update sudo apt install sshfs

การติดตั้ง SSHFS บน CentOS

บน CentOS และตราสารอนุพันธ์ Red Hat อื่น ๆ ให้รันคำสั่งต่อไปนี้เพื่อติดตั้ง sshfs:

sudo yum install sshfs

การติดตั้ง SSHFS บน macOS

ผู้ใช้ macOS สามารถติดตั้งไคลเอ็นต์ SSHFS ได้โดยดาวน์โหลดแพ็คเกจ FUSE และ SSHFS จากเว็บไซต์ osxfuse หรือผ่าน Homebrew:

brew cask install osxfuse brew install sshfs

การติดตั้ง SSHFS บน Windows

ผู้ใช้ Windows จำเป็นต้องติดตั้งสองแพ็คเกจ WinFsp และ SSHFS-Win

  • WinFsp.SSHFS-Win

ติดตั้งระบบไฟล์ระยะไกล

คำแนะนำต่อไปนี้ใช้ได้กับการแจกแจง Linux และ macOS ทั้งหมด

ในการติดตั้งไดเรกทอรีระยะไกลผู้ใช้ SSH จะต้องสามารถเข้าถึงได้ คำสั่ง SSHFS mount ใช้แบบฟอร์มต่อไปนี้:

sshfs host: mountpoint

คำสั่ง sshfs จะอ่านไฟล์กำหนดค่า SSH และใช้ตามการตั้งค่าโฮสต์ หากไม่ได้ระบุรีโมตไดเร็กทอรีไว้ค่าดีฟอลต์จะเป็นโฮมไดเร็กทอรีของผู้ใช้รีโมต

ตัวอย่างเช่นหากต้องการเมานต์โฮมไดเรกทอรีของผู้ใช้ชื่อ“ linuxize” บนรีโมตโฮสต์ที่มีที่อยู่ IP ของ“ 192.168.121.121” อันดับแรกให้สร้างไดเรกทอรีที่จะให้บริการเป็นจุดเมานท์มันสามารถเป็นตำแหน่งที่คุณต้องการ:

mkdir ~/linuxizeremote

จากนั้นใช้คำสั่ง sshfs เพื่อติดตั้งรีโมตไดเร็กทอรี:

sshfs [email protected]:/home/linuxize /home/linuxize/linuxizeremote

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

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

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

หากต้องการเมานต์รีโมตไดเร็กทอรีผ่าน SSHFS จาก /etc/fstab ให้ใช้ fuse.sshfs เป็นประเภทระบบไฟล์

/ etc / fstab

user@host:/remote/dir /local/mountpoint fuse.sshfs defaults 0 0

เมื่อสร้างการเมาท์แบบต่อเนื่องตรวจสอบให้แน่ใจว่าคุณสามารถเชื่อมต่อรีโมตโฮสต์โดยใช้การพิสูจน์ตัวตนแบบใช้คีย์ SSH

การติดตั้งระบบไฟล์ระยะไกลบน Windows

ผู้ใช้ Windows สามารถใช้ Windows Explorer เพื่อแมปไดรฟ์เครือข่ายไปยังไดเรกทอรีระยะไกลบนเซิร์ฟเวอร์ SSH

เปิด Windows Explorer คลิกขวาที่“ พีซีนี้” และเลือก“ แผนที่เครือข่ายไดรฟ์” เลือกไดรฟ์เพื่อเมาท์และในฟิลด์“ โฟลเดอร์” ป้อนผู้ใช้รีโมตเซิร์ฟเวอร์และพา ธ ในรูปแบบต่อไปนี้:

\\sshfs\user@host

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

สำหรับข้อมูลเพิ่มเติมโปรดตรวจสอบคู่มือ SSHFS-Win

การถอนติดตั้งระบบไฟล์ระยะไกล

หากต้องการแยกระบบไฟล์ที่เมาท์ให้ใช้คำสั่ง umount หรือ fusermount ตามด้วยไดเร็กทอรีที่เมาท์ (จุดเมานท์):

fusermount -u /local/mountpoint

umount /local/mountpoint

ข้อสรุป

ในคู่มือนี้คุณได้เรียนรู้วิธีใช้ SSHFS เพื่อติดตั้งไดเรกทอรีระยะไกลผ่าน SSH สิ่งนี้มีประโยชน์เมื่อคุณต้องการโต้ตอบกับไฟล์ระยะไกลโดยใช้แอพพลิเคชั่นในเครื่องของคุณ

สำหรับรายการตัวเลือก sshfs ทั้งหมดให้พิมพ์ man sshfs ในเทอร์มินัลของคุณ

คุณอาจต้องการ จำกัด การเข้าถึงของผู้ใช้ในโฮมไดเร็กตอรี่ของพวกเขาโดยการตั้งค่าสภาพแวดล้อม SFTP Chroot Jail และเปลี่ยนพอร์ต SSH เริ่มต้นเพื่อเพิ่มเลเยอร์ความปลอดภัยพิเศษให้กับเซิร์ฟเวอร์ของคุณ

ssh sftp เมาท์เทอร์มินัล