Skip to content

Bash Script для первой настройки сервера

Notifications You must be signed in to change notification settings

KostenkoV-V/VPS-setup

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 

Repository files navigation

VPS setup

Небольшой Bash-скрипт для быстрой первоначальной настройки сервера (Ubuntu / Debian).

Цель — довести чистую ОС до безопасного и удобного для администрирования состояния: создать пользователя с sudo, включить файрвол, настроить ssh, защиту от брутфорса и базовый сбор логов.

Что делает скрипт

  • обновляет систему (apt-get update/upgrade);
  • устанавливает полезные утилиты: sudo, ufw, fail2ban, rsyslog (по необходимости);
  • проверяет наличие логов (например /var/log/auth.log) и ставит rsyslog, если логов нет;
  • предлагает создать нового пользователя (в группу sudo) с валидацией имени и проверки пароля;
  • предлагает изменить порт SSH (рекомендация: использовать порт в диапазоне 1024–65535);
  • настраивает UFW: разрешает SSH (на выбранном порту), HTTP/HTTPS и блокирует остальные входящие;
  • опционально отключает вход по root через SSH (PermitRootLogin no);
  • настраивает fail2ban для защиты SSH (настраиваемые пороги/тайминги).

Для кого

Для новичков и VPN чайников (использующие Amnezia VPN и прочее, не задумываясь о базовой настройке сервера)


Требования

Для запуска скрипта потребуется:

  • Доступ к серверу с правами root
  • Операционная система: Ubuntu или Debian (другие дистрибутивы могут не поддерживаться)

Установка и запуск

Чтобы запустить скрипт, используйте одну из следующих команд:

  1. Для запуска скрипта с правами root:

    bash <(curl -Ls https://raw.githubusercontent.com/KostenkoV-V/VPS-setup/main/setup_server.sh)
  2. Если вам нужно явно указать sudo:

    sudo curl -Ls https://raw.githubusercontent.com/KostenkoV-V/VPS-setup/main/setup_server.sh -o /tmp/setup_server.sh && sudo bash /tmp/setup_server.sh

About

Bash Script для первой настройки сервера

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages