diff --git a/README.md b/README.md
index b038a03..ba31928 100644
--- a/README.md
+++ b/README.md
@@ -206,9 +206,289 @@ ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDW0f99tvseYmt9J+EJw9vvOUcJwKWdJufFy65SSnxe
```
## Добавление публичного ключа в OpenSSH
+> *Предполагается что Вы вошли под root правами*
+
+Для добавления ключей авторизации по SSH в OpenSSH используется файл `authorized_keys` который находится в каталоге `~/.ssh`
+
+**Шаг 1:** Создать каталог `.ssh`
+```bash
+mkdir ~/.ssh
+```
+Эта команда создаст нужный каталог или выведет:
+> mkdir: /root/.ssh: File exists
+
+**Шаг 2:** Установить права доступа к каталогу `~/.ssh`
+```bash
+chmod 700 ~/.ssh
+```
+
+**Шаг 3:** Создать файл `authorized_keys` в каталоге `~/.ssh` и добавить в него Ваш публичный ключ
+```bash
+nano ~/.ssh/authorized_keys
+```
+Скопируйте [Ваш публичный ключ](#создание-публичного-и-приватного-ключа) и вставте его в файл authorized_keys сочетанием клавиш `Ctrl+Shift+V`
+
+Сохраните файл `Ctrl+X` -> `Y` -> `Enter`
+
+**Шаг 4:** Установить права доступа к файлу `authorized_keys`
+```bash
+chmod 600 ~/.ssh/authorized_keys
+```
+
+
## Редактирование конфигурации OpenSSH
+Для включения авторизации по ключу необходимо отредактировать конфигурационный файл OpenSSH
+> Дополнительно изменим порт подключения по SSH - это необходимо для безопасности
+
+**Шаг 1:** Открыть файл конфигурации OpenSSH путь к файлу `/etc/ssh/sshd_config`
+```bash
+nano /etc/ssh/sshd_config
+```
+
+
+ Вы увидите файл конфигурации OpenSSH вида:
+
+```ini
+
+# This is the sshd server system-wide configuration file. See
+# sshd_config(5) for more information.
+
+# This sshd was compiled with PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
+
+# The strategy used for options in the default sshd_config shipped with
+# OpenSSH is to specify options with their default value where
+# possible, but leave them commented. Uncommented options override the
+# default value.
+
+# In general, the first uncommented definition of an option takes precedence.
+# For options that accept multiple values, like 'Port', subsequent definitions
+# are appended to the configuration.
+#
+# Note that the above implies that configuration options from snippets in
+# /etc/ssh/sshd_config.d/*.conf take precedence over those defined in this
+# file. In addition, configuration snippet files are processed in lexical
+# order, so options defined in files with names that sort earlier take
+# precedence.
+#
+# Such configuration snippets may be present in default installations of
+# Ubuntu.
+# Include /etc/ssh/sshd_config.d/*.conf
+
+# When systemd socket activation is used (the default), the socket
+# configuration must be re-generated after changing Port, AddressFamily, or
+# ListenAddress.
+#
+# For changes to take effect, run:
+#
+# systemctl daemon-reload
+# systemctl restart ssh.socket
+#
+Port 22
+#AddressFamily any
+#ListenAddress 0.0.0.0
+#ListenAddress ::
+
+#HostKey /etc/ssh/ssh_host_rsa_key
+#HostKey /etc/ssh/ssh_host_ecdsa_key
+#HostKey /etc/ssh/ssh_host_ed25519_key
+
+# Ciphers and keying
+#RekeyLimit default none
+
+# Logging
+#SyslogFacility AUTH
+#LogLevel INFO
+
+# Authentication:
+
+#LoginGraceTime 2m
+PermitRootLogin yes
+#StrictModes yes
+#MaxAuthTries 6
+#MaxSessions 10
+
+#PubkeyAuthentication no
+
+# Expect .ssh/authorized_keys2 to be disregarded by default in future.
+AuthorizedKeysFile .ssh/authorized_keys .ssh/authorized_keys2
+
+#AuthorizedPrincipalsFile none
+
+#AuthorizedKeysCommand none
+#AuthorizedKeysCommandUser nobody
+
+# For this to work you will also need host keys in /etc/ssh/ssh_known_hosts
+#HostbasedAuthentication no
+# Change to yes if you don't trust ~/.ssh/known_hosts for
+# HostbasedAuthentication
+#IgnoreUserKnownHosts no
+# Don't read the user's ~/.rhosts and ~/.shosts files
+#IgnoreRhosts yes
+
+# To disable tunneled clear text passwords, change to "no" here!
+#PasswordAuthentication yes
+#PermitEmptyPasswords no
+
+# Change to "yes" to enable keyboard-interactive authentication. Depending on
+# the system's configuration, this may involve passwords, challenge-response,
+# one-time passwords or some combination of these and other methods.
+# Beware issues with some PAM modules and threads.
+KbdInteractiveAuthentication no
+
+# Kerberos options
+#KerberosAuthentication no
+#KerberosOrLocalPasswd yes
+#KerberosTicketCleanup yes
+#KerberosGetAFSToken no
+
+# GSSAPI options
+#GSSAPIAuthentication no
+#GSSAPICleanupCredentials yes
+#GSSAPIStrictAcceptorCheck yes
+#GSSAPIKeyExchange no
+
+# Set this to 'yes' to enable PAM authentication, account processing,
+# and session processing. If this is enabled, PAM authentication will
+# be allowed through the KbdInteractiveAuthentication and
+# PasswordAuthentication. Depending on your PAM configuration,
+# PAM authentication via KbdInteractiveAuthentication may bypass
+# the setting of "PermitRootLogin prohibit-password".
+# If you just want the PAM account and session checks to run without
+# PAM authentication, then enable this but set PasswordAuthentication
+# and KbdInteractiveAuthentication to 'no'.
+UsePAM yes
+
+#AllowAgentForwarding yes
+#AllowTcpForwarding yes
+#GatewayPorts no
+X11Forwarding yes
+#X11DisplayOffset 10
+#X11UseLocalhost yes
+#PermitTTY yes
+PrintMotd no
+#PrintLastLog yes
+#TCPKeepAlive yes
+#PermitUserEnvironment no
+#Compression delayed
+#ClientAliveInterval 0
+#ClientAliveCountMax 3
+#UseDNS no
+#PidFile /run/sshd.pid
+#MaxStartups 10:30:100
+#PermitTunnel no
+#ChrootDirectory none
+#VersionAddendum none
+
+# no default banner path
+#Banner none
+
+# Allow client to pass locale and color environment variables
+AcceptEnv LANG LC_* COLORTERM NO_COLOR
+
+# override default of no subsystems
+Subsystem sftp /usr/lib/openssh/sftp-server
+
+# Example of overriding settings on a per-user basis
+#Match User anoncvs
+# X11Forwarding no
+# AllowTcpForwarding no
+# PermitTTY no
+# ForceCommand cvs server
+```
+
+
+
+> Файл /etc/ssh/sshd_config управляет безопасностью и поведением SSH-сервера, где активные (не закомментированные) директивы переопределяют значения по умолчанию. Ключевые настройки включают использование порта 22, включение PAM, поддержку SFTP и, в данном случае, разрешение прямого входа под root-пользователем (PermitRootLogin yes).
+
+**Шаг 2:** Изменить строчку: `#PubkeyAuthentication no` на `PubkeyAuthentication yes`
+
+**Шаг 3:** Сохранить изменения `Ctrl+X` -> `Y` -> `Enter`
+
+
+ Ниже разбор всех ключевых параметров из конфига, разбитый по логическим группам.
+
+> Важное правило этого файла: если строка начинается с #, параметр закомментирован и работает значение по умолчанию. Если # нет — настройка активна.
+
+1. Сетевые настройки
+
+Port 22: Стандартный порт для SSH. Часто меняют на нестандартный (например, 2222), чтобы спастись от ботов-сканеров.
+
+AddressFamily any: Разрешает подключения и через IPv4, и через IPv6.
+
+ListenAddress: Позволяет указать конкретный IP-адрес сервера, на котором SSH будет ждать подключений (по умолчанию — на всех).
+
+2. Ключи сервера и шифрование
+
+HostKey: Пути к секретным ключам самого сервера. Они нужны, чтобы клиент (твой ПК) мог убедиться, что подключается именно к тому серверу, к которому планировал.
+
+RekeyLimit: Настройка того, как часто сервер будет обновлять сессионные ключи (по умолчанию — раз в 1 ГБ данных или раз в час).
+
+3. Логирование
+
+SyslogFacility AUTH: Категория системного журнала (syslog), куда полетят логи авторизации.
+
+LogLevel INFO: Степень детализации логов. INFO — золотая середина (кто зашел, когда, ошибки).
+
+4. Доступ и ограничения (Аутентификация)
+
+LoginGraceTime 2m: Время, которое дается пользователю на ввод пароля. Если не успел — дисконнект.
+
+PermitRootLogin yes: (Важно!) Разрешает вход под пользователем root. В целях безопасности лучше ставить prohibit-password (только по ключам) или no.
+
+StrictModes yes: Проверяет права доступа к файлам в папке .ssh. Если они открыты для всех, SSH откажется работать (защита от кражи ключей).
+
+MaxAuthTries 6: Сколько попыток ввода пароля дается, прежде чем соединение оборвется.
+
+MaxSessions 10: Максимальное количество открытых сессий (окон) в рамках одного сетевого соединения.
+
+5. Методы входа
+
+PubkeyAuthentication: Разрешает вход по SSH-ключам (самый безопасный способ).
+
+AuthorizedKeysFile: Путь, где лежат публичные ключи клиентов, которым разрешен вход.
+
+PasswordAuthentication: Разрешает или запрещает вход по обычному паролю.
+
+PermitEmptyPasswords no: Запрещает вход пользователям с пустым паролем.
+
+KbdInteractiveAuthentication no: Отключает "интерактивный" ввод (часто используется для одноразовых паролей или хитрых систем PAM).
+
+6. Взаимодействие с системой
+
+UsePAM yes: Подключает систему PAM (Pluggable Authentication Modules). Она позволяет использовать системные пароли, политики блокировки и другие модули Linux для авторизации.
+
+PrintMotd no: Не показывать "сообщение дня" (Message of the Day) при входе.
+
+AcceptEnv: Разрешает клиенту передавать свои переменные окружения (например, язык системы LANG).
+
+7. Дополнительные возможности
+
+X11Forwarding yes: Разрешает пробрасывать графические интерфейсы (если ты запустишь GUI-приложение на сервере, оно откроется в окне на твоем компе).
+
+Subsystem sftp: Указывает путь к программе, которая обеспечивает работу SFTP (передачу файлов через SSH).
+
+Match User: Специальный блок в конце. Позволяет задать индивидуальные настройки для конкретного пользователя или группы (например, одному юзеру запретить всё, кроме SFTP).
+
+
+
+
+**Шаг 4:** Перезапустить службу ssh
+```bash
+systemctl restart ssh
+```
+
+
## Проверка доступа по ключу
+Теперь **ВАЖНО** подключится к серверу по ключу.
+
+Используйте Termius.
+
+Как добавить Host и выполнить авторизацию по ключу можно прочитать в документации к Termius.
+
## Окончательное редактирование конфигурации OpenSSH
+> Если авторизация по ключу прошла успешно, то можно приступить к окончательному редактированию конфигурации
+
+
# Настройки UFW
## Редактирование файла приложения OpenSSH-Server
## Создание файла приложения HTTP