Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SMB protocol support #408

Merged
merged 12 commits into from
Oct 18, 2023
Binary file added protocols/_images/SMB_Connection.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added protocols/_images/SMB_Share.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
5 changes: 5 additions & 0 deletions protocols/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
cdn/index
ftp
sftp/index
smb
webdav/index
webdav/nextcloud
s3/index
Expand All @@ -28,22 +29,22 @@

All major server and cloud storage protocols are supported to connect to just about any server or cloud storage. Support for the listed protocols and [connection profiles](profiles/index.md) is available in [Cyberduck](../cyberduck/index.md), [Cyberduck CLI](../cli/index.md) and [Mountain Duck](../mountainduck/index.md).

### [FTP](ftp.md)

Check warning on line 32 in protocols/index.md

View workflow job for this annotation

GitHub Actions / build

Non-consecutive header level increase; H1 to H3 [myst.header]
With support for secure TLS connections and custom origin [Amazon CloudFront (Content Delivery Network) distribution](../protocols/cdn/cloudfront) option.

### [Amazon S3](s3/index.md)

Check warning on line 35 in protocols/index.md

View workflow job for this annotation

GitHub Actions / build

Non-consecutive header level increase; H1 to H3 [myst.header]
Transfer files to your S3 account and browse the S3 buckets and files in a hierarchical way. Supports Amazon Web Services (AWS) and many third party providers.

- [S3 providers](s3/index.md#third-party-providers)

### [Google Cloud Storage](googlecloudstorage.md)

Check warning on line 40 in protocols/index.md

View workflow job for this annotation

GitHub Actions / build

Non-consecutive header level increase; H1 to H3 [myst.header]

Transfer files to your Google Storage account and browse files, manage ACLs and bucket configurations.

### [Backblaze B2](b2.md)

Check warning on line 44 in protocols/index.md

View workflow job for this annotation

GitHub Actions / build

Non-consecutive header level increase; H1 to H3 [myst.header]
Backblaze B2 Cloud Storage is ¼ of the price of Amazon S3

### [WebDAV](webdav/index.md)

Check warning on line 47 in protocols/index.md

View workflow job for this annotation

GitHub Actions / build

Non-consecutive header level increase; H1 to H3 [myst.header]
Connect to any WebDAV compliant server using both HTTP and HTTP/SSL and custom origin [Amazon CloudFront (Content Delivery Network) distribution](cdn/cloudfront.md) option.

- [WebDAV providers](webdav/index.md#providers)
Expand Down Expand Up @@ -83,6 +84,9 @@
### [iRODS](irods.md)
The Integrated Rule-Oriented Data System (iRODS) is an open source data management software used by research organizations and government agencies worldwide.

### [SMB](smb.md)
SMB (Server Message Block) is used to access Windows File Shares.

### [Spectra BlackPearl Deep Storage Gateway](spectra.md)

### Local Disk
Expand Down Expand Up @@ -145,6 +149,7 @@
| Nextcloud | ❌ | ✅ |
| ownCloud | ❌ | ✅ |
| S3 | ❌ | ✅ |
| SMB | ❌ | ✅ |
| Windows Azure | ❌ | ❌ |
| OpenStack Object Storage | ❌ | ❌ |

Expand Down
59 changes: 59 additions & 0 deletions protocols/smb.md
dkocher marked this conversation as resolved.
Show resolved Hide resolved
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
SMB
====

```{image} _images/ftp.png
:alt: FTP Drive Icon
:width: 128px
```

```{contents} Content
:depth: 2
:local:
```


> [SMB (Server Message Block)](https://en.wikipedia.org/wiki/Server_Message_Block) is used to access Windows File Shares or a Samba Linux Server.

## Connecting

```{important}
* Cyberduck [9.0.0](https://cyberduck.io/changelog/) or later required
* Mountain Duck [5.0.0](https://mountainduck.io/changelog/) or later required
```

To connect to a SMB server, choose _SMB (Server Message Block)_.

```{image} _images/SMB_Connection.png
:alt: SMB Connection
:width: 700px
```

### Authentication
Username and password must be provided for authentication using NTLM. The optional domain name defaults to `WORKGROUP` and can be customized as part of the username in the format `REALM\username` in the _Username_ input field when adding a bookmark. Depending on the server setup this can be
- `COMPUTERNAME\username`
- `NETBIOSDOMAINNAME\username`

### Share Name
To connect to a specific share, you can configure a _Path_ in the bookmark. When omitted an attempt is made to list all available shares from the server. On failure retrieving share names from the server, a prompt is displayed to enter the share name when connecting.

```{image} _images/SMB_Share.png
:alt: SMB Share Input
:width: 700px
```

### Interoperability

SMB protocol support has been tested with connections to the following server implementations
- Windows 2016 Server (`SMB_3_1_1` dialect)
- Windows 2022 Server (`SMB_3_1_1` dialect)
- Linux Samba (`SMB_3_1_1` dialect)
- macOS 13.5 (22G74) (`SMB_3_0_2` dialect)

### Cyberduck CLI

You can list shares with [Cyberduck CLI](https://duck.sh/) using

duck --list smb:/server/share/

## Limitations
- Copying or moving files between shares is not supported
Loading