Skip to content

Commit a5f75b3

Browse files
authored
Merge pull request #35 from dinoallo/enhancement/devbox-ssh
fix: enhance SSH security settings and randomize devbox password
2 parents 26a70a6 + 0472aae commit a5f75b3

File tree

3 files changed

+24
-6
lines changed

3 files changed

+24
-6
lines changed

OS/debian-ssh/12.6/Dockerfile

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FROM ghcr.io/labring-actions/devbox/debian:ce4733
1+
FROM debian:12.6-slim
22

33
COPY /script/startup.sh /usr/start/startup.sh
44

@@ -7,6 +7,16 @@ RUN chmod +x /usr/start/startup.sh && \
77
apt-get install -y \
88
dumb-init \
99
wget \
10+
sudo \
11+
net-tools \
12+
iproute2 \
13+
iputils-ping \
14+
curl \
15+
netcat-openbsd \
16+
vim \
17+
openssl \
18+
make \
19+
git \
1020
openssh-client \
1121
openssh-server && \
1222
apt-get clean && \
@@ -18,12 +28,15 @@ RUN chmod +x /usr/start/startup.sh && \
1828
echo 'X11Forwarding yes' >> /etc/ssh/sshd_config && \
1929
echo 'Port 22' >> /etc/ssh/sshd_config && \
2030
echo 'AuthorizedKeysFile /usr/start/.ssh/authorized_keys' >> /etc/ssh/sshd_config && \
31+
echo 'PasswordAuthentication no' >> /etc/ssh/sshd_config && \
32+
echo 'PermitRootLogin prohibit-password' >> /etc/ssh/sshd_config && \
2133
useradd -m -s /bin/bash devbox && \
2234
usermod -aG sudo devbox && \
2335
echo 'devbox ALL=(ALL) NOPASSWD: ALL' >> /etc/sudoers && \
2436
rm -rf /tmp/* && \
2537
mkdir -p /home/devbox/.ssh && \
26-
echo "devbox:devbox" | sudo chpasswd && \
38+
PASS=$(openssl rand -base64 16) && \
39+
echo "devbox:$PASS" | sudo chpasswd && \
2740
chown -R devbox:devbox /home/devbox/.ssh && \
2841
chmod -R 770 /home/devbox/.ssh
2942

@@ -32,8 +45,6 @@ COPY /OS/debian-ssh/project /home/devbox/project
3245
RUN sudo chown -R devbox:devbox /home/devbox/project && \
3346
sudo chmod -R 777 /home/devbox/project
3447

35-
USER root
36-
3748
ENTRYPOINT ["/usr/bin/dumb-init", "--"]
3849
CMD ["sudo", "-E", "/usr/start/startup.sh"]
3950

OS/ubuntu-cuda/24.04/Dockerfile

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,15 +32,18 @@ RUN chmod +x /usr/start/startup.sh && \
3232
echo 'GatewayPorts yes' >> /etc/ssh/sshd_config && \
3333
echo 'X11Forwarding yes' >> /etc/ssh/sshd_config && \
3434
echo 'Port 22' >> /etc/ssh/sshd_config && \
35-
echo 'PermitRootLogin yes' >> /etc/ssh/sshd_config && \
3635
echo 'AuthorizedKeysFile /usr/start/.ssh/authorized_keys' >> /etc/ssh/sshd_config && \
36+
echo 'PasswordAuthentication no' >> /etc/ssh/sshd_config && \
37+
echo 'PermitRootLogin prohibit-password' >> /etc/ssh/sshd_config && \
3738
useradd -m -s /bin/bash devbox && \
3839
usermod -aG sudo devbox && \
3940
echo 'devbox ALL=(ALL) NOPASSWD: ALL' >> /etc/sudoers && \
4041
echo 'export PATH=/usr/local/cuda/bin:$PATH' >> /etc/profile && \
4142
echo 'export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH' >> /etc/profile && \
4243
rm -rf /tmp/* && \
4344
mkdir -p /home/devbox/.ssh && \
45+
PASS=$(openssl rand -base64 16) && \
46+
echo "devbox:$PASS" | sudo chpasswd && \
4447
chown -R devbox:devbox /home/devbox/.ssh && \
4548
chmod -R 770 /home/devbox/.ssh
4649

OS/ubuntu/24.04/Dockerfile

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FROM ubuntu:latest
1+
FROM ubuntu:24.04
22

33
COPY /script/startup.sh /usr/start/startup.sh
44

@@ -33,11 +33,15 @@ RUN chmod +x /usr/start/startup.sh && \
3333
echo 'X11Forwarding yes' >> /etc/ssh/sshd_config && \
3434
echo 'Port 22' >> /etc/ssh/sshd_config && \
3535
echo 'AuthorizedKeysFile /usr/start/.ssh/authorized_keys' >> /etc/ssh/sshd_config && \
36+
echo 'PasswordAuthentication no' >> /etc/ssh/sshd_config && \
37+
echo 'PermitRootLogin prohibit-password' >> /etc/ssh/sshd_config && \
3638
useradd -m -s /bin/bash devbox && \
3739
usermod -aG sudo devbox && \
3840
echo 'devbox ALL=(ALL) NOPASSWD: ALL' >> /etc/sudoers && \
3941
rm -rf /tmp/* && \
4042
mkdir -p /home/devbox/.ssh && \
43+
PASS=$(openssl rand -base64 16) && \
44+
echo "devbox:$PASS" | sudo chpasswd && \
4145
chown -R devbox:devbox /home/devbox/.ssh && \
4246
chmod -R 770 /home/devbox/.ssh
4347

0 commit comments

Comments
 (0)