PHPackages                             phuxtil/flysystem-ssh-shell - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [File &amp; Storage](/categories/file-storage)
4. /
5. phuxtil/flysystem-ssh-shell

ActiveLibrary[File &amp; Storage](/categories/file-storage)

phuxtil/flysystem-ssh-shell
===========================

SSH/Shell adapter for league/flysystem

3.0.3(4y ago)612.5k5[1 PRs](https://github.com/oliwierptak/flysystem-ssh-shell/pulls)MITPHPPHP ^8

Since Jun 18Pushed 1y agoCompare

[ Source](https://github.com/oliwierptak/flysystem-ssh-shell)[ Packagist](https://packagist.org/packages/phuxtil/flysystem-ssh-shell)[ RSS](/packages/phuxtil-flysystem-ssh-shell/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (6)Dependencies (7)Versions (19)Used By (0)

flysystem-ssh-shell
===================

[](#flysystem-ssh-shell)

Flysystem adapter for SSH shell.

### Installation

[](#installation)

```
composer require phuxtil/flysystem-ssh-shell
```

*Note*: Use v1.x for compatibility with PHP v7.0.x *Note*: Use v2.x for compatibility with PHP v7.2+

### Requirements

[](#requirements)

The following programs installed and configured on local host:

- ssh
- scp

The following programs installed on the remote host:

- find
- cat
- stat
- rmdir
- mkdir
- chmod
- mv
- rm
- sh compatible shell

### Configuration

[](#configuration)

Use `\Phuxtil\Flysystem\SshShell\SshShellConfigurator` to pass options to adapter.

```
$configurator = (new \Phuxtil\Flysystem\SshShell\SshShellConfigurator())
    ->setRoot('/remote_server/path')
    ->setUser('remote_user')
    ->setHost('remote-ssh-host')
    ->setPrivateKey('path/to/id_rsa.private_key')
    ->setPort(22);
```

### Authentication

[](#authentication)

Two authentication methods are supported:

#### via ssh config

[](#via-ssh-config)

The value of `user@host` is configured in ssh config file.

```
$configurator = (new \Phuxtil\Flysystem\SshShell\SshShellConfigurator())
    ->setUser('user')
    ->setHost('host');
```

*Note: This is the default setting.*

#### via ssh private key

[](#via-ssh-private-key)

```
$configurator = (new \Phuxtil\Flysystem\SshShell\SshShellConfigurator())
    ->setUser('user')
    ->setHost('host')
    ->setPrivateKey('path/to/id_rsa.private_key');
```

Passed as `-i` option to ssh/scp.

*Note: To revert to default setting, unset private key value.*

### Bootstrap

[](#bootstrap)

```
