mirror of
https://github.com/Kiritow/image-station.git
synced 2024-03-22 13:30:54 +08:00
Add ssh-base image
This commit is contained in:
parent
2eebb2ec6d
commit
e506059858
18
ssh-base/Dockerfile
Normal file
18
ssh-base/Dockerfile
Normal file
|
@ -0,0 +1,18 @@
|
|||
FROM ubuntu-cn-systemd:latest
|
||||
RUN apt update \
|
||||
&& apt install openssh-server -y \
|
||||
&& rm -rf /var/lib/apt/lists/* \
|
||||
&& rm -f /run/nologin
|
||||
|
||||
# Default: No password login, No PAM
|
||||
RUN sed -e 's/UsePAM yes/UsePAM no/g' -e 's/#PasswordAuthentication yes/PasswordAuthentication no/g' -i /etc/ssh/sshd_config
|
||||
|
||||
# Another method: Leave PAM on, but it needs a few more fixes.
|
||||
|
||||
# 1. PAM LoginUID fix. Otherwise user is kicked off after login.
|
||||
# Or you might start container with --cap-add AUDIT_CONTROL
|
||||
# RUN sed 's@session\s*required\s*pam_loginuid.so@session optional pam_loginuid.so@g' -i /etc/pam.d/sshd
|
||||
|
||||
# 2. systemd-logind hang 25s fix
|
||||
# RUN sed 's/ProtectHostname=yes/ProtectHostname=no/g' -i /lib/systemd/system/systemd-logind.service
|
||||
|
28
ssh-base/Readme.md
Normal file
28
ssh-base/Readme.md
Normal file
|
@ -0,0 +1,28 @@
|
|||
# ssh-base
|
||||
|
||||
This is the base image of ssh server, bundled with systemd.
|
||||
|
||||
By default, `UsePAM` and `PasswordAuthentication` are both set to `no`.
|
||||
|
||||
The Dockerfile contains an alternative way to setup sshd, which could leave `UsePAM` set to `yes`.
|
||||
|
||||
The following fixes are included:
|
||||
|
||||
1. `/etc/pam.d/sshd` fix
|
||||
|
||||
`pam_loginuid.so` is set to optional, otherwise user will be kicked off after login.
|
||||
|
||||
https://stackoverflow.com/questions/28134239/how-to-ssh-into-docker
|
||||
|
||||
2. `/run/nologin` removed
|
||||
|
||||
Prevents ssh login from printing `System is booting up. Unprivileged users are not permitted to log in yet. Please come back later. For technical details, see pam_nologin(8).`
|
||||
|
||||
https://stackoverflow.com/questions/58682387/error-while-trying-to-ssh-a-docker-container-system-is-booting-up
|
||||
|
||||
3. `systemd-logind.service` fix
|
||||
|
||||
`ProtectHostname` is set to `no`. This fixes 25 second of hang up every login.
|
||||
|
||||
https://bugzilla.redhat.com/show_bug.cgi?id=1841139
|
||||
|
Loading…
Reference in New Issue
Block a user