GNU/Linux >> Belajar Linux >  >> Linux

Cara Menggunakan Pemasangan SSHFS dengan Direktori Jarak Jauh melalui SSH

Bekerja pada direktori jarak jauh seolah-olah itu adalah direktori lokal lebih nyaman, bukankah Anda setuju? Daripada mendorong dan menarik file dari jarak jauh menggunakan SCP, SFTP, atau FTP, bagaimana jika Anda dapat mengelola file tersebut secara langsung? Beruntung bagi Anda, pemasangan SSHFS adalah solusi cepat untuk dilema ini.

Tutorial ini akan mengajari Anda cara menggunakan mount SSHFS sehingga Anda dapat mengakses konten direktori jarak jauh di mesin lokal Anda. Baik Anda pengguna Windows atau Linux, tutorial ini membantu Anda.

Contoh kasus penggunaan khusus dalam tutorial ini menunjukkan memperbarui konten situs web pada direktori terpasang SSHFS server jauh. Namun, konsep umum harus berlaku untuk situasi khusus Anda dan tidak terbatas pada server web saja.

Prasyarat

Tutorial ini akan menjadi demonstrasi langsung. Jika Anda ingin mengikuti, pastikan Anda memiliki yang berikut:

  • Server web Linux – Tutorial ini akan menggunakan Fedora 35 bernama wbserver dengan Apache HTTP Server diinstal. Server ini berisi direktori jarak jauh yang akan menjadi target pemasangan SSHFS.
  • Klien Linux – Tutorial ini akan menggunakan klien Fedora 35 bernama fedora .
  • Klien Windows (Windows 7 ke atas) – Tutorial ini menggunakan klien Windows 10 bernama win10pc .

Menyiapkan Direktori Jarak Jauh

Tutorial ini akan bekerja pada direktori jarak jauh di wbserver server bernama /var/www/html . Secara default, hanya akun root yang memiliki akses ke folder ini. Karena Anda tidak akan menggunakan akun root server, Anda harus memberikan izin akun pengguna yang ditunjuk ke direktori sebagai gantinya.

Dalam contoh ini, akun pengguna yang ditunjuk untuk memasang dan mengakses pemasangan SSHFS adalah adm1 . Ikuti langkah-langkah di bawah ini untuk memberikan adm1 izin yang tepat untuk /var/www/html pada wbserver .

1. Masuk ke wbserver menggunakan klien SSH pilihan Anda.

2. Selanjutnya, jalankan perintah di bawah ini untuk memberikan izin akses penuh (rwx) kepada pengguna adm1 ke folder /var/www/html.

sudo setfacl -m u:adm1:rwx /var/www/html

3. Terakhir, konfirmasikan bahwa izin sudah benar dengan menjalankan perintah di bawah ini.

sudo getfacl -a /var/www/html

Seperti yang Anda lihat di bawah, adm1 sekarang memiliki akses baca/tulis ke folder tersebut.

Menggunakan SSHFS Mount di Linux

SSHFS pada dasarnya adalah alat Linux, dan Anda hanya perlu mengeluarkan beberapa perintah untuk memasang direktori jarak jauh ke komputer Anda. Menginstal paket untuk mengaktifkan SSHFS mount sama mudahnya dengan menginstal paket lain di Linux melalui manajer paket distro Anda.

Menginstal SSHFS dan Memasang Direktori Jarak Jauh

Ikuti langkah-langkah di bawah ini untuk menginstal paket pemasangan SSHFS dan memasang direktori jarak jauh ke jalur lokal.

1. Masuk ke klien Linux Anda melalui SSH atau Desktop, tergantung pada lingkungan Anda.

2. Jalankan perintah berikut untuk menginstal paket fuse-sshfs menggunakan manajer paket Anda.

Catatan:Pada distro Linux berbasis Debian, nama paketnya adalah sshfs.

sudo dnf install -y fuse-sshfs

Manajer paket juga menginstal dependensi yang belum ada di komputer Anda. Dan karena setiap ukuran paket di bawah 100KB, pengunduhan dan penginstalan hanya membutuhkan beberapa detik untuk selesai.

3. Selanjutnya, buat folder baru di bawah direktori home Anda bernama mnt. Folder baru ini adalah titik pemasangan untuk direktori jarak jauh.

mkdir ~/mnt

4. Setelah membuat mount point, jalankan perintah sshfs di bawah ini.

Perintah ini akan memasang direktori jarak jauh (wbserver) server web (/var/www/html) ke titik pemasangan lokal (~/mnt) yang Anda buat saat menggunakan kredensial adm1 untuk akses.

