fix small bugs and add host keys to sshkeys
This commit is contained in:
+6
-2
@@ -5,8 +5,8 @@ ENV UID=1000
|
||||
ENV GID=1000
|
||||
|
||||
# Add Folders and Shell Scripts
|
||||
VOLUME ["/.ssh"]
|
||||
VOLUME ["/backup"]
|
||||
RUN mkdir "/.ssh"
|
||||
VOLUME ["/backups"]
|
||||
COPY motd.txt /etc/motd
|
||||
COPY entrypoint.sh /
|
||||
|
||||
@@ -20,5 +20,9 @@ RUN sed -ie 's/#Port 22/Port 22/g' /etc/ssh/sshd_config
|
||||
RUN sed -ie 's/#PubkeyAuthentication yes/PubkeyAuthentication yes/g' /etc/ssh/sshd_config
|
||||
RUN sed -ie 's/#PasswordAuthentication yes/PasswordAuthentication no/g' /etc/ssh/sshd_config
|
||||
|
||||
RUN sed -ie 's|#HostKey /etc/ssh/ssh_host_rsa_key|HostKey /sshkeys/host/ssh_host_rsa_key|g' /etc/ssh/sshd_config
|
||||
RUN sed -ie 's|#HostKey /etc/ssh/ssh_host_ecdsa_key|HostKey /sshkeys/host/ssh_host_ecdsa_key|g' /etc/ssh/sshd_config
|
||||
RUN sed -ie 's|#HostKey /etc/ssh/ssh_host_ed25519_key|HostKey /sshkeys/host/ssh_host_ed25519_key|g' /etc/ssh/sshd_config
|
||||
|
||||
EXPOSE 22
|
||||
ENTRYPOINT [ "/entrypoint.sh" ]
|
||||
|
||||
+23
-5
@@ -5,20 +5,27 @@ touch "/.ssh/authorized_keys"
|
||||
|
||||
# Add User
|
||||
sh -c "echo '$USER ALL=(ALL) NOPASSWD: ALL' >> /etc/sudoers"
|
||||
addgroup -g "$GID" "$USER"
|
||||
|
||||
echo "ADD USER: $USER WITH UID: $UID"
|
||||
adduser \
|
||||
--disabled-password \
|
||||
--gecos "" \
|
||||
--home "/" \
|
||||
--ingroup "$USER" \
|
||||
--uid "$UID" \
|
||||
"$USER"
|
||||
echo "$USER:*" | chpasswd
|
||||
echo "ADD GROUP: $USER WITH GID: $GID"
|
||||
addgroup -g "$GID" "$USER"
|
||||
|
||||
mkdir -p /sshkeys/clients
|
||||
mkdir -p /sshkeys/host
|
||||
chown -R "$USER":"$USER" "/sshkeys"
|
||||
|
||||
# Add SSH Keys to authorized_keys
|
||||
for key in /sshkeys/*.pub; do
|
||||
FILES=$(ls -1 /sshkeys/clients)
|
||||
for key in $FILES; do
|
||||
echo "Adding SSH-Key $key"
|
||||
cat "$key" >> "/.ssh/authorized_keys"
|
||||
cat "/sshkeys/clients/$key" >> "/.ssh/authorized_keys"
|
||||
done
|
||||
echo "" >> "/.ssh/authorized_keys"
|
||||
|
||||
@@ -28,5 +35,16 @@ chmod 700 "/.ssh"
|
||||
chmod 600 "/.ssh/authorized_keys"
|
||||
|
||||
# Generate SSH-Keys
|
||||
ssh-keygen -A
|
||||
if [ ! -f "/sshkeys/host/ssh_host_rsa_key" ]; then
|
||||
ssh-keygen -t rsa -b 4096 -f "/sshkeys/host/ssh_host_rsa_key" -N ""
|
||||
fi
|
||||
if [ ! -f "/sshkeys/host/ssh_host_ecdsa_key" ]; then
|
||||
ssh-keygen -t ecdsa -b 521 -f "/sshkeys/host/ssh_host_ecdsa_key" -N ""
|
||||
fi
|
||||
if [ ! -f "/sshkeys/host/ssh_host_ed25519_key" ]; then
|
||||
ssh-keygen -t ed25519 -b 521 -f "/sshkeys/host/ssh_host_ed25519_key" -N ""
|
||||
fi
|
||||
|
||||
chown -R "$USER":"$USER" "/sshkeys/host"
|
||||
|
||||
exec /usr/sbin/sshd -D -e "$@"
|
||||
|
||||
Reference in New Issue
Block a user