Files
init_system/init_system
T
2026-08-07 04:29:57 +00:00

82 lines
2.1 KiB
Plaintext
Executable File

clear
set -euo pipefail
echo "==> Обновление списка пакетов..."
apt-get update
echo "==> Обновление системы..."
DEBIAN_FRONTEND=noninteractive apt-get upgrade -y
USER_NAME="lobanov_v"
REPO_URL="https://git.lobanoffhomecloud.ru/lobanov_v/easy_ssh---zabbix_agent2.git"
CLONE_DIR="/tmp/easy_ssh---zabbix_agent2"
echo "==> Создание пользователя..."
if ! id "$USER_NAME" &>/dev/null; then
useradd -m -s /bin/bash "$USER_NAME"
echo "Пользователь $USER_NAME создан."
else
echo "Пользователь $USER_NAME уже существует."
fi
echo "==> Добавление пользователя в группу sudo..."
if getent group sudo >/dev/null; then
usermod -aG sudo "$USER_NAME"
elif getent group wheel >/dev/null; then
usermod -aG wheel "$USER_NAME"
fi
echo "==> Настройка sudo без пароля..."
echo "$USER_NAME ALL=(ALL:ALL) NOPASSWD:ALL" > /etc/sudoers.d/$USER_NAME
chmod 440 /etc/sudoers.d/$USER_NAME
visudo -cf /etc/sudoers.d/$USER_NAME
echo "==> Установка git..."
if ! command -v git >/dev/null; then
apt-get update
apt-get install -y git
fi
echo "==> Клонирование репозитория..."
rm -rf "$CLONE_DIR"
git clone "$REPO_URL" "$CLONE_DIR"
echo "==> Настройка SSH-ключей..."
mkdir -p "/home/$USER_NAME/.ssh"
cp "$CLONE_DIR/authorized_keys" "/home/$USER_NAME/.ssh/authorized_keys"
chmod 700 "/home/$USER_NAME/.ssh"
chmod 600 "/home/$USER_NAME/.ssh/authorized_keys"
chown -R "$USER_NAME:$USER_NAME" "/home/$USER_NAME/.ssh"
echo "==> Замена sshd_config..."
cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak.$(date +%F-%H%M%S)
cp "$CLONE_DIR/sshd_config" /etc/ssh/sshd_config
echo "==> Проверка конфигурации SSH..."
sshd -t
echo "==> Перезапуск службы SSH..."
systemctl restart ssh
echo "Готово."
echo
echo "========================================"
echo "Настройка завершена успешно."
echo "Пользователь: $USER_NAME"
echo "Репозиторий: $REPO_URL"
echo "========================================"