Skip to content

WEBzaytsev/scripts

Repository files navigation

WEBzaytsev/scripts

Нормальный маленький toolkit для типовых серверных операций: SSH hardening, firewall, Docker shortcuts, monitoring agents, BBR и emergency revoke ключей.

Быстрый старт: Toolkit Launcher

Интерактивное меню всех утилит:

curl -fsSL "https://raw.githubusercontent.com/WEBzaytsev/scripts/main/toolkit.sh" | sudo bash

Показать список:

curl -fsSL "https://raw.githubusercontent.com/WEBzaytsev/scripts/main/toolkit.sh" | sudo bash -s -- list

Запустить конкретную утилиту с аргументами:

curl -fsSL "https://raw.githubusercontent.com/WEBzaytsev/scripts/main/toolkit.sh" | sudo bash -s -- run ssh-config -- --random-port --yes

Что внутри

Утилита Для чего Команда
toolkit.sh единое меню / dispatch всех серверных утилит curl -fsSL raw.../toolkit.sh | sudo bash
ssh-config.sh добавить SSH ключ, сменить порт, отключить парольный вход при ключе run ssh-config -- --port 22222 --yes
revoke-ssh-keys.sh оставить только новый SSH ключ, убрать старые, опционально завершить сессии run revoke-ssh-keys -- -k "$KEY" --yes --kill-sessions
docker-aliases.sh системные aliases для docker compose run docker-aliases
docker-monitor.sh dozzle-agent + beszel-agent через compose run docker-monitor -- --hub-url https://monitor.example.com
enable-bbr.sh включить TCP BBR + fq run enable-bbr
ufw-config.sh базовая настройка UFW с автоопределением SSH/VPN/service портов run ufw-config -- --yes

Совет: для точной команды открой web-панель — она генерирует готовый copy/paste под выбранные параметры.


SSH Config

Интерактивная настройка

curl -fsSL "https://cdn.jsdelivr.net/gh/WEBzaytsev/scripts@main/ssh-config.sh?v=$(date +%s)" | sudo bash

Только порт

# Фиксированный порт
curl -fsSL "https://cdn.jsdelivr.net/gh/WEBzaytsev/scripts@main/ssh-config.sh?v=$(date +%s)" | sudo bash -s -- --port 22222 --yes

# Случайный порт
curl -fsSL "https://cdn.jsdelivr.net/gh/WEBzaytsev/scripts@main/ssh-config.sh?v=$(date +%s)" | sudo bash -s -- --random-port --yes

Ключ + порт

KEY="ssh-ed25519 AAAAC3..."
curl -fsSL "https://cdn.jsdelivr.net/gh/WEBzaytsev/scripts@main/ssh-config.sh?v=$(date +%s)" | sudo bash -s -- -k "$KEY" --random-port --yes

Важно: оставь текущую SSH-сессию открытой и проверь новый вход в отдельном терминале.


Revoke SSH Keys

Удаляет authorized_keys у root и пользователей с бэкапами *.bak.<timestamp>, проверяет нестандартные AuthorizedKeysFile.

Оставить только новый ключ

KEY="ssh-ed25519 AAAA..."
curl -fsSL "https://raw.githubusercontent.com/WEBzaytsev/scripts/main/revoke-ssh-keys.sh" | sudo bash -s -- -k "$KEY" --yes --kill-sessions

Интерактивно

curl -fsSL "https://raw.githubusercontent.com/WEBzaytsev/scripts/main/revoke-ssh-keys.sh" | sudo bash

Docker Aliases

Установка docker-команд (dc, dcu, dcud, dcub, dcd, dcl, dcps и др.) в /etc/profile.d:

curl -fsSL "https://cdn.jsdelivr.net/gh/WEBzaytsev/scripts@main/docker-aliases.sh?v=$(date +%s)" | sudo bash

Удаление:

curl -fsSL "https://cdn.jsdelivr.net/gh/WEBzaytsev/scripts@main/docker-aliases.sh?v=$(date +%s)" | sudo bash -s -- --uninstall

Docker Monitor (dozzle + beszel)

curl -fsSL "https://cdn.jsdelivr.net/gh/WEBzaytsev/scripts@main/docker-monitor.sh?v=$(date +%s)" | sudo bash

С Hub URL:

curl -fsSL "https://cdn.jsdelivr.net/gh/WEBzaytsev/scripts@main/docker-monitor.sh?v=$(date +%s)" | sudo bash -s -- --hub-url "https://monitor.example.com"

Enable BBR

curl -fsSL "https://cdn.jsdelivr.net/gh/WEBzaytsev/scripts@main/enable-bbr.sh?v=$(date +%s)" | sudo sh

Fallback через wget:

wget -qO- "https://cdn.jsdelivr.net/gh/WEBzaytsev/scripts@main/enable-bbr.sh?v=$(date +%s)" | sudo sh

UFW Firewall

curl -fsSL "https://cdn.jsdelivr.net/gh/WEBzaytsev/scripts@main/ufw-config.sh?v=$(date +%s)" | sudo bash

Неинтерактивно:

curl -fsSL "https://cdn.jsdelivr.net/gh/WEBzaytsev/scripts@main/ufw-config.sh?v=$(date +%s)" | sudo bash -s -- --yes

Генерация SSH ключа локально

ssh-keygen -t ed25519 -C "your_email@example.com" -f ~/.ssh/id_ed25519
cat ~/.ssh/id_ed25519.pub

Releases

Packages

Contributors

Languages