Да, уже понял что это от обратного. Но ведь и пара была сгенерирована на стороне сервера.
Если так, то мое предположение верно ?
А так, получается, механизм такой: есть сервер, на нем работает sshd.
Есть клиент. Он на своей стороне генерирует пару и публичный отправляет серверу, приватный оставляет себе.
Тогда возникает пара вопросов:
1) сервер один. Клиентов много. Все они шлют public key серверу. Это нормально ? То есть потом сервер от них всех может принимать соединения, так ? И это считается нормальной практикой ?
2) злонамеренный клиент сгенерировал пару, указал pass phrase. Отправил public key этому серверу. Также он знает hostname сервера. Также он хочет зайти под рутом.
Он коннектится: ssh root@serverhostname и указывает pass phrase. И что получается, он залогинен под рутом на сервере ? ( если, конечно, это не запрещено на нем)
Где ж тогда секурность ?)
То есть, получается, любой, кто знает, что существует такой пользователь как рут, и, зная hostname сервера, может залогиниться на нем как рут ? O.o