sshfs [email protected]:/var/www/html ~/mnt

Jika server SSH tidak mendengarkan port default 22, Anda harus menentukan switch -o port dengan perintah sshfs. Misalnya, jika server jauh mendengarkan port 2222, perintahnya adalah sshfs -o port 2222.

5. Jika Anda terhubung ke server untuk pertama kalinya, konfirmasikan the koneksi dengan menekan Y saat diminta—ketik kata sandi akun dan tekan Enter .

6. Terakhir, konfirmasikan bahwa Anda telah berhasil memasang direktori jarak jauh dengan menjalankan perintah di bawah ini.

findmnt

Anda akan melihat bahwa direktori jarak jauh sekarang dipasang ke direktori lokal yang Anda tentukan.

Mengaktifkan Automount saat Boot

Meskipun Anda telah berhasil memasang direktori jarak jauh, ingatlah bahwa status pemasangan ini tidak persisten. Restart komputer tidak akan mengotomatiskan direktori jarak jauh.

Tapi, Anda dapat membuat mount SSHFS bertahan dari restart komputer dengan mengedit /etc/fstab file dan mengaktifkan otentikasi berbasis kunci untuk adm1 Akun. Mengaktifkan otentikasi berbasis kunci SSH memastikan bahwa pemasangan SSHFS akan sepenuhnya otomatis (tidak ada permintaan kata sandi).

1. Pada klien Linux, buat pasangan kunci SSH baru dengan menjalankan perintah di bawah ini.

ssh-keygen

Pada file Enter di mana untuk menyimpan prompt kunci, ketik nama file kunci dan tekan Enter. Dalam contoh ini, nama file kunci untuk disimpan adalah /home/user1/.ssh/[email protected]

Biarkan frasa sandi kosong, dan tekan Enter dua kali. Tangkapan layar di bawah menunjukkan hasil pembuatan pasangan kunci.

2. Sekarang, salin kunci ke server web. Perintah di bawah ini menginstal kunci yang Anda buat sebelumnya (/home/user1/.ssh/[email protected]) ke akun adm1 di wbserver.

ssh-copy-id -i /home/user1/.ssh/[email protected] [email protected]

Ketikkan kata sandi untuk [email protected] pada prompt dan tekan Enter. Seperti yang Anda lihat di bawah, perintah berhasil memasang kunci ke server.

3. SSH ke wbserver menggunakan pasangan kunci untuk memastikan bahwa login berbasis kunci berfungsi.

ssh -i /home/user1/.ssh/[email protected] [email protected]

Alhasil, login harus berhasil tanpa meminta kata sandi. Ketik exit dan tekan Enter untuk keluar dari wbserver.

4. Sekarang setelah Anda mengonfigurasi otentikasi berbasis kunci SSH untuk akun pengguna SSHFS, Anda siap untuk mengonfigurasi pemasangan SSHFS persisten.

Buka file /etc/fstab di editor teks.

sudo nano /etc/fstab

5. Tambahkan kode di bawah ini di akhir file /etc/fstab. Pastikan untuk mengubah nilai identityfile=dengan jalur file kunci SSH.

[email protected]:/var/www/html /home/user1/mnt fuse.sshfs identityfile=/home/user1/.ssh/[email protected],allow_other,_netdev 0 0

6. Setelah mengedit, simpan file, tutup editor teks, dan reboot komputer. Seperti yang Anda lihat di bawah, mount SSHFS tersedia lagi setelah reboot.

Menguji Pemasangan SSHFS

Jadi Anda telah memasang direktori jarak jauh ke komputer lokal Anda. Pertanyaannya sekarang adalah, "Apakah itu berhasil?". Tes tercepat untuk mengonfirmasi adalah membuat file baru dan menyimpannya ke titik pemasangan SSHFS. File yang Anda buat akan muncul di server.

Secara default, /var/www/html folder di server web kosong. Saat Anda mengakses situs web yang dihosting di https://wbserver , Anda hanya akan melihat halaman pengujian default, seperti tangkapan layar di bawah ini.

Dalam contoh ini, Anda akan membuat halaman beranda baru dan mengonfirmasi bahwa server web menampilkan halaman baru tersebut.

1. Pindahkan direktori kerja ke ~/mnt, titik pemasangan SSHFS.

cd ~/mnt

2. Jalankan perintah sentuh untuk membuat file index.html dan buka di editor teks.

touch index.html && nano index.html

3. Sekarang, isi file index.html dengan kode HTML di bawah ini, simpan file, dan keluar dari editor.

Welcome

I was put here over SSH by SSHFS

