Я использую установку по умолчанию openssh-server для моего сервера Ubuntu 14.04. Я могу подключиться через консоль как root, как обычно, с моим именем пользователя и паролем. Однако, когда я пытаюсь подключиться по SSH с тем же именем пользователя / паролем, я неоднократно получаю ошибки с отказом в доступе. /var/log/auth.log отчеты Failed password for root from <ip address> port <port> ssh2, но я ввожу правильный пароль.
Почему я не могу подключиться к серверу через SSH, даже если имя пользователя и пароль указаны правильно?
Настройка по умолчанию в Debian (и, следовательно, Ubuntu) для OpenSSH Server - запретить вход на основе пароля для root и разрешить вход только на основе ключа. Измените эту строку в /etc/ssh/sshd_config:
Хакеры будут бороться с пользователем root, пытающимся проникнуть в систему грубой силой. Если вы собираетесь разрешить вход с правами root, вам обязательно следует установить Fail2Ban или что-то подобное для защиты от атак методом перебора. Также используйте очень трудно угадываемый пароль без использования общих слов.
И, как отметил Вайндил, логин на основе ключа был бы намного лучше. Их не очень сложно настроить. Вот ссылка на настройку входа на основе ключа с помощью PuTTY в Windows: https://devops.profitbricks.com/tutorials/use-ssh-keys-with-putty-on-windows/ . Но есть много других, если вы используете другую среду для входа в систему.
@muru Я думаю, что в любом случае было бы хорошо, но это кажется немного более широким в scope (более общим), имеет больше ответов и ответы, предлагающие более широкий спектр решений. В любом случае, они закрыты, ответы от одного могут быть модифицированы в другой (или нет).