diff --git a/servers/fr1.md b/servers/fr1.md index 19d4079..77dae2f 100644 --- a/servers/fr1.md +++ b/servers/fr1.md @@ -1,31 +1,65 @@ # fr1 — `fr1.ruzzy.dev` (161.97.93.252) -**Провайдер:** Contabo VPS · France / Lauterbourg -**ОС:** Ubuntu 24.04 LTS · 8 vCPU / 23 GB RAM / 387 GB -**hostname:** `fr1` +Снимок состояния сервера. Секреты (пароли/токены) — только на сервере, не здесь. -## Доступ -- `ssh rus-161` (алиас в `~/.ssh/config`) → пользователь `rus`, ключ `~/.ssh/id_161_97_93_252`. -- root по SSH отключён; вход по паролю отключён; `AllowUsers rus`. -- sudo у `rus` по паролю. +**Провайдер:** Contabo VPS · France / Lauterbourg (Grand Est) +**ОС:** Ubuntu 24.04 LTS · kernel 6.8.0-106-generic +**Ресурсы:** 8 vCPU / 23 GB RAM / 387 GB +**hostname:** `fr1` (FQDN `fr1.ruzzy.dev` через `/etc/hosts`) + +--- + +## Пользователи и доступ +- Пользователь `rus` (uid 1000, группы `rus`, `sudo`, `users`), sudo по паролю. +- Вход с Mac: `ssh rus-161` (алиас в `~/.ssh/config`) → ключ `~/.ssh/id_161_97_93_252` (ed25519). +- root-доступ по SSH закрыт; для root изнутри — `sudo -i`. + +## SSH (`/etc/ssh/sshd_config.d/00-hardening.conf`) +``` +PermitRootLogin no +PasswordAuthentication no +PubkeyAuthentication yes +KbdInteractiveAuthentication no +ChallengeResponseAuthentication no +MaxAuthTries 3 +AllowUsers rus +``` +Через socket-activation (`ssh.socket`). ## DNS -- Зона `ruzzy.dev` на Namecheap. +- Зона `ruzzy.dev` — Namecheap (NS `dns1/dns2.registrar-servers.com`). - `fr1.ruzzy.dev` A → 161.97.93.252. +- PTR (reverse DNS): дефолтный `vmi3387709.contaboserver.net` (не менялся). -## Безопасность -- SSH: key-only, root off, `MaxAuthTries 3`, `AllowUsers rus` (`/etc/ssh/sshd_config.d/00-hardening.conf`). -- ufw: deny incoming; открыты 22, 80, 443/tcp. -- fail2ban: jails `sshd` + `recidive`, `banaction=ufw`, рабочий IP в `ignoreip` (`/etc/fail2ban/jail.local`). -- Ubuntu Pro attached: Livepatch + esm-infra + esm-apps. -- unattended-upgrades включены (security, ежедневно), авто-reboot выключен. +## Firewall (ufw) +- Default: deny incoming, allow outgoing. +- Открыто: `22/tcp`, `80/tcp`, `443/tcp` (IPv4 + IPv6). + +## fail2ban (`/etc/fail2ban/jail.local`) +``` +[DEFAULT] +bantime=1h findtime=10m maxretry=5 +ignoreip = 127.0.0.1/8 ::1 31.153.37.106 +backend=systemd banaction=ufw + +[sshd] enabled=true +[recidive] enabled=true bantime=1w findtime=1d maxretry=5 + backend=auto logpath=/var/log/fail2ban.log +``` + +## Обновления +- Ubuntu Pro подключён (аккаунт ruzzyrullezz@gmail.com): **livepatch**, **esm-infra**, **esm-apps** — enabled. +- unattended-upgrades: `Update-Package-Lists "1"`, `Unattended-Upgrade "1"` (ежедневно, security). Авто-reboot выключен. ## Система -- swap 2 GB (`/swapfile`), `vm.swappiness=10`. -- journald: `Storage=persistent`, лимит 500M. -- AppArmor включён, время через systemd-timesyncd. +- swap: `/swapfile` 2 GB (в `/etc/fstab`), `vm.swappiness=10` (`/etc/sysctl.d/99-swappiness.conf`). +- journald: `Storage=persistent`, `SystemMaxUse=500M`. +- AppArmor включён; время — systemd-timesyncd. ## Telegram-уведомления -- Бот @ultimate_log_bot. Конфиг `/etc/tg-notify.conf` (600, секрет на сервере). -- `/usr/local/bin/tg-notify.sh` — отправка сообщений. -- `/usr/local/bin/uu-telegram-report.sh` на `apt-daily-upgrade.service` (ExecStartPost) — сводка автообновлений и reboot-required. +- Бот @ultimate_log_bot. Конфиг `/etc/tg-notify.conf` (chmod 600, токен+chat_id — секрет на сервере). +- `/usr/local/bin/tg-notify.sh "msg"` — универсальная отправка (HTML, префикс hostname). +- `/usr/local/bin/uu-telegram-report.sh` — сводка автообновлений + reboot-required; повешен на `apt-daily-upgrade.service` через drop-in `/etc/systemd/system/apt-daily-upgrade.service.d/telegram.conf` (`ExecStartPost`). Молчит, если нечего сообщать. + +## Установленные пакеты (сверх базы) +htop, mtr-tiny, tmux, vim, curl, wget, git, unzip, net-tools, dnsutils, ncdu, rsync, fail2ban, unattended-upgrades.