1

Каждое учебное пособие или объяснение SSH, которое я нахожу, прямо посередине забывает, что задействованы два компьютера или сервера.

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

Поэтому у меня есть эти ключи, и я не могу понять, что с ними делать, чтобы они работали. В каждом руководстве или объяснении говорится, что мне нужно сгенерировать ключи для моей компьютерной системы и сохранить их в файле, который не существует. Это не только не имеет никакого смысла, но, похоже, не имеет никакого отношения к получению доступа к удаленному серверу с моего компьютера с помощью ключей для веб-сайта, которые уже были созданы для этой цели. Очевидно, что часть информации теряется. Может кто-нибудь объяснить, что я должен делать?

Вроде бы все должно быть просто, но ГДЕ я ставлю КАКОЙ ключ и как мне установить соединение? Я использую терминал в Linux в течение многих лет. Вы могли бы подумать, что я знаю это во сне, но я не знаю.

3 ответа3

1

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

Таким образом, для ключей, которые позволяют вам удаленно обращаться к веб-сайту, эти ключи идентифицируют вас (они подтверждают вашу личность). Это означает, что закрытый ключ должен оставаться на вашем компьютере, в то время как открытый ключ должен находиться на удаленном компьютере.

Итак, конкретно, вы сгенерируете id_rsa (private) и id_rsa.pub (public). ключ. Просто сохраните оба файла в каталоге .ssh в вашем домашнем каталоге на вашем компьютере (обычно вы создаете их после перехода в этот каталог). Ключ id_rsa будет автоматически использоваться ssh как ваша личность, а ключ id_rsa.pub будет игнорироваться, но вы будете знать, где он находится, если вам это нужно.

На удаленной стороне, в директории .ssh счета вы хотите войти в, есть файл authorized_keys который содержит список открытых ключей, по одному в строке. Этот файл читает sshd чтобы узнать, кому разрешено подключаться к этой учетной записи.

Либо отредактируйте этот файл и добавьте содержимое вашего локального id_rsa.pub в новую строку, либо, если файла там не было, или он должен содержать только один ключ, просто скопируйте свой локальный id_rsa.pub в authorized_keys .

Вот и все. Конечно, вы можете использовать сценарии, которые автоматизируют этот процесс, но это то, к чему он сводится.

0

По умолчанию ваши ssh-ключи сохраняются в папке /home/[youruser]/.ssh/ . Для использования ssh-соединения вы можете использовать следующие способы:

ssh [username]@[server] -i ~/.ssh/id_rsa -p [port-number-of-ssh]

пример использования:ssh dies@dies.com -i ~/.ssh/id_rsa -p 22

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

ssh dies@dies.com -o PubkeyAuthentication=no -p 22

удачи тебе!

0

Предположение, одно и то же имя пользователя на сервере A и serverB. Вы хотите войти на сервер B с сервера A.

На сервере A, если вы еще этого не сделали, сгенерируйте пару ключей ssh:

ssh-keygen -t rsa -N ''

На сервере A выполните следующую команду, чтобы настроить разрешения, чтобы при переходе с сервера A на сервер B не запрашивался пароль:

ssh-copy-id serverB

Вам будет предложено ввести пароль.

Если команда ssh-copy-id была успешной, подтвердите, что вы можете выполнить ssh с сервера A на сервер B без запроса пароля.

ssh serverB

Если вы попадаете на сервер B, все готово.

Надеюсь это поможет

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .