35 lines
1.3 KiB
Bash
35 lines
1.3 KiB
Bash
#!/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}" |