Отключение root ssh в Debian

Поскольку пользователь root универсален для всех систем Linux и Unix, хакеры всегда предпочитали использовать его для доступа к системам. Для подбора непривилегированной учетной записи хакер должен сначала узнать имя пользователя, и даже в случае успеха злоумышленник остается ограниченным, если не использует локальный эксплойт. В этом руководстве показано, как отключить root-доступ через SSH за 2 простых шага.
  • Как отключить корневой доступ ssh в Debian 10 Buster
  • Альтернативы для защиты вашего доступа ssh
  • Фильтрация порта ssh с помощью iptables
  • Использование TCP-оболочек для фильтрации ssh
  • Отключение службы ssh
  • Статьи по теме

Чтобы отключить корневой доступ ssh, вы необходимо отредактировать файл конфигурации ssh, в Debian это /etc/ssh/sshd_config , чтобы отредактировать его с помощью текстового редактора nano, запустите:

nano/etc/ssh/sshd_config

На nano вы можете нажать CTRL+W (где) и ввести PermitRoot найти следующую строку:

#PermitRootLogin prohibit-password

Чтобы отключить корневой доступ через ssh, просто раскомментируйте эту строку и замените prohibit-password для no , как показано на следующем изображении.

После отключения корневого доступа нажмите CTRL + X и Y для сохранения и выхода.

prohibit-password запрещает вход по паролю, разрешая вход только через резервные действия, такие как открытые ключи, предотвращая атаки методом грубой силы.

Альтернативы для защиты доступа по ssh

Ограничить доступ к аутентификации с открытым ключом:

Чтобы отключить вход по паролю, разрешающий вход только с использованием открытого ключа снова откройте файл конфигурации /etc/ssh/ssh_config , запустив:

nano/etc/ssh/sshd_config

Чтобы отключить вход по паролю, разрешающий вход только с использованием открытого ключа, откройте файл конфигурации /etc/ssh/ssh_config снова, запустив:

nano/etc/ssh/sshd_config

Найдите строку, содержащую PubkeyAuthentication и убедитесь, что указано yes , как в примере ниже:

Убедитесь, что аутентификация по паролю отключена, найдя строку, содержащую PasswordAuthentication , если вы прокомментировали его, раскомментируйте его и убедитесь, что он установлен как no , как показано на следующем изображении:

Затем нажмите CTRL+X и Y , чтобы сохранить и выйти из текстового редактора nano.

Теперь, как пользователю, которому вы хотите разрешить доступ по ssh, вам необходимо сгенерировать пары закрытого и открытого ключей. Выполните:

ssh-keygen

Ответьте на последовательность вопросов, оставив первый ответ по умолчанию, нажав ENTER, задайте кодовую фразу, повторите ее, и ключи будут хранится по адресу ~/.ssh/id_rsa

Создание пары открытого/закрытого ключей rsa.
Введите файл, в котором нужно сохранить ключ (/root/.ssh/id_rsa) :
Введите кодовую фразу (пусто, если кодовая фраза отсутствует): Введите ту же парольную фразу еще раз:
Ваша идентификационная информация была сохранена в/root/.ssh/id_rsa.
Ваш открытый ключ был сохранен в/root/.ssh/id_rsa.pub.
Отпечаток ключа:
SHA256: 34 + uXVI4d3ik6ryOAtDKT6RaIFclVLyZUdRlJwfbVGo root @ bruxhint
Ключ случайный художественное изображение:
+ — [RSA 2048] —- +

Для переноса только что созданных пар ключей можно использовать команду ssh-copy-id со следующим синтаксисом:

ssh-copy-id @

Измените порт ssh по умолчанию:

Снова откройте файл конфигурации /etc/ssh/ssh_config запустив:

nano/etc/ssh/sshd_config

Допустим, вы хотите использовать порт 7645 вместо порта по умолчанию 22. Добавьте строку, как в примере ниже:

Порт 7645

Затем нажмите CTRL+X и Y для сохранения и выхода.

Перезапустите службу ssh, запустив:

перезапуск службы sshd

Затем вы должны настроить iptables, чтобы разрешить обмен данными через порт 7645:

iptables -t nat -A PREROUTING -p tcp —dport 22 -j REDIRECT —to-port 7645

Вместо этого вы также можете использовать UFW (несложный брандмауэр):

ufw allow 7645/tcp

Фильтрация порта ssh

Вы также можете определить правила для принятия или отклонения ssh-соединений в соответствии с определенными параметрами. Следующий синтаксис показывает, как принимать ssh-соединения с определенного IP-адреса с помощью iptables:

iptables -A INPUT -p tcp —dport 22 —source -j ПРИНЯТЬ
iptables -A INPUT -p tcp —dport 22 -j DROP

Первая строка приведенного выше примера инструктирует iptables принимать входящие (INPUT) TCP-запросы к порту 22 с IP 192.168.1.2. Вторая строка инструктирует IP-таблицы отбрасывать все подключения к порт 22. Вы также можете фильтровать источник по MAC-адресу, как в примере ниже:

iptables -I INPUT -p tcp —dport 22 -m mac! —mac -source 02: 42: df: a0: d3: 8f
-j REJECT

В приведенном выше примере отклоняются все подключения, кроме устройства с MAC-адресом 02: 42: df: a0: d3: 8f.

Использование TCP-оболочек для фильтрации ssh

Другой способ внести в белый список IP-адреса для подключения через ssh, отклоняя остальные, — это отредактировать каталоги hosts.deny и hosts.allow, расположенные в /etc.

Чтобы отклонить запуск всех хостов:

nano/etc/hosts.deny

Добавить последнюю строку:

sshd: ВСЕ

Нажмите CTRL + X и Y для сохранения и выхода. Теперь, чтобы разрешить определенные хосты через ssh, отредактируйте файл/etc/hosts.allow, чтобы отредактировать его, запустите:

nano/etc/hosts.allow

Добавить строку, содержащую:

sshd:

Нажмите CTRL + X, чтобы сохранить и выйти из nano.

Отключение службы ssh

Многие отечественные пользователи считают ssh бесполезен, если вы его вообще не используете, вы можете удалить его или заблокировать или отфильтровать порт.

В Debian Linux или системах на его основе, таких как Ubuntu, вы можете удалять службы с помощью пакета apt manager.
Чтобы удалить службу ssh, запустите:

apt remove ssh

Нажмите Y, если потребуется, чтобы завершить удаление.

И это все о внутренних мерах по сохранению ssh безопасно.

Надеюсь, вы нашли это руководство полезным, следите за LinuxHint, чтобы получить больше советов и руководств. в Linux и сети.

Статьи по теме:

  • Как включить SSH-сервер в Ubuntu 18.04 LTS
  • Включить SSH в Debian 10
  • Перенаправление портов SSH в Linux
  • Общие параметры конфигурации SSH в Ubuntu
  • Как и зачем менять порт SSH по умолчанию
  • Настройка перенаправления SSH X11 в Debian 10
  • Настройка, настройка и оптимизация SSH-сервера Arch Linux
  • Iptables для начинающих
  • Работа с брандмауэрами Debian (UFW)
Оцените статью
nanomode.ru
Добавить комментарий

  1. Павел

    От души! очень полезно, почему нет комментариев…

    Ответить