85 lines
3.4 KiB
Bash
Executable File
85 lines
3.4 KiB
Bash
Executable File
#!/bin/bash
|
|
#===============================================================================
|
|
# ШАГ 5: СОЗДАНИЕ АДМИНИСТРАТОРА
|
|
#===============================================================================
|
|
# Запуск: sudo bash 01-k-server-initial-setup.05.sh
|
|
#===============================================================================
|
|
|
|
SCRIPT_DIR=$(cd "$(dirname "$0")" && pwd)
|
|
source "$SCRIPT_DIR/01-k-server-initial-setup.00.sh"
|
|
|
|
init_log
|
|
check_root
|
|
|
|
print_header "ШАГ 5: СОЗДАНИЕ АДМИНИСТРАТОРА"
|
|
|
|
#-------------------------------------------------------------------------------
|
|
# 5.1 Проверка существования пользователя
|
|
#-------------------------------------------------------------------------------
|
|
print_subheader "Проверка пользователя"
|
|
|
|
if user_exists "$ADMIN_USER"; then
|
|
print_warning "Пользователь $ADMIN_USER уже существует"
|
|
|
|
# Проверка членства в sudo
|
|
if groups "$ADMIN_USER" | grep -q sudo; then
|
|
print_success "Пользователь уже в группе sudo"
|
|
else
|
|
print_info "Добавление в группу sudo..."
|
|
usermod -aG sudo "$ADMIN_USER"
|
|
print_success "Пользователь добавлен в sudo"
|
|
fi
|
|
else
|
|
# Создание пользователя
|
|
print_info "Создание пользователя $ADMIN_USER..."
|
|
adduser --gecos "" --disabled-password "$ADMIN_USER"
|
|
|
|
# Добавление в группы
|
|
usermod -aG sudo,adm,systemd-journal "$ADMIN_USER"
|
|
|
|
print_success "Пользователь $ADMIN_USER создан"
|
|
fi
|
|
|
|
#-------------------------------------------------------------------------------
|
|
# 5.2 Установка пароля
|
|
#-------------------------------------------------------------------------------
|
|
print_subheader "Пароль пользователя"
|
|
|
|
echo ""
|
|
print_warning "Установка пароля для $ADMIN_USER (для console доступа)"
|
|
echo ""
|
|
|
|
read -p "Установить пароль сейчас? [Y/n]: " SET_PASS
|
|
SET_PASS=${SET_PASS:-Y}
|
|
|
|
if [[ "$SET_PASS" =~ ^[Yy]$ ]]; then
|
|
passwd "$ADMIN_USER"
|
|
print_success "Пароль установлен"
|
|
else
|
|
print_info "Пароль можно установить позже: sudo passwd $ADMIN_USER"
|
|
fi
|
|
|
|
#-------------------------------------------------------------------------------
|
|
# 5.3 Настройка SSH-директории
|
|
#-------------------------------------------------------------------------------
|
|
print_subheader "Настройка SSH"
|
|
|
|
setup_ssh_dir "$ADMIN_USER"
|
|
|
|
#-------------------------------------------------------------------------------
|
|
# 5.4 Информация
|
|
#-------------------------------------------------------------------------------
|
|
echo ""
|
|
echo -e "${YELLOW}============================================================${NC}"
|
|
echo -e "${YELLOW} ВАЖНО: Добавьте SSH-ключ для входа!${NC}"
|
|
echo -e "${YELLOW}============================================================${NC}"
|
|
echo ""
|
|
echo " Добавьте ваш публичный SSH-ключ:"
|
|
echo " sudo nano /home/$ADMIN_USER/.ssh/authorized_keys"
|
|
echo ""
|
|
echo " Или командой:"
|
|
echo " echo 'ssh-ed25519 AAAA...' | sudo tee /home/$ADMIN_USER/.ssh/authorized_keys"
|
|
echo ""
|
|
|
|
print_success "Шаг 5 завершён: Администратор создан"
|