0
0
Fork 0
mirror of https://github.com/atmoz/sftp.git synced 2024-11-17 12:51:33 -05:00
A containerized SFTP service.
Find a file
2014-12-29 22:08:15 +01:00
.dockerignore Add README.md to .dockerignore 2014-10-21 03:23:12 +02:00
Dockerfile Public keys and entrypoint arguments 2014-10-21 03:21:53 +02:00
README.md Add links to wikipedia about SFTP and OpenSSH 2014-12-18 19:21:37 +01:00
run fixing gid handling if group doesn't exist yet 2014-12-29 22:08:15 +01:00
sshd_config No need for group, forced sftp 2014-10-16 22:07:39 +02:00

sftp Docker Build Status

Easy to use SFTP (SSH File Transfer Protocol) server with OpenSSH.

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 -

Using SSH key (without password)

docker run \
    -v /host/id_rsa.pub:/home/foo/.ssh/authorized_keys:ro \
    -v /host/share:/home/foo/share \
    -p 2222:22 -d atmoz/sftp \
    foo::1001