diff --git a/.stow-local-ignore b/.stow-local-ignore index 98f05a2..f63792d 100644 --- a/.stow-local-ignore +++ b/.stow-local-ignore @@ -1,6 +1,4 @@ ^/README\.md ^/\.git ^/\.gitignore -^/\archive -privoxy_config -awg_exclude.json \ No newline at end of file +^/configs$ diff --git a/configs/99-hardening.conf b/configs/99-hardening.conf new file mode 100644 index 0000000..c8752da --- /dev/null +++ b/configs/99-hardening.conf @@ -0,0 +1,65 @@ +# sshd_config.d/99-hardening.conf +# Консервативное ужесточение для серверов общего назначения (Debian). + +Protocol 2 + # Разрешить только протокол SSH v2. + +# Authentication +PermitRootLogin no + # Запретить прямой вход под root. +PasswordAuthentication no + # Отключить вход по паролю. +KbdInteractiveAuthentication no + # Отключить keyboard-interactive (часто это OTP/пароль). +ChallengeResponseAuthentication no + # Отключить challenge-response аутентификацию. +AuthenticationMethods publickey + # Требовать аутентификацию по ключу. +PubkeyAuthentication yes + # Разрешить аутентификацию по ключу. +PermitEmptyPasswords no + # Запретить пустые пароли, даже если пароли где-то включены. +UsePAM yes + # Оставить PAM для управления аккаунтом и сессией. + +# Session and access controls +LoginGraceTime 30 + # Дать 30 секунд на аутентификацию. +MaxAuthTries 3 + # Ограничить число неудачных попыток на соединение. +MaxSessions 2 + # Ограничить число сессий в одном соединении. +MaxStartups 10:30:60 + # Дросселировать неаутентифицированные подключения под нагрузкой. +ClientAliveInterval 300 + # Отправлять keepalive каждые 5 минут. +ClientAliveCountMax 2 + # Рвать соединение после 2 пропущенных keepalive. +TCPKeepAlive no + # Отключить TCP keepalive, чтобы не зависали старые сессии. + +# Reduce legacy or risky features +IgnoreRhosts yes + # Игнорировать доверенные файлы .rhosts и .shosts. +HostbasedAuthentication no + # Отключить аутентификацию по хосту. +PermitUserEnvironment no + # Запретить пользователям задавать окружение через ~/.ssh/environment. +X11Forwarding no + # Отключить X11-форвардинг. +AllowAgentForwarding no + # Запретить форвардинг агента. +AllowTcpForwarding local + # Разрешить только локальный форвардинг портов (без remote/dynamic). +AllowStreamLocalForwarding no + # Отключить форвардинг Unix-сокетов. +PermitTunnel no + # Отключить форвардинг туннелей tun/tap. + +# Misc +UseDNS no + # Пропустить обратный DNS для ускорения входа. +Compression no + # Отключить сжатие, чтобы уменьшить поверхность атаки. +PrintMotd no + # Не печатать MOTD (обычно делает PAM). diff --git a/awg_exclude.json b/configs/awg_exclude.json similarity index 100% rename from awg_exclude.json rename to configs/awg_exclude.json diff --git a/privoxy_config b/configs/privoxy_config similarity index 100% rename from privoxy_config rename to configs/privoxy_config diff --git a/ssh/.ssh/config.d/40-proxy.conf b/ssh/.ssh/config.d/40-proxy.conf index f17bc64..c669997 100644 --- a/ssh/.ssh/config.d/40-proxy.conf +++ b/ssh/.ssh/config.d/40-proxy.conf @@ -1,7 +1,7 @@ Host ru-vps HostName 157.22.231.198 User ada - IdentityFile ~/.ssh/id_ed25519 + IdentityFile ~/.ssh/id_ed25519_homelab ServerAliveInterval 30 ServerAliveCountMax 3