summaryrefslogtreecommitdiff
path: root/Dockerfile
diff options
context:
space:
mode:
authorRyo Nakamura <upa@haeena.net>2024-02-06 10:35:38 +0900
committerRyo Nakamura <upa@haeena.net>2024-02-06 10:35:38 +0900
commitff45d9d71b85a618aed6d3d5e5056bada6ff81f9 (patch)
tree8f5989f7f30f8e8a9320128617fa63e22115d65a /Dockerfile
parent9908fb309d9388481769e1a558a1f8dc47c4dabf (diff)
add two env vars to pass password/keyphrase (#9)
MSCP_SSH_AUTH_PASSWORD passes a password, and MSCP_SSH_AUTH_PASSPHRASE passes a passphrase for publickey auth. They enable avoiding interactive password input. Test cases are also added.
Diffstat (limited to 'Dockerfile')
-rw-r--r--Dockerfile/almalinux-9.3.Dockerfile15
-rw-r--r--Dockerfile/alpine-3.19.Dockerfile18
-rw-r--r--Dockerfile/rocky-8.9.Dockerfile16
-rw-r--r--Dockerfile/rocky-9.3.Dockerfile15
-rw-r--r--Dockerfile/ubuntu-20.04.Dockerfile14
-rw-r--r--Dockerfile/ubuntu-22.04.Dockerfile17
6 files changed, 80 insertions, 15 deletions
diff --git a/Dockerfile/almalinux-9.3.Dockerfile b/Dockerfile/almalinux-9.3.Dockerfile
index 516fbd2..3286f72 100644
--- a/Dockerfile/almalinux-9.3.Dockerfile
+++ b/Dockerfile/almalinux-9.3.Dockerfile
@@ -8,10 +8,21 @@ RUN python3 -m pip install pytest
# preparation for sshd
-RUN mkdir /var/run/sshd \
+RUN mkdir /var/run/sshd \
&& ssh-keygen -A \
&& ssh-keygen -f /root/.ssh/id_rsa -N "" \
- && mv /root/.ssh/id_rsa.pub /root/.ssh/authorized_keys
+ && cat /root/.ssh/id_rsa.pub > /root/.ssh/authorized_keys
+
+# create test user
+RUN useradd -m -d /home/test test \
+ && echo "test:userpassword" | chpasswd \
+ && mkdir -p /home/test/.ssh \
+ && ssh-keygen -f /home/test/.ssh/id_rsa_test -N "keypassphrase" \
+ && cat /home/test/.ssh/id_rsa_test.pub >> /home/test/.ssh/authorized_keys \
+ && chown -R test:test /home/test \
+ && chown -R test:test /home/test/.ssh
+
+RUN rm -rf /run/nologin
ARG mscpdir="/mscp"
diff --git a/Dockerfile/alpine-3.19.Dockerfile b/Dockerfile/alpine-3.19.Dockerfile
index a19957b..a338161 100644
--- a/Dockerfile/alpine-3.19.Dockerfile
+++ b/Dockerfile/alpine-3.19.Dockerfile
@@ -9,10 +9,20 @@ RUN apk add --no-cache \
RUN pip3 install --break-system-packages conan
# preparation for sshd
-RUN ssh-keygen -A
-RUN mkdir /var/run/sshd \
- && ssh-keygen -f /root/.ssh/id_rsa -N "" \
- && mv /root/.ssh/id_rsa.pub /root/.ssh/authorized_keys
+RUN ssh-keygen -A \
+ && mkdir /var/run/sshd \
+ && ssh-keygen -f /root/.ssh/id_rsa -N "" \
+ && cat /root/.ssh/id_rsa.pub > /root/.ssh/authorized_keys
+
+# create test user
+RUN addgroup -S test \
+ && adduser -S test -G test \
+ && echo "test:userpassword" | chpasswd \
+ && mkdir -p /home/test/.ssh \
+ && ssh-keygen -f /home/test/.ssh/id_rsa_test -N "keypassphrase" \
+ && cat /home/test/.ssh/id_rsa_test.pub >> /home/test/.ssh/authorized_keys \
+ && chown -R test:test /home/test \
+ && chown -R test:test /home/test/.ssh
# Build mscp as a single binary
diff --git a/Dockerfile/rocky-8.9.Dockerfile b/Dockerfile/rocky-8.9.Dockerfile
index cb2de9f..df23d83 100644
--- a/Dockerfile/rocky-8.9.Dockerfile
+++ b/Dockerfile/rocky-8.9.Dockerfile
@@ -8,10 +8,22 @@ RUN python3 -m pip install pytest
# preparation for sshd
-RUN mkdir /var/run/sshd \
+RUN mkdir /var/run/sshd \
&& ssh-keygen -A \
&& ssh-keygen -f /root/.ssh/id_rsa -N "" \
- && mv /root/.ssh/id_rsa.pub /root/.ssh/authorized_keys
+ && cat /root/.ssh/id_rsa.pub > /root/.ssh/authorized_keys
+
+# create test user
+RUN useradd -m -d /home/test test \
+ && echo "test:userpassword" | chpasswd \
+ && mkdir -p /home/test/.ssh \
+ && ssh-keygen -f /home/test/.ssh/id_rsa_test -N "keypassphrase" \
+ && cat /home/test/.ssh/id_rsa_test.pub >> /home/test/.ssh/authorized_keys \
+ && chown -R test:test /home/test \
+ && chown -R test:test /home/test/.ssh
+
+RUN rm -rf /run/nologin
+
ARG mscpdir="/mscp"
diff --git a/Dockerfile/rocky-9.3.Dockerfile b/Dockerfile/rocky-9.3.Dockerfile
index 84f6b11..225aafa 100644
--- a/Dockerfile/rocky-9.3.Dockerfile
+++ b/Dockerfile/rocky-9.3.Dockerfile
@@ -8,10 +8,21 @@ RUN python3 -m pip install pytest
# preparation for sshd
-RUN mkdir /var/run/sshd \
+RUN mkdir /var/run/sshd \
&& ssh-keygen -A \
&& ssh-keygen -f /root/.ssh/id_rsa -N "" \
- && mv /root/.ssh/id_rsa.pub /root/.ssh/authorized_keys
+ && cat /root/.ssh/id_rsa.pub > /root/.ssh/authorized_keys
+
+# create test user
+RUN useradd -m -d /home/test test \
+ && echo "test:userpassword" | chpasswd \
+ && mkdir -p /home/test/.ssh \
+ && ssh-keygen -f /home/test/.ssh/id_rsa_test -N "keypassphrase" \
+ && cat /home/test/.ssh/id_rsa_test.pub >> /home/test/.ssh/authorized_keys \
+ && chown -R test:test /home/test \
+ && chown -R test:test /home/test/.ssh
+
+RUN rm -rf /run/nologin
ARG mscpdir="/mscp"
diff --git a/Dockerfile/ubuntu-20.04.Dockerfile b/Dockerfile/ubuntu-20.04.Dockerfile
index a2dda99..5a75295 100644
--- a/Dockerfile/ubuntu-20.04.Dockerfile
+++ b/Dockerfile/ubuntu-20.04.Dockerfile
@@ -12,9 +12,19 @@ RUN python3 -m pip install pytest
# preparation for sshd
-RUN mkdir /var/run/sshd \
+RUN mkdir /var/run/sshd \
+ && ssh-keygen -A \
&& ssh-keygen -f /root/.ssh/id_rsa -N "" \
- && mv /root/.ssh/id_rsa.pub /root/.ssh/authorized_keys
+ && cat /root/.ssh/id_rsa.pub > /root/.ssh/authorized_keys
+
+# create test user
+RUN useradd -m -d /home/test test \
+ && echo "test:userpassword" | chpasswd \
+ && mkdir -p /home/test/.ssh \
+ && ssh-keygen -f /home/test/.ssh/id_rsa_test -N "keypassphrase" \
+ && cat /home/test/.ssh/id_rsa_test.pub >> /home/test/.ssh/authorized_keys \
+ && chown -R test:test /home/test \
+ && chown -R test:test /home/test/.ssh
ARG mscpdir="/mscp"
diff --git a/Dockerfile/ubuntu-22.04.Dockerfile b/Dockerfile/ubuntu-22.04.Dockerfile
index 1a8fb12..dff3f7f 100644
--- a/Dockerfile/ubuntu-22.04.Dockerfile
+++ b/Dockerfile/ubuntu-22.04.Dockerfile
@@ -12,9 +12,20 @@ RUN python3 -m pip install pytest
# preparation for sshd
-RUN mkdir /var/run/sshd \
- && ssh-keygen -f /root/.ssh/id_rsa -N "" \
- && mv /root/.ssh/id_rsa.pub /root/.ssh/authorized_keys
+RUN mkdir /var/run/sshd \
+ && ssh-keygen -A \
+ && ssh-keygen -f /root/.ssh/id_rsa -N "" \
+ && cat /root/.ssh/id_rsa.pub > /root/.ssh/authorized_keys
+
+# create test user
+RUN useradd -m -d /home/test test \
+ && echo "test:userpassword" | chpasswd \
+ && mkdir -p /home/test/.ssh \
+ && ssh-keygen -f /home/test/.ssh/id_rsa_test -N "keypassphrase" \
+ && cat /home/test/.ssh/id_rsa_test.pub >> /home/test/.ssh/authorized_keys \
+ && chown -R test:test /home/test \
+ && chown -R test:test /home/test/.ssh
+
ARG mscpdir="/mscp"