diff --git a/server/create_user.sh b/server/create_user.sh new file mode 100644 index 0000000..06d4fc0 --- /dev/null +++ b/server/create_user.sh @@ -0,0 +1,35 @@ +#!/bin/bash + +# Цвета +RED='\033[0;31m' +GREEN='\033[0;32m' +YELLOW='\033[1;33m' +CYAN='\033[0;36m' +RESET='\033[0m' + +# Генерируем имя пользователя (10 символов; большие/маленькие буквы) +USERNAME=$(tr -dc 'a-zA-Z' < /dev/urandom | head -c 10) + +# Перечень безопасных спецсимволов для пароля +SPECIAL='!@#$%^_-+=' + +# Генерируем пароль (15 символов; большие/маленькие буквы и спецсимволы) +PASSWORD=$(cat /dev/urandom | tr -dc "a-zA-Z${SPECIAL}" | head -c 15) + +# Создаём пользователя с домашней директорией +sudo useradd -m "$USERNAME" + +# Устанавливаем пароль пользователю +echo "$USERNAME:$PASSWORD" | sudo chpasswd + +# Добавляем пользователя в группу sudo (Ubuntu/Debian) +if grep -q '^sudo:' /etc/group; then + sudo usermod -aG sudo "$USERNAME" +elif grep -q '^wheel:' /etc/group; then + sudo usermod -aG wheel "$USERNAME" +fi + +# Цветной вывод +echo -e "${YELLOW}Пользователь создан!${RESET}" +echo -e "${CYAN}Имя пользователя:${RESET} ${GREEN}$USERNAME${RESET}" +echo -e "${CYAN}Пароль: ${RESET} ${RED}$PASSWORD${RESET}" \ No newline at end of file