기계적 인조 인간

sshfs를 사용하여 ssh를 통해 원격 디렉토리를 마운트하는 방법

차례:

Anonim

SSHFS (SSH 파일 시스템)는 SSH 연결을 통해 원격 디렉토리를 마운트하기위한 FUSE 기반 파일 시스템 클라이언트입니다. SSHFS는 SFTP 프로토콜을 사용합니다. SFTP 프로토콜은 SSH의 하위 시스템이며 대부분의 SSH 서버에서 기본적으로 사용됩니다.

NFS 및 Samba와 같은 다른 네트워크 파일 시스템 프로토콜과 비교할 때 SSHFS의 장점은 서버 측에서 추가 구성이 필요하지 않다는 것입니다. SSHFS를 사용하려면 원격 서버에 대한 SSH 액세스 만 필요합니다.

SSHFS는 SFTP를 사용하므로 서버와 클라이언트간에 전송 된 모든 데이터는 암호화 및 암호 해독되어야합니다. 이로 인해 NFS에 비해 성능이 약간 저하되고 클라이언트와 서버에서 CPU 사용량이 높아집니다.

이 학습서에서는 Linux, macOS 및 Windows에 SSHFS 클라이언트를 설치하는 방법과 원격 디렉토리를 마운트하는 방법을 보여줍니다.

SSHFS 설치

SSHFS 패키지는 모든 주요 운영 체제에서 사용할 수 있으며 설치는 매우 간단합니다.

우분투와 데비안에서 SSHFS 설치

SSHFS는 기본 Ubuntu 및 Debian 리포지토리에서 사용할 수 있습니다. 다음을 입력하여 패키지 색인을 업데이트하고 sshfs 클라이언트를 설치하십시오.

sudo apt update sudo apt install sshfs

CentOS에 SSHFS 설치

CentOS 및 기타 Red Hat 파생 제품에서 다음 명령을 실행하여 sshfs를 설치하십시오.

sudo yum install sshfs

macOS에 SSHFS 설치

macOS 사용자는 osxfuse 사이트 또는 Homebrew를 통해 FUSE 및 SSHFS 패키지를 다운로드하여 SSHFS 클라이언트를 설치할 수 있습니다.

brew cask install osxfuse brew install sshfs

Windows에서 SSHFS 설치

Windows 사용자는 WinFsp와 SSHFS-Win의 두 패키지를 설치해야합니다.

  • WinFsp.SSHFS-Win.

원격 파일 시스템 마운트

다음 지침은 모든 Linux 배포판 및 macOS에 적용됩니다.

원격 디렉토리를 마운트하려면 SSH 사용자가 액세스 할 수 있어야합니다. SSHFS 마운트 명령은 다음 형식을 따릅니다.

sshfs host: mountpoint

sshfs 명령은 SSH 구성 파일을 읽고 호스트 별 설정을 사용합니다. 원격 디렉토리가 지정되지 않은 경우, 기본값은 원격 사용자 홈 디렉토리입니다.

예를 들어 IP 주소가 "192.168.121.121"인 원격 호스트에 "linuxize"라는 사용자의 홈 디렉토리를 마운트하려면 먼저 마운트 지점으로 사용할 디렉토리를 작성하십시오. 원하는 위치는 다음과 같습니다.

mkdir ~/linuxizeremote

그런 다음 sshfs 명령을 사용하여 원격 디렉토리를 마운트하십시오.

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

사용자 비밀번호를 입력하라는 메시지가 표시됩니다. 원격 디렉토리를 마운트 할 때마다 비밀번호를 입력하지 않으려면 SSH 키를 생성하고 비밀번호없는 SSH 로그인을 설정하십시오.

이제 로컬 파일과 동일한 방식으로 원격 서버에있는 디렉토리 및 파일과 상호 작용할 수 있습니다. 예를 들어, 새 파일 및 디렉토리를 편집, 삭제, 이름 바꾸기 또는 작성할 수 있습니다.

원격 디렉토리를 영구적으로 마운트하려면 로컬 시스템의 /etc/fstab 파일을 편집하고 새 마운트 항목을 추가해야합니다. 이렇게하면 시스템 부팅시 원격 디렉토리가 자동으로 마운트됩니다.

/etc/fstab 에서 SSHFS를 통해 원격 디렉토리를 마운트하려면 파일 시스템 유형으로 fuse.sshfs 를 사용 fuse.sshfs .

/ etc / fstab

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

영구 마운트를 작성할 때 SSH 키 기반 인증을 사용하여 원격 호스트를 연결할 수 있는지 확인하십시오.

Windows에서 원격 파일 시스템 마운트

Windows 사용자는 Windows 탐색기를 사용하여 네트워크 드라이브를 SSH 서버의 원격 디렉토리에 맵핑 할 수 있습니다.

Windows 탐색기를 열고 "This PC"를 마우스 오른쪽 단추로 클릭 한 후 "Map network drive"를 선택하십시오. "폴더"필드에 마운트 할 드라이브를 선택하고 다음 형식으로 원격 사용자, 서버 및 경로를 입력하십시오.

\\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 마운트 터미널