Tangkapan layar di bawah menunjukkan konten yang diharapkan dari file index.html.

4. Terakhir, buka kembali URL situs web di browser web Anda. Server web akan mengambil dan menampilkan halaman beranda baru, seperti yang Anda lihat di bawah.

Selamat! Anda sekarang telah berhasil mengimplementasikan pemasangan SSHFS di komputer Linux Anda. Anda tidak perlu mengunggah atau mengunduh file jarak jauh untuk membuat perubahan secara manual.

Melepas Direktori Jarak Jauh

Misalkan Anda tidak lagi memerlukan akses ke direktori jarak jauh melalui pemasangan SSHFS dan ingin melepasnya, jalankan salah satu dari perintah di bawah ini.

Jalankan perintah di bawah ini jika Anda memasang direktori jarak jauh secara interaktif menggunakan sshfs alat.

fusermount -u /home/user1/mnt

Jika Anda mengotomatiskan direktori jarak jauh di fstab , jalankan perintah di bawah ini sebagai gantinya. Selain itu, Anda harus menghapus entri automount SSHFS di fstab . Jika tidak, direktori jarak jauh akan dipasang kembali secara otomatis setelah reboot.

sudo umount /home/user1/mnt

Menggunakan SSHFS Mount di Windows

Komputer Windows dapat memetakan lokasi jaringan sebagai drive lokal, seperti situs FTP, berbagi jaringan, dan pustaka SharePoint. Anda akan senang mengetahui bahwa Anda juga dapat menambahkan drive pemasangan SSHFS di Windows dengan menginstal program bernama SSHFS-Win — port SSHFS di Linux.

Menginstal WinFsp dan SSHFS-Win

SSHFS-Win membutuhkan WinFsp untuk bekerja karena menyediakan fungsionalitas FUSE yang mendasarinya. Ikuti petunjuk di bawah ini untuk menginstal WinSfp dan SSHFS-Win.

1. Buka browser pada klien Windows Anda dan unduh rilis terbaru WinSfp (v1.10) dan SSHFS-Win (v3.5.20357).

2. Temukan penginstal yang Anda unduh dan jalankan penginstal WinSfp terlebih dahulu.

3. Klik Next pada halaman Welcome to the WinFsp 2022 Setup Wizard.

4. Pilih semua fitur dan klik Berikutnya.

5. Klik Instal pada halaman Siap untuk menginstal WinFsp 2022.

6. Setelah instalasi WinFsp, klik Finish.

7. Selanjutnya, mulai penginstal SSHFS-Win.

8. Klik Next pada layar pertama, seperti yang ditunjukkan di bawah ini, untuk memulai proses instalasi.

9. Klik Next pada halaman Custom Setup.

10. Pada halaman Ready to install SSHFS-Win, klik Install.

11. Terakhir, klik Finish untuk menyelesaikan untuk keluar dari Setup Wizard.

Memahami Jalur SSHFS Sintaks

Sebelum memetakan direktori jarak jauh melalui pemasangan SSHFS, tinjau daftar di bawah ini untuk memahami bagaimana SSHFS-Win menafsirkan jalur jarak jauh.

\\\\PREFIX\\[email protected][!PORT][\\PATH]
  • REMUSER adalah pengguna jarak jauh yang kredensialnya akan Anda gunakan untuk mengautentikasi dengan server jarak jauh.
  • HOST adalah nama host atau alamat IP dari server jarak jauh.
  • PORT adalah port mendengarkan SSH server jauh. Nilai ini opsional, dan defaultnya adalah port 22.
  • PATH adalah jalur jarak jauh relatif terhadap PREFIX . Awalan yang berbeda adalah:
    • sshfs – memetakan ke jalur relatif terhadap direktori home pengguna (yaitu, HOST:~REMUSER/PATH ).
    • sshfs.r – memetakan ke jalur relatif terhadap direktori root host (yaitu, HOST:/PATH )
    • sshfs.k – memetakan ke jalur relatif terhadap direktori home pengguna (yaitu, HOST:~REMUSER/PATH ) dan menggunakan otentikasi berbasis kunci SSH. Awalan ini menggunakan kunci di %USERPROFILE%/.ssh/id_rsa untuk otentikasi.
    • sshfs.kr – memetakan ke jalur relatif terhadap direktori root host (yaitu, HOST:/PATH ) dan menggunakan kunci di %USERPROFILE%/.ssh/id_rsa untuk otentikasi.

Memasang dan Melepas Direktori Jarak Jauh menggunakan Windows File Explorer

