Android

Cách sử dụng sshfs để gắn các thư mục từ xa qua ssh

ridiculously handy way to share network drives over ssh - sshfs

ridiculously handy way to share network drives over ssh - sshfs

Mục lục:

Anonim

SSHFS (SSH Filesystem) là một máy khách hệ thống tập tin dựa trên FUSE để gắn các thư mục từ xa qua kết nối SSH. SSHFS đang sử dụng giao thức SFTP, là một hệ thống con của SSH và nó được bật theo mặc định trên hầu hết các máy chủ SSH.

Khi so sánh với các giao thức hệ thống tệp mạng khác như NFS và Samba, lợi thế của SSHFS là nó không yêu cầu bất kỳ cấu hình bổ sung nào ở phía máy chủ. Để sử dụng SSHFS, bạn chỉ cần truy cập SSH vào máy chủ từ xa.

Vì SSHFS sử dụng SFTP, tất cả dữ liệu được truyền giữa máy chủ và máy khách phải được mã hóa và giải mã. Điều này dẫn đến hiệu suất giảm nhẹ so với NFS và sử dụng CPU cao hơn trên máy khách và máy chủ.

Hướng dẫn này sẽ chỉ cho bạn cách cài đặt máy khách SSHFS trên Linux, macOS và Windows và cách gắn thư mục từ xa.

Cài đặt SSHFS

Các gói SSHFS có sẵn cho tất cả các hệ điều hành chính và việc cài đặt khá đơn giản.

Cài đặt SSHFS trên Ubuntu và Debian

SSHFS có sẵn từ kho lưu trữ Ubuntu và Debian mặc định. Cập nhật chỉ mục gói và cài đặt ứng dụng khách sshfs bằng cách gõ:

sudo apt update sudo apt install sshfs

Cài đặt SSHFS trên CentOS

Trên CentOS và các dẫn xuất Red Hat khác chạy lệnh sau để cài đặt sshfs:

sudo yum install sshfs

Cài đặt SSHFS trên macOS

Người dùng macOS có thể cài đặt ứng dụng khách SSHFS bằng cách tải xuống các gói FUSE và SSHFS từ trang osxfuse hoặc qua Homebrew:

brew cask install osxfuse brew install sshfs

Cài đặt SSHFS trên Windows

Người dùng Windows cần cài đặt hai gói, WinFsp và SSHFS-Win.

  • WinFsp.SSHFS-Win.

Gắn hệ thống tệp từ xa

Các hướng dẫn sau đây có thể áp dụng cho tất cả các bản phân phối Linux và macOS.

Để gắn kết một thư mục từ xa, người dùng SSH cần có thể truy cập nó. Lệnh mount SSHFS có dạng sau:

sshfs host: mountpoint

Lệnh sshfs sẽ đọc Tệp cấu hình SSH và sử dụng cho mỗi cài đặt máy chủ. Nếu thư mục từ xa không được chỉ định, nó sẽ mặc định là thư mục nhà của người dùng từ xa.

Ví dụ: để gắn thư mục chính của người dùng có tên là linux linuxize trên một máy chủ từ xa có địa chỉ IP của 192 192.168.121.121, trước tiên hãy tạo một thư mục sẽ đóng vai trò là điểm gắn kết, nó có thể là bất kỳ vị trí nào bạn muốn:

mkdir ~/linuxizeremote

Sau đó sử dụng lệnh sshfs để gắn thư mục từ xa:

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

Bạn sẽ được nhắc nhập mật khẩu người dùng. Để tránh nhập mật khẩu mỗi lần bạn gắn thư mục từ xa, hãy tạo khóa SSH và thiết lập Đăng nhập SSH không cần mật khẩu.

Bây giờ bạn có thể tương tác với các thư mục và tệp nằm trên một máy chủ từ xa giống như cách bạn làm với các tệp cục bộ. Ví dụ: bạn có thể chỉnh sửa, xóa, đổi tên hoặc tạo các tệp và thư mục mới.

Nếu bạn muốn gắn vĩnh viễn thư mục từ xa, bạn cần chỉnh sửa tệp /etc/fstab của máy cục bộ, thêm một mục nhập mới. Bằng cách này khi hệ thống của bạn khởi động, nó sẽ tự động gắn thư mục từ xa.

Để gắn kết một thư mục từ xa qua SSHFS từ /etc/fstab , hãy sử dụng fuse.sshfs làm kiểu hệ thống tệp.

/ etc / fstab

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

Khi tạo một mount liên tục, đảm bảo bạn có thể kết nối máy chủ từ xa bằng cách sử dụng xác thực dựa trên khóa SSH.

Gắn hệ thống tệp từ xa trên Windows

Người dùng Windows có thể sử dụng Windows Explorer để ánh xạ ổ đĩa mạng vào thư mục từ xa trên máy chủ SSH.

Mở Windows Explorer, nhấp chuột phải vào PC This PC và chọn ổ đĩa mạng Map Map. Chọn một ổ đĩa để gắn kết tại và trong trường Thư mục liên lạc, hãy nhập người dùng, máy chủ và đường dẫn từ xa theo định dạng sau:

\\sshfs\user@host

Tại thời điểm viết bài này, SSHFS-Win không hỗ trợ xác thực dựa trên khóa nên máy chủ ssh từ xa cần được cấu hình để chấp nhận xác thực dựa trên mật khẩu.

Để biết thêm thông tin chi tiết, hãy kiểm tra hướng dẫn SSHFS-Win.

Ngắt kết nối hệ thống tệp từ xa

Để tách hệ thống tệp được gắn kết, sử dụng umount hoặc fusermount theo sau là thư mục được gắn (điểm gắn kết):

fusermount -u /local/mountpoint

umount /local/mountpoint

Phần kết luận

Trong hướng dẫn này, bạn đã học cách sử dụng SSHFS để gắn thư mục từ xa qua SSH. Điều này có thể hữu ích khi bạn muốn tương tác với các tệp từ xa bằng các ứng dụng máy cục bộ của bạn.

Để có danh sách đầy đủ các tùy chọn sshfs, hãy nhập man sshfs trong terminal của bạn.

Bạn cũng có thể muốn hạn chế quyền truy cập của người dùng vào thư mục chính của họ bằng cách thiết lập môi trường Bẻ khóa SFTP Chroot và thay đổi cổng SSH mặc định để thêm một lớp bảo mật bổ sung cho máy chủ của bạn.

sshp gắn thiết bị đầu cuối