0
0
Fork 0
mirror of https://github.com/atmoz/sftp.git synced 2024-11-24 12:59:24 -05:00
atmoz-sftp/README.md
2014-10-21 03:21:53 +02:00

64 lines
1.5 KiB
Markdown

sftp
====
Easy to use SFTP (*SSH File Transfer Protocol*) server.
Usage
-----
- Define users as last arguments to `docker run`, one user per argument
(syntax: `user:pass[:e][:[uid][:gid]]`).
- You must set custom UID for your users if you want them to make changes to
your mounted volumes with permissions matching your host filesystem.
- Mount volumes in user's home folder.
- 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**).
Examples
--------
### Single user and volume
```
docker run \
-v /host/share:/home/foo/share \
-p 2222:22 -d atmoz/sftp \
foo:123:1001
```
### Multiple users and volumes
```
docker run \
-v /host/share:/home/foo/share \
-v /host/documents:/home/foo/documents \
-v /host/http:/home/bar/http \
-p 2222:22 -d atmoz/sftp \
foo:123:1001 \
bar:abc:1002
```
### Encrypted password
Add `:e` behind password to mark it as encrypted. Use single quotes.
```
docker run \
-v /host/share:/home/foo/share \
-p 2222:22 -d atmoz/sftp \
'foo:$1$0G2g0GSt$ewU0t6GXG15.0hWoOX8X9.:e:1001'
```
Tip: you can use makepasswd to generate encrypted passwords:
`echo -n 123 | makepasswd --crypt-md5 --clearfrom -`
### Use public key (without password)
```
docker run \
-v /host/id_rsa.pub:/public_keys/foo:ro \
-v /host/share:/home/foo/share \
-p 2222:22 -d atmoz/sftp \
foo::1001
```