alpine prepared with sshd with X forward working
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
etc/ssh
Dockerfile
Readme.md
docker-entrypoint.sh

Readme.md

About this container

This is an alpine sshd container made for X forwarding. Start a local X-server. On a mac you can use XQuartz. Ssh into the container and run your favorite alpine x-app (e.g. firefox) and see it on your local machine.

Usage key based

For key based authentication create a volume to keep authorized_keys.

tar cv --files-from /dev/null | docker import - scratch
docker create -v /root/.ssh --name ssh-container scratch /bin/true
docker cp id_rsa.pub ssh-container:/root/.ssh/authorized_keys

Then start the sshd service

docker run -p 4848:22 --name alpine-sshdx --hostname alpine-sshdx --volumes-from ssh-container  -d danielguerra/alpine-sshdx
  • Note user alpine is defined with sudo rights.

Usage password

Start the sshd service

docker run -p 4848:22 --name alpine-sshdx --hostname alpine-sshdx -d danielguerra/alpine-sshdx

There is one user in the system with sudo rights

user:alpine pass:alpine

Change the password for alpine

docker exec -ti alpine-sshdx passwd alpine

Didn't want key based set a password for root.

docker exec -ti alpine-sshdx passwd

On your workstation

After this from your linux X environment or from the Xquartz terminal. See note Xquartz

ssh to your new container

ssh -i id_rsa -p 4848 -X root@<dockerhost>

For ssh key forwarding use ssh-agent

ssh-agent
ssh-add id_rsassh -A -p 4848 -X root@<dockerhost>
ssh -C -A -t -X -p 4848  root@<dockerhost> ssh -C -A -t -X -p 777 root@<hop> firefox

in the last example the each hop must have the same authorized_keys.

Xquartz note

For cmd+v cmd+c e.g. copy/paste to work you need to do this on your mac.

cd ~/
vi .Xdefaults

paste this line (without the quotes)

*VT100.translations: #override Meta <KeyPress> V: insert-selection(PRIMARY, CUT_BUFFER0) \n

esc :wq

Then

xrdb -merge ~/.Xdefaults

restart Xquartz and cmd+c and cmd+v works.