Salah satu cara untuk memetakan drive jaringan di Windows adalah melalui Windows File Explorer. Dengan metode ini, Anda tidak perlu menjalankan perintah apa pun, dan Anda akan melakukan setiap langkah dalam GUI bergaya wizard.

1. Buka jendela File Explorer, klik PC ini —> Komputer —> Petakan drive jaringan .

2. Pilih huruf Drive dan ketik jalur di bawah ini ke dalam kotak Folder untuk memasang folder \var\www\html.

\\sshfs.r\[email protected]\var\www\html

Biarkan opsi Hubungkan kembali saat masuk dicentang, dan klik Selesai.

3. Masukkan kata sandi akun, centang kotak Ingat saya, dan klik OK.

Anda sekarang telah memetakan mount SSHFS dengan huruf drive. Dan karena Anda mengaktifkan opsi Sambungkan kembali saat masuk dan Ingat saya, Windows akan menyambungkan kembali pemasangan SSHFS setelah memulai ulang komputer.

4. Pada titik ini, Anda sekarang dapat mengelola file pada direktori jarak jauh. Namun, jika Anda tidak lagi membutuhkan drive yang dipetakan dan ingin menghapusnya, klik kanan mount SSHFS dan klik Disconnect.

Memasang dan Melepas Direktori Jarak Jauh menggunakan Baris Perintah

Perintah net use adalah cara lain untuk memetakan direktori jarak jauh di Windows. Memetakan drive pemasangan SSHFS melalui baris perintah sangat membantu untuk pembuatan skrip dan otomatisasi.

Untuk memasang direktori jarak jauh, buka Command Prompt atau PowerShell dan jalankan perintah di bawah ini untuk memetakan \\var\\www\\html direktori jarak jauh ke drive komputer lokal Z . Pastikan untuk mengubah PASSWORD nilai dengan kata sandi pengguna jarak jauh.

net use Z: \\\\sshfs.r\\[email protected]\\var\\www\\html PASSWORD /user:adm1

Untuk menghapus drive pemasangan SSHFS menggunakan baris perintah, delete pemetaan ke drive Z: dengan menjalankan perintah di bawah ini.

net use Z: /delete

Menguji Pemasangan SSHFS

Sekarang setelah Anda memiliki akses ke drive jaringan yang dipetakan secara lokal, Anda dapat mengelola file pada direktori jarak jauh seperti yang Anda lakukan pada file lokal lainnya. Dalam contoh ini, Anda akan memperbarui beranda situs web langsung dari drive SSHFS yang dipetakan.

1. Buka File Explorer dan navigasikan ke drive yang dipetakan.

2. Buka file bernama index.html dalam editor teks seperti notepad. Jika file tidak ada, buat terlebih dahulu.

3. Salin kode HTML di bawah, tempel ke index.html . Anda dan simpan filenya.

Welcome

I was put here over SSH by SSHFS

Brought to You from Windows 10

4. Terakhir, buka browser web Anda dan arahkan ke URL situs web HTTP://wbserver . Anda sekarang akan melihat halaman beranda yang diperbarui yang Anda edit, mengonfirmasi bahwa pemasangan SSHFS Anda berfungsi sebagaimana dimaksud.

Kesimpulan

Anda akhirnya mencapai akhir tutorial ini. Anda telah belajar menggunakan pemasangan SSHFS untuk memetakan direktori ke komputer Windows atau Linux lokal Anda dari server SSH jarak jauh. SSHFS adalah alat yang sangat baik untuk kenyamanan dan keamanan akses file jarak jauh.

Berbicara tentang keamanan, mungkin Anda harus memeriksa Cara Mengamankan SSH dengan Fail2Ban sebagai langkah selanjutnya? Semoga berhasil!


Linux
  1. Bagaimana Cara Menggunakan Ssh-copy-id Dengan Multiple-hop Ssh Tunnel?

  2. Linux – Bagaimana Cara Memasang Sistem File Jarak Jauh Dengan Menentukan Nomor Port?

  3. SSHFS (Secure SHell FileSystem) – Pasang sistem file jarak jauh dengan aman melalui ssh

  1. Perintah SCP di Linux:Cara Menggunakannya, dengan Contoh

  2. Cara membedakan direktori melalui ssh

  3. Bagaimana cara saya bekerja dengan alat GUI melalui server jarak jauh?

  1. SSHFS:Cara Memasang Sistem File Jarak Jauh Melalui SSH

  2. Cara Menjalankan Perintah Linux di Sistem Jarak Jauh melalui SSH

  3. Bagaimana saya bisa menggunakan SSH dengan proxy SOCKS 5?