49 lines
1.1 KiB
Bash
Executable File
49 lines
1.1 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
set -ex
|
|
|
|
mkdir -p /run/sshd
|
|
|
|
if [ -n "$ROOT_AUTHORIZED_KEYS" ]; then
|
|
if [ -f "$ROOT_AUTHORIZED_KEYS" ]; then
|
|
mkdir -p /root/.ssh
|
|
cp "$ROOT_AUTHORIZED_KEYS" /root/.ssh/authorized_keys
|
|
chmod 600 /root/.ssh/authorized_keys
|
|
fi
|
|
fi
|
|
|
|
if [ -z "$BASE_DIR" ]; then
|
|
BASE_DIR="/home"
|
|
fi
|
|
|
|
if [ ! -d "$BASE_DIR" ]; then
|
|
echo "BASE_DIR $BASE_DIR does not exist, creating..."
|
|
mkdir -p $BASE_DIR
|
|
fi
|
|
|
|
# GROUPADD="group1:1000;group2:1001;group3:1002"
|
|
while [ "$GROUPADD" != "$i" ] ;do
|
|
i=${GROUPADD%%;*}
|
|
GROUPADD="${GROUPADD#$i;}"
|
|
|
|
GROUP_NAME=${i%%:*}
|
|
GROUP_GID="${i#$GROUP_NAME:}"
|
|
|
|
groupadd --gid "$GROUP_GID" "$GROUP_NAME"
|
|
done
|
|
|
|
# USERADD="user1:1000:1000;user2:1001:1000;user3:1002:1002"
|
|
while [ "$USERADD" != "$i" ] ;do
|
|
i=${USERADD%%;*}
|
|
USERADD="${USERADD#$i;}"
|
|
|
|
USER_NAME=${i%%:*}
|
|
UID_GID="${i#$USER_NAME:}"
|
|
USER_UID="${UID_GID%%:*}"
|
|
USER_GID="${UID_GID#$USER_UID:}"
|
|
|
|
useradd --home-dir "$BASE_DIR/$USER_NAME" --uid "$USER_UID" --gid "$USER_GID" "$USER_NAME"
|
|
done
|
|
|
|
exec /usr/sbin/sshd -D -e
|