2014-10-06 15:40:59 -04:00
|
|
|
sftp
|
|
|
|
====
|
|
|
|
|
2014-10-20 13:43:07 -04:00
|
|
|
Easy to use SFTP (*SSH File Transfer Protocol*) server.
|
2014-10-06 15:40:59 -04:00
|
|
|
|
|
|
|
Usage
|
|
|
|
-----
|
|
|
|
|
2014-10-20 13:43:07 -04:00
|
|
|
- Define users and passwords in comma separated list with SFTP_USERS (syntax:
|
|
|
|
`user:pass[:e][:[uid][:gid]][,...]`).
|
|
|
|
- You must set custom UID and/or GID for your users if you want them to make
|
|
|
|
changes to your mounted volumes with permissions matching your host
|
|
|
|
filesystem.
|
2014-10-15 16:26:16 -04:00
|
|
|
- Mount volumes in user's home folder.
|
2014-10-20 13:43:07 -04:00
|
|
|
- The users are chrooted to their home directory, so you must mount the
|
|
|
|
volumes in separate directories inside the user's home directory
|
|
|
|
(/home/user/**mounted-directory**).
|
2014-10-15 16:26:16 -04:00
|
|
|
|
2014-10-15 16:47:14 -04:00
|
|
|
Examples
|
|
|
|
--------
|
|
|
|
|
2014-10-20 13:43:07 -04:00
|
|
|
### Single user and volume
|
2014-10-15 18:09:27 -04:00
|
|
|
|
2014-10-15 16:47:14 -04:00
|
|
|
```
|
|
|
|
docker run \
|
2014-10-20 13:43:07 -04:00
|
|
|
-e SFTP_USERS='foo:123' \
|
|
|
|
-v "/host/share:/home/foo/share" \
|
2014-10-15 16:47:14 -04:00
|
|
|
-p 2222:22 -d atmoz/sftp
|
|
|
|
```
|
2014-10-06 18:25:49 -04:00
|
|
|
|
2014-10-20 13:43:07 -04:00
|
|
|
### Multiple users and volumes
|
2014-10-15 18:09:27 -04:00
|
|
|
|
2014-10-06 18:25:49 -04:00
|
|
|
```
|
|
|
|
docker run \
|
2014-10-20 13:43:07 -04:00
|
|
|
-e SFTP_USERS='foo:123,bar:abc' \
|
|
|
|
-v "/host/share:/home/foo/share" \
|
|
|
|
-v "/host/documents:/home/foo/documents" \
|
|
|
|
-v "/host/http:/home/bar/http" \
|
2014-10-06 18:25:49 -04:00
|
|
|
-p 2222:22 -d atmoz/sftp
|
|
|
|
```
|
|
|
|
|
2014-10-20 13:43:07 -04:00
|
|
|
### Custom UID and GID
|
|
|
|
|
|
|
|
```
|
|
|
|
SFTP_USERS='foo:123:1001:100'
|
|
|
|
```
|
|
|
|
|
|
|
|
Only custom GID:
|
|
|
|
|
|
|
|
```
|
|
|
|
SFTP_USERS='foo:123::100'
|
|
|
|
```
|
|
|
|
|
|
|
|
### Encrypted password
|
|
|
|
|
|
|
|
Add `:e` behind password to mark it as encrypted:
|
|
|
|
|
|
|
|
```
|
|
|
|
SFTP_USERS='foo:$1$0G2g0GSt$ewU0t6GXG15.0hWoOX8X9.:e:1001:100'
|
|
|
|
```
|
|
|
|
|
|
|
|
Tip: you can use makepasswd to generate encrypted passwords:
|
|
|
|
`echo -n 123 | makepasswd --crypt-md5 --clearfrom -`
|