skillfed

fs.sshfs

Pyfilesystem2 over SSH using paramiko

fs-sshfs v1.0.2 123.4K downloads/30d#11,908 on PyPI94
Copyleft license LGPLv2+ DORMANT released

What it is and what it does

fs.sshfs wraps paramiko's SSH/SFTP client in a PyFilesystem2 abstraction, so you can treat a remote SSH server as a filesystem object in Python. Instead of manually opening SFTP channels and handling protocol details, you use the same high-level API (open, read, write, listdir, mkdir) that PyFilesystem2 provides for local, memory, and other storage backends. It supports both simple URL-based connection (via fs.open_fs) and direct constructor calls with fine-grained control over timeouts, compression, key authentication, and SSH config file integration.

The package depends on paramiko for SSH transport, fs for the filesystem abstraction, property-cached for performance optimization, and six for Python 2/3 compatibility. It runs on Python 2.7 and 3.5 onwards. While dormant since mid-2023, it remains stable and carries no known security vulnerabilities, making it suitable for applications that need transparent SSH file access without managing low-level SFTP protocol details.

Use it for:

  • Backup or sync scripts that treat remote servers as local directories without custom SFTP boilerplate.
  • Data processing pipelines that read/write files on remote machines using standard filesystem operations.
  • Configuration management tools that need to traverse and modify files across multiple SSH hosts uniformly.
  • Testing frameworks that stage test data on remote servers and verify results using filesystem assertions.
  • Multi-tenant applications that expose per-user remote storage via a consistent filesystem interface.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

fs.sshfs provides a PyFilesystem2 interface to remote SSH/SFTP servers, letting you read, write, and navigate files over SSH as if they were a local filesystem.

Yes, if you need SSH file access in Python and want to avoid paramiko's low-level SFTP API. The package is stable, dependency-light, and carries no vulnerabilities. The main caveat is dormancy—no active maintenance since mid-2023—so it's best for stable use cases rather than projects requiring ongoing feature development or rapid bug fixes. Copyleft licensing (LGPLv2+) requires review if you plan to distribute proprietary derivatives.

Install

fs-sshfs on PyPI

pip

pip install fs-sshfs

uv

uv add fs-sshfs

poetry

poetry add fs-sshfs

Installing fs.sshfs

Before you install

Installation is straightforward with low friction—a pure-Python wheel with six runtime dependencies including paramiko and fs. The package is dormant (last release 2023-08-17, last commit 2024-01-23), but marked Production/Stable and has no known vulnerabilities.

License in practice

Licensed under LGPLv2+, a copyleft license. Derivative works and modifications must be distributed under compatible terms; static linking or proprietary wrapping requires legal review.

Quickstart

import fs
my_fs = fs.open_fs("ssh://user@host/path")

# Or with the constructor:
from fs.sshfs import SSHFS
my_fs = SSHFS(host='example.com', user='alice', pkey='/home/alice/.ssh/id_rsa')

Requires a working SSH server and valid credentials (password, key, or SSH config). paramiko must be able to negotiate a connection; host key verification policy defaults to AutoAddPolicy.

Verify before relying

  • Whether the package handles modern SSH key formats (ed25519, etc.) or is limited to older paramiko-supported types.
  • Performance characteristics for large file transfers or bulk directory operations over high-latency links.
  • Compatibility with recent OpenSSH server versions and non-standard SSH configurations.

Package facts

License LGPLv2+ (copyleft)
Python support supports the current Python release (!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,>=2.7)
Install friction low — pure-Python wheel
Runtime dependencies 6 — property-cached, fs, paramiko, six, setuptools, configparser
Maintenance dormant — 1,093 days since the last release
Last repo commit
First released
Downloads 123,416/month — #11,908 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: fs.sshfs-1.0.2-py2.py3-none-any.whl

Keywords: filesystem, Pyfilesystem2, ssh, sftp, paramiko

Development Status :: 5 - Production/StableIntended Audience :: DevelopersLicense :: OSI Approved :: GNU Lesser General Public License v2 or later (LGPLv2+)Operating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 2.7Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.5Programming Language :: Python :: 3.6Programming Language :: Python :: 3.7Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Topic :: InternetTopic :: SecurityTopic :: Software Development :: Libraries :: Python ModulesTopic :: System :: Filesystems

Tags

ssh filesystem abstractionsftp pyfilesystem2remote ssh file accessparamiko filesystem wrapperssh file operations pythonsftp abstraction layerremote directory traversal ssh
ssh-sftpfilesystem-abstractionremote-storage

More Python Modules packages